Esempio n. 1
0
//execute the initial spawn
void IniSpawn::InitialSpawn()
{
	SpawnGroup(enterspawn);
	//these variables are set when entering first
	for (int i=0;i<localscount;i++) {
		SetVariable(map, Locals[i].Name,"LOCALS", Locals[i].Value);
	}
}
//
// AEnemySpawnerBase::SpawnNextGroup
//
void AEnemySpawnerBase::SpawnNextGroup()
{
	auto World = GetWorld();
	check( World );

	++SpawnedGroupsCount;
	if( SpawnedGroupsCount >= Groups && !bShouldWaitForGroupDeath )
	{
		World->GetTimerManager().ClearTimer( GroupSpawnTimer );
	}

	SpawnGroup();
}
Esempio n. 3
0
//execute the initial spawn
void IniSpawn::InitialSpawn()
{
	SpawnGroup(enterspawn);
	//these variables are set when entering first
	for (int i=0;i<localscount;i++) {
		SetVariable(map, Locals[i].Name,"LOCALS", Locals[i].Value);
	}

	// move the rest of the party if needed (note the i=1, 0 has the protagonist aka TNO)
	if (!PartySpawnPoint.isnull()) {
		Game *game = core->GetGame();
		for (int i=1; i < game->GetPartySize(false); i++) {
			Actor *pc = game->GetPC(i, false);
			MoveBetweenAreasCore(pc, PartySpawnArea, PartySpawnPoint, -1, true);
			game->LeaveParty(pc);
		}
	}
}
Esempio n. 4
0
//checks if a respawn event occurred
void IniSpawn::CheckSpawn()
{
	for(int i=0;i<eventcount;i++) {
		SpawnGroup(eventspawns[i]);
	}
}
Esempio n. 5
0
//FIXME:call this at the right time (this feature is not explored yet, and unused in original dataset)
void IniSpawn::ExitSpawn()
{
	SpawnGroup(exitspawn);
}