Exemple #1
0
Real Terrain::getHeightAt( const Vector3& rPosition )
{
    try
    {
        return GlobalsBase::mGrid->getServer( GridPosition( ServerPosition( rPosition ) ) ).
            getPluginManager().getPlugin<Terrain>().getTerrain()->getHeightAtWorldPosition( 
            toVector3<Ogre::Vector3>( rPosition ) );
    }
    catch( ... )
    {
    }

    return 0.0;
}
Exemple #2
0
void Game::buildmenu_selection_not_set(SDL_Event* event)
//Player does not have an object selected from Buildmenu
{
	if (!game_started && event->key.keysym.sym == SDLK_RETURN)
	{
		if (game_state == GAME_PAUSED)
		{
			game_state = GAMEPLAY_RUNNING;
			game_started = true;
			send_new_wave();
			grid->clear_paths();
			for(iter_enemy = enemy_list.begin(); iter_enemy != enemy_list.end(); iter_enemy++) {
				(*iter_enemy)->try_update_path();
			}
		}
	}
	if (event->key.keysym.sym == SDLK_SPACE)
	{
		if (tile_selection != NULL)
		{
			toggle_option_box();
		}
	}

	update_option_box();
	int position = 0;
	for (iter_op_box = optionbox.begin(); iter_op_box != optionbox.end(); iter_op_box++)
	{
		int posX = (int)selection_sprite->get_x() + 2;
		int posY = (int)selection_sprite->get_y() + 2;
		GridPosition pos = GridPosition(0,0);
		Tile* tile = grid->get_tile_from_mouse(posX, posY);
		if (tile != NULL)
			pos = tile->get_position();

		if (event->key.keysym.sym == SDLK_1 && position == 1)
		{
			if (optbox_do_selection((*iter_op_box), pos))
				break;
		}
		else if (event->key.keysym.sym == SDLK_2 && position == 2)
		{
			if (optbox_do_selection((*iter_op_box), pos))
				break;
		}
		else if (event->key.keysym.sym == SDLK_3 && position == 3)
		{
			if (optbox_do_selection((*iter_op_box), pos))
				break;
		}
		else if (event->key.keysym.sym == SDLK_4 && position == 4)
		{
			if (optbox_do_selection((*iter_op_box), pos))
				break;
		}
		else if (event->key.keysym.sym == SDLK_5 && position == 5)
		{
			if (optbox_do_selection((*iter_op_box), pos))
				break;
		}
		else if (event->key.keysym.sym == SDLK_u)
		{
			if (optbox_do_selection(BUTTON_UPGRADE, pos))
				break;
		}
		else if (event->key.keysym.sym == SDLK_s)
		{
			if (optbox_do_selection(BUTTON_SELL, pos))
				break;
		}
		position++;

	}

	if (is_arrow_key(event))
	{
		arrowkey_bflag_not_set(event);
	}
}