This commit is contained in:
parent
03a805007e
commit
61f98dba74
4 changed files with 56 additions and 2 deletions
|
@ -66,6 +66,7 @@ enemy_src := 2denemy \
|
|||
nbooger \
|
||||
nmjfish \
|
||||
nfdutch \
|
||||
nsshark \
|
||||
enemy
|
||||
|
||||
projectl_src := projectl
|
||||
|
|
|
@ -395,6 +395,18 @@ CNpc::NPC_DATA CNpc::m_data[NPC_UNIT_TYPE_MAX] =
|
|||
256,
|
||||
},
|
||||
|
||||
{ // NPC_SUB_SHARK
|
||||
NPC_INIT_SUB_SHARK,
|
||||
NPC_SENSOR_NONE,
|
||||
NPC_MOVEMENT_SUB_SHARK,
|
||||
NPC_MOVEMENT_MODIFIER_NONE,
|
||||
NPC_CLOSE_SUB_SHARK_ATTACK,
|
||||
NPC_TIMER_NONE,
|
||||
false,
|
||||
3,
|
||||
256,
|
||||
},
|
||||
|
||||
{ // NPC_FLYING_DUTCHMAN
|
||||
NPC_INIT_FLYING_DUTCHMAN,
|
||||
NPC_SENSOR_NONE,
|
||||
|
@ -411,7 +423,7 @@ CNpc::NPC_DATA CNpc::m_data[NPC_UNIT_TYPE_MAX] =
|
|||
|
||||
void CNpc::init()
|
||||
{
|
||||
m_type = NPC_FLYING_DUTCHMAN;
|
||||
m_type = NPC_SUB_SHARK;
|
||||
|
||||
m_heading = m_fireHeading = 0;
|
||||
m_movementTimer = 0;
|
||||
|
@ -497,7 +509,7 @@ void CNpc::init()
|
|||
break;
|
||||
}
|
||||
|
||||
case NPC_FLYING_DUTCHMAN:
|
||||
case NPC_INIT_FLYING_DUTCHMAN:
|
||||
{
|
||||
m_state = FLYING_DUTCHMAN_ATTACK_PLAYER_1;
|
||||
m_extendDir = EXTEND_UP;
|
||||
|
@ -505,6 +517,14 @@ void CNpc::init()
|
|||
break;
|
||||
}
|
||||
|
||||
case NPC_INIT_SUB_SHARK:
|
||||
{
|
||||
m_state = SUB_SHARK_CYCLE;
|
||||
m_extendDir = EXTEND_RIGHT;
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
|
||||
break;
|
||||
|
@ -958,6 +978,13 @@ void CNpc::processMovement(int _frames)
|
|||
break;
|
||||
}
|
||||
|
||||
case NPC_MOVEMENT_SUB_SHARK:
|
||||
{
|
||||
processSubSharkMovement( _frames );
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
|
||||
break;
|
||||
|
@ -1065,6 +1092,11 @@ void CNpc::processClose(int _frames)
|
|||
|
||||
break;
|
||||
|
||||
case NPC_CLOSE_SUB_SHARK_ATTACK:
|
||||
processCloseSubSharkAttack( _frames );
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -58,6 +58,7 @@ public:
|
|||
NPC_OIL_BLOB,
|
||||
NPC_SKULL_STOMPER,
|
||||
NPC_MOTHER_JELLYFISH,
|
||||
NPC_SUB_SHARK,
|
||||
NPC_FLYING_DUTCHMAN,
|
||||
NPC_UNIT_TYPE_MAX,
|
||||
};
|
||||
|
@ -80,6 +81,7 @@ protected:
|
|||
NPC_INIT_GHOST_PIRATE,
|
||||
NPC_INIT_SKULL_STOMPER,
|
||||
NPC_INIT_MOTHER_JELLYFISH,
|
||||
NPC_INIT_SUB_SHARK,
|
||||
NPC_INIT_FLYING_DUTCHMAN,
|
||||
};
|
||||
|
||||
|
@ -122,6 +124,7 @@ protected:
|
|||
NPC_CLOSE_SKULL_STOMPER_ATTACK,
|
||||
NPC_CLOSE_BOOGER_MONSTER_ATTACK,
|
||||
NPC_CLOSE_MOTHER_JELLYFISH_ATTACK,
|
||||
NPC_CLOSE_SUB_SHARK_ATTACK,
|
||||
NPC_CLOSE_FLYING_DUTCHMAN_ATTACK,
|
||||
};
|
||||
|
||||
|
@ -132,6 +135,7 @@ protected:
|
|||
NPC_MOVEMENT_USER_SEEK,
|
||||
NPC_MOVEMENT_VERTICAL,
|
||||
NPC_MOVEMENT_MOTHER_JELLYFISH,
|
||||
NPC_MOVEMENT_SUB_SHARK,
|
||||
NPC_MOVEMENT_FLYING_DUTCHMAN,
|
||||
};
|
||||
|
||||
|
@ -163,6 +167,13 @@ protected:
|
|||
FLYING_DUTCHMAN_ATTACK_PLAYER_3,
|
||||
};
|
||||
|
||||
enum NPC_SUB_SHARK_STATE
|
||||
{
|
||||
SUB_SHARK_CYCLE = 0,
|
||||
SUB_SHARK_MINE_1 = 1,
|
||||
SUB_SHARK_MINE_2,
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
NPC_JELLYFISH_RESISTANCE = 64,
|
||||
|
@ -250,6 +261,11 @@ protected:
|
|||
void processFlyingDutchmanMovement( int _frames );
|
||||
void processCloseFlyingDutchmanAttack( int _frames );
|
||||
|
||||
// sub shark functions
|
||||
|
||||
void processSubSharkMovement( int _frames );
|
||||
void processCloseSubSharkAttack( int _frames );
|
||||
|
||||
// data
|
||||
|
||||
static NPC_DATA m_data[NPC_UNIT_TYPE_MAX];
|
||||
|
@ -271,6 +287,7 @@ protected:
|
|||
bool m_extendDir;
|
||||
DVECTOR m_base;
|
||||
u8 m_state;
|
||||
u8 m_salvoCount;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -185,6 +185,10 @@ SOURCE=..\..\..\source\enemy\nsjfish.cpp
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\..\source\enemy\nsshark.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\..\source\enemy\nsstomp.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
|
|
Loading…
Add table
Reference in a new issue