Beispiel #1
0
void CTetrisGame::Init()
{
	//获取在选择游戏界面设置的速度和等级
	m_iSpeed = GET_INTVALUE("SPEED", 0);
	m_iLevel = GET_INTVALUE("LEVEL", 0);

	//更新等级和速度
	m_pGameScene->UpdateLevel(m_iLevel);
	m_pGameScene->UpdateSpeed(m_iSpeed);

	InitData();
}
Beispiel #2
0
//初始化
void CChooseGame::Init()
{
	m_iGameIndex = GET_INTVALUE("GAME", GAME_RACING);
	
	//更新速度和等级显示
	m_iSpeed = 0;
	m_iLevel = 0;
	m_pGameScene->UpdateLevel(m_iLevel);
	m_pGameScene->UpdateSpeed(m_iSpeed);

	m_iAnimIndex = 0;
	m_pAnimData = nullptr;
	m_bFirstAnim = false;
	m_fCurTime = 0;

	//重置分数
	m_pGameScene->UpdateScore(0, false);
	m_pGameScene->UpdateHighScore(m_iGameIndex);

	//背景音乐
	if (!AUDIO_INSTANCE()->isBackgroundMusicPlaying())
	{
		PLAY_BGMUSIC(BGM_START, true);
	}

	//重置小方块状态
	m_pGameScene->UpdateSmallBricks();
}
Beispiel #3
0
//初始化
void CSnakeGame::Init()
{
	//获取在选择游戏界面设置的速度和等级
	m_iSpeed = GET_INTVALUE("SPEED", 0);
	m_iLevel = GET_INTVALUE("LEVEL", 0);

	//默认生命数为4
	m_iLife = GET_INTVALUE("LIFE", 4);

	//初始化当前分数
	m_iScore = 0;

	//更新界面,分数、等级和生命
	m_pGameScene->UpdateScore(m_iScore, false);
	m_pGameScene->UpdateLevel(m_iLevel);
	m_pGameScene->UpdateSmallBricks();

	InitData();
}
Beispiel #4
0
void CTetrisGame::InitData()
{
	//初始化所有方块状态
	for (int i = 0; i < ROW_NUM; ++i)
	{
		for (int j = 0; j < COLUMN_NUM; ++j)
		{
			m_arrBrick[i][j] = false;
		}
	}

	//初始化分数
	m_iScore = 0;

	//加载存档
	bool bRecordValidFlag = GET_BOOLVALUE("TETRIS_RECORD_VALID", false);
	if (bRecordValidFlag)
	{
		CGeneralManager::getInstance()->LoadTetrisData(m_arrBrick);
		m_iScore = GET_INTVALUE("SCORE_RECORD", 0);
	}

	//更新显示分数
	m_pGameScene->UpdateScore(m_iScore, false);

	//随机下一个方块类型
	m_iNextShape = Random(0, GetShapeCount());

	//产生新的方块
	RandNewShape();

	//游戏状态
	m_enGameState = GAMESTATE_RUNNING;

	//时间相关
	m_fMoveDownTime = 0;
	m_fBtnCheckTime = 0;
	m_fSelfFlashTime = 0;

	//炸弹闪烁次数
	m_iSelfFlashCount = 0;

	//标记
	m_bLeftBtnPressed = false;
	m_bRightBtnPressed = false;
	m_bFastMoveDown = false;
	m_bSelfShowFlag = true;

	m_pGameScene->UpdateBricks();
}