コード例 #1
0
ファイル: books.cpp プロジェクト: LocutusOfBorg/poedit
int main()
{
    library::book knife(3458, "Zane Grey", "The Hash Knife Outfit");
    library::book dandelion(1354, "Paul J. Shanley", "Hash & Dandelion Greens");

    boost::hash<library::book> book_hasher;
    std::size_t knife_hash_value = book_hasher(knife);
    (void)knife_hash_value; // suppress unused variable warning

    // If std::unordered_set was available:
    //
    //std::unordered_set<library::book, boost::hash<library::book> > books;
    //books.insert(knife);
    //books.insert(library::book(2443, "Lindgren, Torgny", "Hash"));
    //books.insert(library::book(1953, "Snyder, Bernadette M.",
    //    "Heavenly Hash: A Tasty Mix of a Mother's Meditations"));

    //assert(books.find(knife) != books.end());
    //assert(books.find(dandelion) == books.end());

    return 0;
}
コード例 #2
0
ファイル: Game.cpp プロジェクト: hotline-mp/shooter
void Game::playingHandleEvent(sf::Event &event) {

	if ((event.type == sf::Event::KeyPressed &&
				event.key.code == sf::Keyboard::Escape) ||
			event.type == sf::Event::LostFocus)
	{
			previous_game_state.push_back(Playing);
			next_game_state = PauseMenu;
			std::cout << "menu" << std::endl;
	}

	if (event.type == sf::Event::KeyPressed) {
		if (event.key.code == sf::Keyboard::Escape) {
			previous_game_state.push_back(Playing);
			next_game_state = PauseMenu;
			std::cout << "menu" << std::endl;
		} else if (event.key.code == sf::Keyboard::F8) {
			window.setMouseCursorVisible(true);
			next_game_state = MapEditor;
			std::cout << "mapeditor" << std::endl;
		} else if (event.key.code == (sf::Keyboard::Key)keys["reload"] &&
				player.extra_ammo > 0) {
			player.reloading = true;
			player.reload_timer = clock.getElapsedTime() + sf::milliseconds(1000);
			reload_sound.play();
		}
	} else if (event.type == sf::Event::MouseButtonPressed) {
        if (event.mouseButton.button == sf::Mouse::Left) {
			if (player.ammo > 0 && !player.reloading) {
				player.ammo -= 1;
				bool possible;
				sf::Vector2f pos = bulletSpawnPosition(possible);
				if (!possible) {
					return;
				}
				sf::Vector2f vel = vecUnit(player.moving * player.vel +
						(vecUnit(pos - player.position) * 0.002f)) * 0.002f;
				//sf::Vector2f vel = vecUnit(pos - player.position) * 0.002f;
				Bullet bullet(&clock, &window, vel);
				bullet.position = pos;
				bullet.prev_pos = pos;
				bullets.push_back(bullet);
				gunshot_sound.play();
				for (int i=-10; i<10; i++) {
					sf::Vector2f pvel = vecUnit(vecUnit(vel) + vecUnit(sf::Vector2f(vel.y, -vel.x))*float(i/50.0)) *
						(0.0012f + (rand() % 10) / 100000.f);
					Particle part(&clock, &window, 1, pvel, -0.000000005);
					part.position = bullet.position;
					particles.push_back(part);
				}
			}
        } else if (event.mouseButton.button == sf::Mouse::Right) {
			if (knives.size() == 0) {
				bool possible;
				sf::Vector2f pos = bulletSpawnPosition(possible);
				if (!possible) {
					return;
				}
				sf::Vector2f vel = vecUnit(player.moving * player.vel +
						(vecUnit(pos - player.position) * 0.002f)) * 0.002f;
				Knife knife(&textures[2], &clock, &window, vel);
				knife.position = pos;
				knives.push_back(knife);
				knife_sound.play();
			}
		}
	}
}