⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 interseq.cpp

📁 游戏编程精粹2第六章源码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		for (i = 0; i < winKey.downCnt; i++) {
			switch(winKey.down[i]) {
			case 'C':
				TextBoxes_Output_Clear( g_nOutputMode );
			break;
			case 'M':
				g_nOutputMode++;
				if( g_nOutputMode >= OUTPUTMODE_COUNT )
				{
					g_nOutputMode = 0;
				}
			break;
			case 'S':
				g_bOutputTextBoxEnabled = !g_bOutputTextBoxEnabled;
			break;
			case VK_SPACE:
				g_bPlayTune = !g_bPlayTune;
				if( g_bPlayTune )
				{
					TextBoxes_Output_Printf( OUTPUTMODE_COMMANDS, "\nPlay Sequence at Target State %d...\n", g_nTargetState + 1 );
					g_pMSS->PlaySequence( 1, g_nTargetState );
				} else {
					TextBoxes_Output_Printf( OUTPUTMODE_COMMANDS, "\nStop Sequence...\n");
					g_pMSS->StopSequences();
				}
			break;
			case '1':
				TextBoxes_Output_Printf( OUTPUTMODE_COMMANDS, "\nUpdate Sequence to Target State 1...\n");
				g_nTargetState = 0;
				g_pMSS->UpdateSequenceMix( 1, g_nTargetState );
			break;
			case '2':
				TextBoxes_Output_Printf( OUTPUTMODE_COMMANDS, "\nUpdate Sequence to Target State 2...\n");
				g_nTargetState = 1;
				g_pMSS->UpdateSequenceMix( 1, g_nTargetState );
			break;
			case '3':
				TextBoxes_Output_Printf( OUTPUTMODE_COMMANDS, "\nUpdate Sequence to Target State 3...\n");
				g_nTargetState = 2;
				g_pMSS->UpdateSequenceMix( 1, g_nTargetState );
			break;
			case '4':
				TextBoxes_Output_Printf( OUTPUTMODE_COMMANDS, "\nUpdate Sequence to Target State 4...\n");
				g_nTargetState = 3;
				g_pMSS->UpdateSequenceMix( 1, g_nTargetState );
			break;
			case '5':
				TextBoxes_Output_Printf( OUTPUTMODE_COMMANDS, "\nUpdate Sequence to Target State 5...\n");
				g_nTargetState = 4;
				g_pMSS->UpdateSequenceMix( 1, g_nTargetState );
			break;
			}
		}
	}

	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

	// Draw any other OpenGL stuff here...

	// Draw Text
	TextBoxes_Draw();

	TextBoxes_DrawFPS( g_fps );

	glFinish();

	// calculate FPS
	float currTime;
	currTime = GetSysTime();
	if (g_count++ % 32 == 0) {
		g_fps = 32.0f / (currTime - g_lastTime);
		g_lastTime = currTime;
	}
}

void GameIdle()
{
}

// the mix definition defines the volumes of each track for each target state
void SetupMixDefinition()
{
	TVVV.resize( 5 );

	TVVV[0].resize( 29 );
	TVVV[0][0]  =   0;  //	tuneA slovox
	TVVV[0][1]  =   0;  //	tuneA slovox
	TVVV[0][2]  =   0;  //	tuneA k2ehat1
	TVVV[0][3]  =   0;  //	tuneA k2ehat2
	TVVV[0][4]  =   0;  //	tuneA k2ehat3
	TVVV[0][5]  =   0;  //	tuneA rkckvrb2
	TVVV[0][6]  =   0;  //	tuneA asnr21dt
	TVVV[0][7]  =   0;  //	tuneA asnr31v1
	TVVV[0][8]  =   0;  //	tuneA asnr22v1
	TVVV[0][9]  =   0;  //	tuneA rthmbpdt
	TVVV[0][10] =   0; // 	tuneA rthmbpdt
	TVVV[0][11] =   0; //	tuneA abass3
	TVVV[0][12] =   0;  //	tuneA crash
	TVVV[0][13] = 112;  //	tuneB glass
	TVVV[0][14] = 112;  //	tuneB glass
	TVVV[0][15] = 127;  //	tuneB k2ehat1
	TVVV[0][16] = 127;  //	tuneB k2ehat2
	TVVV[0][17] = 127;  //	tuneB k2ehatsnr
	TVVV[0][18] = 127;  //	tuneB clave
	TVVV[0][19] = 127;  //	tuneB woody low
	TVVV[0][20] = 127;  //	tuneB woody lower
	TVVV[0][21] = 127;  //	tuneB woody wood
	TVVV[0][22] = 127;  //	tuneB asnr31v1
	TVVV[0][23] = 127;  //	tuneB asnr22v1
	TVVV[0][24] = 127;  //	tuneB logbass
	TVVV[0][25] = 127;  //	tuneB big log
	TVVV[0][26] = 127;  //	tuneB rama
	TVVV[0][27] = 127;  //	tuneB gong (hot)
	TVVV[0][28] =   0;  //	tuneA slovox

	TVVV[1].resize( 29 );
	TVVV[1][0]   =   0;  //	tuneA slovox
	TVVV[1][1]   =   0;  //	tuneA slovox
	TVVV[1][2]   =  64;  //	tuneA k2ehat1
	TVVV[1][3]   =   0;  //	tuneA k2ehat2
	TVVV[1][4]   =  64;  //	tuneA k2ehat3
	TVVV[1][5]   =   0;  //	tuneA rkckvrb2
	TVVV[1][6]   =   0;  //	tuneA asnr21dt
	TVVV[1][7]   =   0;  //	tuneA asnr31v1
	TVVV[1][8]   =   0;  //	tuneA asnr22v1
	TVVV[1][9]   =   0;  //	tuneA rthmbpdt
	TVVV[1][10]  =   0;  //	tuneA rthmbpdt
	TVVV[1][11]  =   0;  //	tuneA abass3
	TVVV[1][12]  =   0;  //	tuneA crash
	TVVV[1][13]  = 112;  //	tuneB glass
	TVVV[1][14]  = 112;  //	tuneB glass
	TVVV[1][15]  = 127;  //	tuneB k2ehat1
	TVVV[1][16]  = 127;  //	tuneB k2ehat2
	TVVV[1][17]  = 127;  //	tuneB k2ehatsnr
	TVVV[1][18]  =  64;  //	tuneB clave
	TVVV[1][19]  = 127;  //	tuneB woody low
	TVVV[1][20]  = 127;  //	tuneB woody lower
	TVVV[1][21]  =  64;  //	tuneB woody wood
	TVVV[1][22]  = 127;  //	tuneB asnr31v1
	TVVV[1][23]  = 127;  //	tuneB asnr22v1
	TVVV[1][24]  = 127;  //	tuneB logbass
	TVVV[1][25]  = 127;  //	tuneB big log
	TVVV[1][26]  = 127;  //	tuneB rama
	TVVV[1][27]  = 127;  //	tuneB gong (hot)
	TVVV[1][28]  =   0;  //	tuneA slovox

	TVVV[2].resize( 29 );
	TVVV[2][0]   =   0;  //	tuneA slovox
	TVVV[2][1]   =   0;  //	tuneA slovox
	TVVV[2][2]   =  64;  //	tuneA k2ehat1
	TVVV[2][3]   =   0;  //	tuneA k2ehat2
	TVVV[2][4]   =  64;  //	tuneA k2ehat3
	TVVV[2][5]   =   0;  //	tuneA rkckvrb2
	TVVV[2][6]   =   0;  //	tuneA asnr21dt
	TVVV[2][7]   =   0;  //	tuneA asnr31v1
	TVVV[2][8]   =   0;  //	tuneA asnr22v1
	TVVV[2][9]   = 127;  //	tuneA rthmbpdt
	TVVV[2][10]  = 127; // 	tuneA rthmbpdt
	TVVV[2][11]  = 127;  //	tuneA abass3
	TVVV[2][12]  = 127;  //	tuneA crash
	TVVV[2][13]  = 112;  //	tuneB glass
	TVVV[2][14]  = 112;  //	tuneB glass
	TVVV[2][15]  =   0;  //	tuneB k2ehat1
	TVVV[2][16]  =   0;  //	tuneB k2ehat2
	TVVV[2][17]  = 127;  //	tuneB k2ehatsnr
	TVVV[2][18]  =   0;  //	tuneB clave
	TVVV[2][19]  =   0;  //	tuneB woody low
	TVVV[2][20]  =   0;  //	tuneB woody lower
	TVVV[2][21]  =   0;  //	tuneB woody wood
	TVVV[2][22]  = 127;  //	tuneB asnr31v1
	TVVV[2][23]  =   0;  //	tuneB asnr22v1
	TVVV[2][24]  = 127;  //	tuneB logbass
	TVVV[2][25]  = 127;  //	tuneB big log
	TVVV[2][26]  =   0;  //	tuneB rama
	TVVV[2][27]  = 127;  //	tuneB gong (hot)
	TVVV[2][28]  =   0;  //	tuneA slovox

	TVVV[3].resize( 29 );
	TVVV[3][0]   =  60;  //	tuneA slovox
	TVVV[3][1]   =  50;  //	tuneA slovox
	TVVV[3][2]   = 127;  //	tuneA k2ehat1
	TVVV[3][3]   = 127;  //	tuneA k2ehat2
	TVVV[3][4]   = 127;  //	tuneA k2ehat3
	TVVV[3][5]   = 127;  //	tuneA rkckvrb2
	TVVV[3][6]   = 127;  //	tuneA asnr21dt
	TVVV[3][7]   = 127;  //	tuneA asnr31v1
	TVVV[3][8]   =   0;  //	tuneA asnr22v1
	TVVV[3][9]   = 127;  //	tuneA rthmbpdt
	TVVV[3][10]  = 127; // 	tuneA rthmbpdt
	TVVV[3][11]  = 127;  //	tuneA abass3
	TVVV[3][12]  = 127;  //	tuneA crash
	TVVV[3][13]  =  90;  //	tuneB glass
	TVVV[3][14]  =  90;  //	tuneB glass
	TVVV[3][15]  =   0;  //	tuneB k2ehat1
	TVVV[3][16]  =   0;  //	tuneB k2ehat2
	TVVV[3][17]  =   0;  //	tuneB k2ehatsnr
	TVVV[3][18]  = 127;  //	tuneB clave
	TVVV[3][19]  =   0;  //	tuneB woody low
	TVVV[3][20]  =   0;  //	tuneB woody lower
	TVVV[3][21]  =   0;  //	tuneB woody wood
	TVVV[3][22]  =   0;  //	tuneB asnr31v1
	TVVV[3][23]  =   0;  //	tuneB asnr22v1
	TVVV[3][24]  =   0;  //	tuneB logbass
	TVVV[3][25]  = 127;  //	tuneB big log
	TVVV[3][26]  = 127;  //	tuneB rama
	TVVV[3][27]  = 127;  //	tuneB gong (hot)
	TVVV[3][28]  =  60;  //	tuneA slovox

	TVVV[4].resize( 29 );
	TVVV[4][0]   = 112;  //	tuneA slovox
	TVVV[4][1]   =  90;  //	tuneA slovox
	TVVV[4][2]   = 127;  //	tuneA k2ehat1
	TVVV[4][3]   = 127;  //	tuneA k2ehat2
	TVVV[4][4]   = 127;  //	tuneA k2ehat3
	TVVV[4][5]   = 127;  //	tuneA rkckvrb2
	TVVV[4][6]   = 127;  //	tuneA asnr21dt
	TVVV[4][7]   = 127;  //	tuneA asnr31v1
	TVVV[4][8]   = 127;  //	tuneA asnr22v1
	TVVV[4][9]   = 127;  //	tuneA rthmbpdt
	TVVV[4][10]  = 127; // 	tuneA rthmbpdt
	TVVV[4][11]  = 127;  //	tuneA abass3
	TVVV[4][12]  = 127;  //	tuneA crash
	TVVV[4][13]  =   0;  //	tuneB glass
	TVVV[4][14]  =   0;  //	tuneB glass
	TVVV[4][15]  =   0;  //	tuneB k2ehat1
	TVVV[4][16]  =   0;  //	tuneB k2ehat2
	TVVV[4][17]  =   0;  //	tuneB k2ehatsnr
	TVVV[4][18]  =   0;  //	tuneB clave
	TVVV[4][19]  =   0;  //	tuneB woody low
	TVVV[4][20]  =   0;  //	tuneB woody lower
	TVVV[4][21]  =   0;  //	tuneB woody wood
	TVVV[4][22]  =   0;  //	tuneB asnr31v1
	TVVV[4][23]  =   0;  //	tuneB asnr22v1
	TVVV[4][24]  =   0;  //	tuneB logbass
	TVVV[4][25]  =   0;  //	tuneB big log
	TVVV[4][26]  =   0;  //	tuneB rama
	TVVV[4][27]  =   0;  //	tuneB gong (hot)
	TVVV[4][28]  = 112;  //	tuneA slovox
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -