コード例 #1
0
ファイル: ScenePlay.cpp プロジェクト: nuponsalt/Lumps
CCommand CScenePlay::CreateCommand()
{
	CCommand command;
	// 入力制限時は入力受付なし
	if(CSceneManager::getisKeyLock_()) 
		return command;
	// STARTキー
	if(DXUTWasKeyPressed('P')
		|| CJoyPadManager::IsKeyTrigger(0, CJoyPadManager::PAD_BTN_10))
		command.Add(CCommand::START);
	// 非ポーズ時はこれより下の入力は受け付けない
	if(!CSceneManager::getisPause_())	
		return command;
	// 上キー
	int move = 0;
	if (DXUTIsKeyDown(VK_UP) || DXUTIsKeyDown('W')
		||CJoyPadManager::IsKeyKeep(0, CJoyPadManager::CROSS_UP) 
		|| CJoyPadManager::IsKeyKeep(0, CJoyPadManager::CROSS_LEFT_UP) 
		|| CJoyPadManager::IsKeyKeep(0, CJoyPadManager::CROSS_UP_RIGHT) 
		|| CJoyPadManager::IsKeyKeep(0, CJoyPadManager::STICK_UP))	
		move |= CCommand::UP;
	// 下キー
	if (DXUTIsKeyDown(VK_DOWN) || DXUTIsKeyDown('S')
		|| CJoyPadManager::IsKeyKeep(0, CJoyPadManager::CROSS_DOWN) 
		|| CJoyPadManager::IsKeyKeep(0, CJoyPadManager::CROSS_DOWN_LEFT) 
		|| CJoyPadManager::IsKeyKeep(0, CJoyPadManager::CROSS_RIGHT_DOWN) 
		|| CJoyPadManager::IsKeyKeep(0, CJoyPadManager::STICK_DOWN))
		move |= CCommand::DOWN;
	// コマンドの追加
	command.Add(move);
	// ○キー
	if(DXUTWasKeyPressed('Z') || DXUTWasKeyPressed(VK_RETURN)
		|| CJoyPadManager::IsKeyTrigger(0, CJoyPadManager::PAD_BTN_2))
		command.Add(CCommand::CIRCLE);
	// ✕キー
	if(DXUTWasKeyPressed('X')
		|| CJoyPadManager::IsKeyTrigger(0, CJoyPadManager::PAD_BTN_3))
		command.Add(CCommand::CROSS);

	return command;
}