This commit is contained in:
parent
99e98162fe
commit
77bbfc2c16
7 changed files with 233 additions and 148 deletions
|
@ -281,6 +281,13 @@ CPlayer * CGameScene::getPlayer()
|
|||
return( m_player );
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
void CGameScene::respawnLevel()
|
||||
{
|
||||
Level.respawnLevel();
|
||||
}
|
||||
|
||||
|
||||
/*****************************************************************************/
|
||||
void CGameScene::sendEvent( GAME_EVENT evt, CThing *sourceThing )
|
||||
{
|
||||
|
@ -313,70 +320,6 @@ void CGameScene::initLevel()
|
|||
m_player->setHealthType(CPlayer::HEALTH_TYPE__OUT_OF_WATER);
|
||||
}
|
||||
|
||||
// Init actors (needs moving and tidying
|
||||
int actorNum;
|
||||
int platformNum;
|
||||
int hazardNum;
|
||||
|
||||
sThingActor **actorList = Level.getActorList();
|
||||
if (actorList)
|
||||
{
|
||||
for ( actorNum = 0 ; actorNum < Level.getActorCount() ; actorNum++ )
|
||||
{
|
||||
sThingActor *ThisActor=actorList[actorNum];
|
||||
CGameScene::ACTOR_TYPE actorType = CGameScene::getActorType( actorList[actorNum]->Type );
|
||||
switch ( actorType )
|
||||
{
|
||||
case CGameScene::ACTOR_ENEMY_NPC:
|
||||
{
|
||||
CNpcEnemy *enemy;
|
||||
enemy=CNpcEnemy::Create(ThisActor);
|
||||
enemy->setLayerCollision( Level.getCollisionLayer() );
|
||||
enemy->setupWaypoints( ThisActor );
|
||||
enemy->postInit();
|
||||
}
|
||||
break;
|
||||
|
||||
case CGameScene::ACTOR_FRIEND_NPC:
|
||||
{
|
||||
CNpcFriend *friendNpc;
|
||||
friendNpc=CNpcFriend::Create(ThisActor);
|
||||
friendNpc->setLayerCollision( Level.getCollisionLayer() );
|
||||
friendNpc->postInit();
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sThingPlatform **platformList = Level.getPlatformList();
|
||||
if (platformList)
|
||||
{
|
||||
for ( platformNum = 0 ; platformNum < Level.getPlatformCount() ; platformNum++ )
|
||||
{
|
||||
sThingPlatform *ThisPlatform = platformList[platformNum];
|
||||
CNpcPlatform *platform;
|
||||
platform = CNpcPlatform::Create( ThisPlatform );
|
||||
platform->setLayerCollision( Level.getCollisionLayer() );
|
||||
platform->postInit();
|
||||
}
|
||||
}
|
||||
|
||||
sThingHazard **hazardList = Level.getHazardList();
|
||||
if (hazardList)
|
||||
{
|
||||
for ( hazardNum = 0 ; hazardNum < Level.getHazardCount() ; hazardNum++ )
|
||||
{
|
||||
sThingHazard *ThisHazard = hazardList[hazardNum];
|
||||
CNpcHazard *hazard;
|
||||
hazard = CNpcHazard::Create( ThisHazard );
|
||||
hazard->setLayerCollision( Level.getCollisionLayer() );
|
||||
}
|
||||
}
|
||||
|
||||
// Song is loaded/dumped by the level, and played from here. This just gives some
|
||||
// better timing over when it starts (pkg)
|
||||
CSoundMediator::playSong();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue