From f815a60cb99e2e005cb3ef2004c6a487c6628094 Mon Sep 17 00:00:00 2001 From: Daveo Date: Fri, 25 May 2001 20:03:00 +0000 Subject: [PATCH] --- source/enemy/npc.cpp | 19 +++++++++++++++---- source/enemy/npc.h | 1 + 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/source/enemy/npc.cpp b/source/enemy/npc.cpp index 98f048f75..c15498ce4 100644 --- a/source/enemy/npc.cpp +++ b/source/enemy/npc.cpp @@ -208,12 +208,10 @@ CNpcEnemy::NPC_UNIT_TYPE CNpcEnemy::getTypeFromMapEdit( u16 newType ) //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -CNpcEnemy *CNpcEnemy::Create(sThingActor *ThisActor) +CNpcEnemy *CNpcEnemy::Create(int enemyType) { CNpcEnemy *enemy; - NPC_UNIT_TYPE enemyType = CNpcEnemy::getTypeFromMapEdit( ThisActor->Type ); - enemy = (CNpcEnemy*)CThingManager::GetThing(TYPE_ENEMY,enemyType); if (!enemy) switch( enemyType ) @@ -471,7 +469,7 @@ CNpcEnemy *CNpcEnemy::Create(sThingActor *ThisActor) ASSERT(enemy); - enemy->setType( enemyType ); + enemy->setType( (NPC_UNIT_TYPE)enemyType ); enemy->setThingSubType(enemyType); enemy->init(); @@ -479,6 +477,19 @@ CNpcEnemy *CNpcEnemy::Create(sThingActor *ThisActor) return(enemy); } +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +CNpcEnemy *CNpcEnemy::Create(sThingActor *ThisActor) +{ +CNpcEnemy *enemy; + + NPC_UNIT_TYPE enemyType = CNpcEnemy::getTypeFromMapEdit( ThisActor->Type ); + + enemy = (CNpcEnemy*)Create(enemyType); + ASSERT(enemy); + + return(enemy); +} + //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// void CNpcEnemy::setupWaypoints( sThingActor *ThisActor ) diff --git a/source/enemy/npc.h b/source/enemy/npc.h index ce7c4b1e4..c719c6ea0 100644 --- a/source/enemy/npc.h +++ b/source/enemy/npc.h @@ -115,6 +115,7 @@ public: void setSpeed( s16 newSpeed ) {m_speed = newSpeed;} virtual u32 getRGB() {return( m_RGB );} + static CNpcEnemy *Create(int enemyType); static CNpcEnemy *Create(sThingActor *ThisActor); virtual void setupWaypoints( sThingActor *ThisActor );