void ConsoleCommands::registerCommands(Console& console, AppService& appService, Menu& menu, GameSettings& gameSettings)
	{
		SDL_version sdlVersion;
		std::string verStr = D6_L("version");

		// Print application info
		console.printLine(D6_L("\n===Application information==="));
		console.printLine(Format("{0} {1}: {2}") << APP_NAME << verStr << APP_VERSION);
		SDL_GetVersion(&sdlVersion);
		console.printLine(Format("SDL {0}: {1}.{2}.{3}") << verStr << sdlVersion.major << sdlVersion.minor << sdlVersion.patch);
		const SDL_version* mixVersion = Mix_Linked_Version();
		console.printLine(Format("SDL_mixer {0}: {1}.{2}.{3}") << verStr << mixVersion->major << mixVersion->minor << mixVersion->patch);
		console.printLine(D6_L("Language: english"));

		// Set some console functions
		console.setLast(15);
		console.registerCommand("switch_render_mode", [&gameSettings](Console& con, const Console::Arguments& args) {
			toggleRenderMode(con, args, gameSettings);
		});
		console.registerCommand("show_fps", [&gameSettings](Console& con, const Console::Arguments& args) {
			toggleShowFps(con, args, gameSettings);
		});
		console.registerCommand("gl_info", openGLInfo);
		console.registerCommand("lang", language);
		console.registerCommand("volume", [&appService](Console& con, const Console::Arguments& args) {
			volume(con, args, appService.getSound());
		});
		console.registerCommand("rounds", [&gameSettings](Console& con, const Console::Arguments& args) {
			maxRounds(con, args, gameSettings);
		});
		console.registerCommand("ghosts", [&gameSettings](Console& con, const Console::Arguments& args) {
			ghostMode(con, args, gameSettings);
		});
		console.registerCommand("music", [&menu](Console& con, const Console::Arguments& args) {
			musicOnOff(con, args, menu);
		});
		console.registerCommand("joy_scan", [&menu](Console& con, const Console::Arguments& args) {
			joyScan(con, args, menu);
		});
		console.registerCommand("skin", [&menu](Console& con, const Console::Arguments& args) {
			loadSkin(con, args, menu);
		});
		console.registerCommand("gun", enableWeapon);
		console.registerCommand("start_ammo_range", [&gameSettings](Console& con, const Console::Arguments& args) {
			ammoRange(con, args, gameSettings);
		});
	}
Example #2
0
// on "init" you need to initialize your instance
bool OptionsScene::init()
{
	//////////////////////////////
	// 1. super init first
	if (!Layer::init())
	{
		return false;
	}

	Size visibleSize = Director::getInstance()->getVisibleSize();

	// Creating Menu

	auto background = Sprite::create("images/OptionsScreen/fondo.jpg");

	background->setPosition(Point((visibleSize.width / 2),
		(visibleSize.height / 2)));

	addChild(background, 0);


	auto backItem = MenuItemImage::create("images/OptionsScreen/volver.jpg", "images/OptionsScreen/volver.jpg", CC_CALLBACK_1(OptionsScene::goToMainMenu, this));
	auto resetItem = MenuItemImage::create("images/OptionsScreen/reset.jpg", "images/OptionsScreen/reset.jpg", CC_CALLBACK_1(OptionsScene::reset, this));


	auto back = Menu::create(backItem, NULL);
	auto reset = Menu::create(resetItem, NULL);

	back->setPositionX(1147); back->setPositionY(654);
	reset->setPosition(Vec2(197, 85));


	addChild(back, 1);
	addChild(reset, 10);

	this->easy = Sprite::create("images/OptionsScreen/facil.jpg");
	this->easy->setPosition(197, 418);
	this->addChild(easy, 10);

	this->medium = Sprite::create("images/OptionsScreen/media.jpg");
	this->medium->setPosition(411, 418);
	this->addChild(medium, 10);

	this->hard = Sprite::create("images/OptionsScreen/dificil.jpg");
	this->hard->setPosition(625, 418);
	this->addChild(hard, 10);

	this->music = Sprite::create("images/OptionsScreen/on.jpg");
	this->music->setPosition(304, 260);
	this->addChild(music, 10);

	switch (Global::_max_time)
	{
	case 30:
		hard->setOpacity(125);
		medium->setOpacity(125);
		easy->setOpacity(255);
		break;
	case 15:
		hard->setOpacity(125);
		medium->setOpacity(255);
		easy->setOpacity(125);
		break;
	case 10:
		hard->setOpacity(255);
		medium->setOpacity(125);
		easy->setOpacity(125);
		break;
	default:
		break;
	}

	auto event_listener = EventListenerTouchAllAtOnce::create();

	if (!Global::musicPlayed)
		this->music->setTexture("images/OptionsScreen/off.jpg");
	else
		this->music->setTexture("images/OptionsScreen/on.jpg");


	event_listener->onTouchesBegan = [=](const std::vector<Touch*>& pTouches, Event* event)
	{
		auto touch = *pTouches.begin();
		auto openGl_location = touch->getLocation();

		float distance;
		distance = this->easy->getPosition().getDistance(touch->getLocation());
		if (distance < 30) {
			setDifficult(0);
			return;
		}
		distance = this->medium->getPosition().getDistance(touch->getLocation());
		if (distance < 30) {
			setDifficult(1);
			return;
		}
		distance = this->hard->getPosition().getDistance(touch->getLocation());
		if (distance < 30) {
			setDifficult(2);
			return;
		}
		distance = this->music->getPosition().getDistance(touch->getLocation());
		if (distance < 40) {
			musicOnOff();
			return;
		}
	};

	this->getEventDispatcher()->addEventListenerWithSceneGraphPriority(event_listener, easy);


	return true;
}