Ejemplo n.º 1
0
void CRaceDef::InitData (CMmio * pMmio)
{

	pMmio->DescendChunk ('R', 'A', 'C', 'E');
	for (int iOn=0; iOn<num_race; iOn++)
		{
		m_fRace [iOn] = pMmio->ReadFloat ();
		if (m_fRace [iOn] < 0.1)
			m_fRace [iOn] = (float) (50 + RandNum (100)) / 100.0f;
		m_fRace [iOn] = (m_fRace [iOn] < 0.7f) ? 0.7f : (m_fRace [iOn] > 1.2f ? 1.2f : m_fRace [iOn]);
		}

	// read the island/ocean parts
	m_iPos [0] [island] = pMmio->ReadShort ();
	if ( m_iPos [0] [island] == -1 )
		m_iPos [0] [island] = RandNum (1);
	m_iPos [0] [ocean] = pMmio->ReadShort ();
	if ( m_iPos [0] [ocean] == -1 )
		m_iPos [0] [ocean] = RandNum (1);

	for (int iTyp=1; iTyp<NUM_START_TYPES; iTyp++)
		{
		m_iPos [iTyp] [island] = m_iPos [0] [island];
		m_iPos [iTyp] [ocean] = m_iPos [0] [ocean];
		}
	pMmio->AscendChunk ();
}
Ejemplo n.º 2
0
//Generate Rectangles_--------------------------------------------------------
Rectangle GenRect()
{
	struct Rectangle RandomRect;
	
	RandomRect.Bot   = RandNum (MPW_BOT,MPW_TOP-1);
	RandomRect.Top	 = RandNum (RandomRect.Bot+1,MPW_TOP);
	RandomRect.Left  = RandNum (MPW_LEFT,MPW_RIGHT-1);
	RandomRect.Right = RandNum (RandomRect.Left+1,MPW_TOP);
	for (int i=0; i<4; i++)
	{	
		RandomRect.Name[i]  = RandNum ('a','z');
	}	
	RandomRect.Name[4]  = 0;

return (RandomRect);
}
Ejemplo n.º 3
0
void CGame::MulEvent (int ID, CUnit * pUnit)
{

	ASSERT ((0 <= ID) && (ID < NUM_MEVENTS));
	ASSERT ((sizeof (aiMSfx) / sizeof (int)) == NUM_MEVENTS);

	int iSfx = aiMSfx [ID] + RandNum (aiNumMSfx [ID]);
	if (iSfx > 0)
		{
		int iVoice;
		if (pUnit == NULL)
			iVoice = RandNum (1);
		else
			iVoice = pUnit->GetVoice ();
		theMusicPlayer.PlayForegroundSound (VOICES::GetID (iSfx, iVoice), SFXPRIORITY::voice_pri );
		}
}