This commit is contained in:
parent
516e1f8de6
commit
853dc2607c
@ -1,4 +1,4 @@
|
|||||||
# die
|
die
|
||||||
idle
|
idle
|
||||||
# jumpend
|
# jumpend
|
||||||
# jumpstart
|
# jumpstart
|
||||||
|
@ -305,7 +305,7 @@ s32 CNpcStaticClamEnemy::getFrameShift( int _frames )
|
|||||||
|
|
||||||
void CNpcStaticClamEnemy::processAnimFrames( int _frames )
|
void CNpcStaticClamEnemy::processAnimFrames( int _frames )
|
||||||
{
|
{
|
||||||
if ( m_animPlaying && !m_isDying )
|
if ( m_animPlaying && ( ( m_isDying && m_data[m_type].playDeathAnim ) || !m_isDying ) )
|
||||||
{
|
{
|
||||||
s32 frameCount;
|
s32 frameCount;
|
||||||
|
|
||||||
|
@ -274,101 +274,3 @@ void CNpcHermitCrabEnemy::processMovementModifier( int _frames, s32 distX, s32 d
|
|||||||
|
|
||||||
CSoundMediator::playSfx( CSoundMediator::SFX_HERMIT_CRAB_MOVE );
|
CSoundMediator::playSfx( CSoundMediator::SFX_HERMIT_CRAB_MOVE );
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
void CNpcHermitCrabEnemy::processShot( int _frames )
|
|
||||||
{
|
|
||||||
switch ( m_state )
|
|
||||||
{
|
|
||||||
case NPC_GENERIC_HIT_CHECK_HEALTH:
|
|
||||||
{
|
|
||||||
m_health -= 5;
|
|
||||||
|
|
||||||
if ( m_health < 0 )
|
|
||||||
{
|
|
||||||
m_state = NPC_GENERIC_HIT_DEATH_START;
|
|
||||||
|
|
||||||
m_animPlaying = true;
|
|
||||||
m_animNo = m_data[m_type].dieAnim;
|
|
||||||
m_frame = 0;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
m_state = NPC_GENERIC_HIT_RECOIL;
|
|
||||||
|
|
||||||
m_animPlaying = true;
|
|
||||||
m_animNo = m_data[m_type].recoilAnim;
|
|
||||||
m_frame = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case NPC_GENERIC_HIT_RECOIL:
|
|
||||||
{
|
|
||||||
if ( !m_animPlaying )
|
|
||||||
{
|
|
||||||
m_state = 0;
|
|
||||||
m_controlFunc = NPC_CONTROL_MOVEMENT;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case NPC_GENERIC_HIT_DEATH_START:
|
|
||||||
{
|
|
||||||
if ( !m_animPlaying )
|
|
||||||
{
|
|
||||||
m_state = NPC_GENERIC_HIT_DEATH_END;
|
|
||||||
|
|
||||||
if ( m_data[m_type].deathSfx < CSoundMediator::NUM_SFXIDS )
|
|
||||||
{
|
|
||||||
CSoundMediator::playSfx( m_data[m_type].deathSfx );
|
|
||||||
}
|
|
||||||
|
|
||||||
m_isDying = true;
|
|
||||||
m_speed = -5;
|
|
||||||
|
|
||||||
if (m_data[m_type].skelType)
|
|
||||||
{
|
|
||||||
m_actorGfx->SetOtPos( 0 );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case NPC_GENERIC_HIT_DEATH_END:
|
|
||||||
{
|
|
||||||
m_drawRotation += 64 * _frames;
|
|
||||||
m_drawRotation &= 4095;
|
|
||||||
|
|
||||||
Pos.vy += m_speed * _frames;
|
|
||||||
|
|
||||||
if ( m_speed < 5 )
|
|
||||||
{
|
|
||||||
m_speed++;
|
|
||||||
}
|
|
||||||
|
|
||||||
DVECTOR offset = CLevel::getCameraPos();
|
|
||||||
|
|
||||||
if ( Pos.vy - offset.vy > VidGetScrH() )
|
|
||||||
{
|
|
||||||
if ( m_data[m_type].respawning )
|
|
||||||
{
|
|
||||||
m_isActive = false;
|
|
||||||
|
|
||||||
m_timerFunc = NPC_TIMER_RESPAWN;
|
|
||||||
m_timerTimer = 4 * GameState::getOneSecondInFrames();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
setToShutdown();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -25,7 +25,6 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
virtual void processMovementModifier( int _frames, s32 distX, s32 distY, s32 dist, s16 headingChange );
|
virtual void processMovementModifier( int _frames, s32 distX, s32 distY, s32 dist, s16 headingChange );
|
||||||
virtual bool processSensor();
|
virtual bool processSensor();
|
||||||
virtual void processShot( int _frames );
|
|
||||||
virtual void processClose( int _frames );
|
virtual void processClose( int _frames );
|
||||||
|
|
||||||
s32 m_jumpBase;
|
s32 m_jumpBase;
|
||||||
|
@ -55,101 +55,3 @@ void CNpcPricklyBugEnemy::processMovementModifier( int _frames, s32 distX, s32 d
|
|||||||
|
|
||||||
//CSoundMediator::playSfx( CSoundMediator::SFX_PRICKLY_BUG_MOVE );
|
//CSoundMediator::playSfx( CSoundMediator::SFX_PRICKLY_BUG_MOVE );
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
void CNpcPricklyBugEnemy::processShot( int _frames )
|
|
||||||
{
|
|
||||||
switch ( m_state )
|
|
||||||
{
|
|
||||||
case NPC_GENERIC_HIT_CHECK_HEALTH:
|
|
||||||
{
|
|
||||||
m_health -= 5;
|
|
||||||
|
|
||||||
if ( m_health < 0 )
|
|
||||||
{
|
|
||||||
m_state = NPC_GENERIC_HIT_DEATH_START;
|
|
||||||
|
|
||||||
m_animPlaying = true;
|
|
||||||
m_animNo = m_data[m_type].dieAnim;
|
|
||||||
m_frame = 0;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
m_state = NPC_GENERIC_HIT_RECOIL;
|
|
||||||
|
|
||||||
m_animPlaying = true;
|
|
||||||
m_animNo = m_data[m_type].recoilAnim;
|
|
||||||
m_frame = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case NPC_GENERIC_HIT_RECOIL:
|
|
||||||
{
|
|
||||||
if ( !m_animPlaying )
|
|
||||||
{
|
|
||||||
m_state = 0;
|
|
||||||
m_controlFunc = NPC_CONTROL_MOVEMENT;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case NPC_GENERIC_HIT_DEATH_START:
|
|
||||||
{
|
|
||||||
if ( !m_animPlaying )
|
|
||||||
{
|
|
||||||
m_state = NPC_GENERIC_HIT_DEATH_END;
|
|
||||||
|
|
||||||
if ( m_data[m_type].deathSfx < CSoundMediator::NUM_SFXIDS )
|
|
||||||
{
|
|
||||||
CSoundMediator::playSfx( m_data[m_type].deathSfx );
|
|
||||||
}
|
|
||||||
|
|
||||||
m_isDying = true;
|
|
||||||
m_speed = -5;
|
|
||||||
|
|
||||||
if (m_data[m_type].skelType)
|
|
||||||
{
|
|
||||||
m_actorGfx->SetOtPos( 0 );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case NPC_GENERIC_HIT_DEATH_END:
|
|
||||||
{
|
|
||||||
m_drawRotation += 64 * _frames;
|
|
||||||
m_drawRotation &= 4095;
|
|
||||||
|
|
||||||
Pos.vy += m_speed * _frames;
|
|
||||||
|
|
||||||
if ( m_speed < 5 )
|
|
||||||
{
|
|
||||||
m_speed++;
|
|
||||||
}
|
|
||||||
|
|
||||||
DVECTOR offset = CLevel::getCameraPos();
|
|
||||||
|
|
||||||
if ( Pos.vy - offset.vy > VidGetScrH() )
|
|
||||||
{
|
|
||||||
if ( m_data[m_type].respawning )
|
|
||||||
{
|
|
||||||
m_isActive = false;
|
|
||||||
|
|
||||||
m_timerFunc = NPC_TIMER_RESPAWN;
|
|
||||||
m_timerTimer = 4 * GameState::getOneSecondInFrames();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
setToShutdown();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -22,7 +22,6 @@ class CNpcPricklyBugEnemy : public CNpcEnemy
|
|||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
virtual void processMovementModifier( int _frames, s32 distX, s32 distY, s32 dist, s16 headingChange );
|
virtual void processMovementModifier( int _frames, s32 distX, s32 distY, s32 dist, s16 headingChange );
|
||||||
virtual void processShot( int _frames );
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -649,7 +649,7 @@ s32 CNpcEnemy::getFrameShift( int _frames )
|
|||||||
|
|
||||||
void CNpcEnemy::processAnimFrames( int _frames )
|
void CNpcEnemy::processAnimFrames( int _frames )
|
||||||
{
|
{
|
||||||
if ( m_animPlaying && !m_isDying )
|
if ( m_animPlaying && ( ( m_isDying && m_data[m_type].playDeathAnim ) || !m_isDying ) )
|
||||||
{
|
{
|
||||||
s32 frameCount;
|
s32 frameCount;
|
||||||
|
|
||||||
@ -1057,9 +1057,12 @@ void CNpcEnemy::processMovementModifier(int _frames, s32 distX, s32 distY, s32 d
|
|||||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
u8 CNpcEnemy::hasBeenAttacked()
|
u8 CNpcEnemy::hasBeenAttacked()
|
||||||
|
{
|
||||||
|
if ( m_controlFunc != NPC_CONTROL_SHOT )
|
||||||
{
|
{
|
||||||
m_controlFunc = NPC_CONTROL_SHOT;
|
m_controlFunc = NPC_CONTROL_SHOT;
|
||||||
m_state = NPC_GENERIC_HIT_CHECK_HEALTH;
|
m_state = NPC_GENERIC_HIT_CHECK_HEALTH;
|
||||||
|
}
|
||||||
|
|
||||||
return( true );
|
return( true );
|
||||||
}
|
}
|
||||||
@ -1088,6 +1091,7 @@ void CNpcEnemy::processShot( int _frames )
|
|||||||
if ( m_health < 0 )
|
if ( m_health < 0 )
|
||||||
{
|
{
|
||||||
m_state = NPC_GENERIC_HIT_DEATH_START;
|
m_state = NPC_GENERIC_HIT_DEATH_START;
|
||||||
|
m_isDying = true;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -1118,13 +1122,13 @@ void CNpcEnemy::processShot( int _frames )
|
|||||||
m_animNo = m_data[m_type].dieAnim;
|
m_animNo = m_data[m_type].dieAnim;
|
||||||
m_frame = 0;
|
m_frame = 0;
|
||||||
m_state = NPC_GENERIC_HIT_DEATH_END;
|
m_state = NPC_GENERIC_HIT_DEATH_END;
|
||||||
|
m_isDying = true;
|
||||||
|
|
||||||
if ( m_data[m_type].deathSfx < CSoundMediator::NUM_SFXIDS )
|
if ( m_data[m_type].deathSfx < CSoundMediator::NUM_SFXIDS )
|
||||||
{
|
{
|
||||||
CSoundMediator::playSfx( m_data[m_type].deathSfx );
|
CSoundMediator::playSfx( m_data[m_type].deathSfx );
|
||||||
}
|
}
|
||||||
|
|
||||||
m_isDying = true;
|
|
||||||
m_speed = -5;
|
m_speed = -5;
|
||||||
|
|
||||||
if (m_data[m_type].skelType)
|
if (m_data[m_type].skelType)
|
||||||
|
@ -235,6 +235,7 @@ protected:
|
|||||||
u8 canCollideWithEnemy;
|
u8 canCollideWithEnemy;
|
||||||
CSoundMediator::SFXID deathSfx;
|
CSoundMediator::SFXID deathSfx;
|
||||||
CSoundMediator::SFXID moveSfx;
|
CSoundMediator::SFXID moveSfx;
|
||||||
|
u8 playDeathAnim;
|
||||||
}
|
}
|
||||||
NPC_DATA;
|
NPC_DATA;
|
||||||
|
|
||||||
|
@ -136,6 +136,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SMALL_JELLYFISH_1
|
{ // NPC_SMALL_JELLYFISH_1
|
||||||
@ -161,6 +162,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SMALL_JELLYFISH_2
|
{ // NPC_SMALL_JELLYFISH_2
|
||||||
@ -186,6 +188,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_ANEMONE_1
|
{ // NPC_ANEMONE_1
|
||||||
@ -211,6 +214,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::SFX_ANEMONE_DEFEATED_LEVEL1,
|
CSoundMediator::SFX_ANEMONE_DEFEATED_LEVEL1,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_ANEMONE_2
|
{ // NPC_ANEMONE_2
|
||||||
@ -236,6 +240,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::SFX_ANEMONE_DEFEATED_LEVEL2,
|
CSoundMediator::SFX_ANEMONE_DEFEATED_LEVEL2,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_ANEMONE_3
|
{ // NPC_ANEMONE_3
|
||||||
@ -261,6 +266,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::SFX_ANEMONE_DEFEATED_LEVEL3,
|
CSoundMediator::SFX_ANEMONE_DEFEATED_LEVEL3,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SKELETAL_FISH
|
{ // NPC_SKELETAL_FISH
|
||||||
@ -286,6 +292,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_CLAM_JUMP
|
{ // NPC_CLAM_JUMP
|
||||||
@ -311,6 +318,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::SFX_CLAM_DEFEATED,
|
CSoundMediator::SFX_CLAM_DEFEATED,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_CLAM_STATIC
|
{ // NPC_CLAM_STATIC
|
||||||
@ -336,6 +344,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SQUID_DART
|
{ // NPC_SQUID_DART
|
||||||
@ -361,6 +370,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::SFX_SQUIDDART_DEFEATED,
|
CSoundMediator::SFX_SQUIDDART_DEFEATED,
|
||||||
CSoundMediator::SFX_SQUIDDART_MOVE,
|
CSoundMediator::SFX_SQUIDDART_MOVE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_FISH_FOLK
|
{ // NPC_FISH_FOLK
|
||||||
@ -386,6 +396,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_PRICKLY_BUG
|
{ // NPC_PRICKLY_BUG
|
||||||
@ -412,6 +423,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
CSoundMediator::SFX_PRICKLY_BUG_DEFEATED,
|
CSoundMediator::SFX_PRICKLY_BUG_DEFEATED,
|
||||||
//CSoundMediator::NUM_SFXIDS,
|
//CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::SFX_PRICKLY_BUG_MOVE,
|
CSoundMediator::SFX_PRICKLY_BUG_MOVE,
|
||||||
|
true,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SEA_SNAKE
|
{ // NPC_SEA_SNAKE
|
||||||
@ -437,6 +449,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::SFX_SEASNAKE_MOVE,
|
CSoundMediator::SFX_SEASNAKE_MOVE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_PUFFA_FISH
|
{ // NPC_PUFFA_FISH
|
||||||
@ -462,6 +475,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::SFX_PUFFAFISH_MOVE,
|
CSoundMediator::SFX_PUFFAFISH_MOVE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_ANGLER_FISH
|
{ // NPC_ANGLER_FISH
|
||||||
@ -487,6 +501,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::SFX_ANGLER_FISH_MOVE,
|
CSoundMediator::SFX_ANGLER_FISH_MOVE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_HERMIT_CRAB
|
{ // NPC_HERMIT_CRAB
|
||||||
@ -504,7 +519,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
1,
|
1,
|
||||||
ANIM_HERMITCRAB_SCUTTLE,
|
ANIM_HERMITCRAB_SCUTTLE,
|
||||||
NPC_SHOT_GENERIC,
|
NPC_SHOT_GENERIC,
|
||||||
0,
|
ANIM_HERMITCRAB_DIE,
|
||||||
0,
|
0,
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
@ -512,6 +527,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
true,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_MINE
|
{ // NPC_MINE
|
||||||
@ -537,6 +553,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::SFX_HAZARD__MINE,
|
CSoundMediator::SFX_HAZARD__MINE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_BOOGER_MONSTER
|
{ // NPC_BOOGER_MONSTER
|
||||||
@ -562,6 +579,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SPIDER_CRAB
|
{ // NPC_SPIDER_CRAB
|
||||||
@ -587,6 +605,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::SFX_SPIDERCRAB_MOVE,
|
CSoundMediator::SFX_SPIDERCRAB_MOVE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SPIDER_CRAB_SPAWNER
|
{ // NPC_SPIDER_CRAB_SPAWNER
|
||||||
@ -612,6 +631,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_EYEBALL
|
{ // NPC_EYEBALL
|
||||||
@ -637,6 +657,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_BABY_OCTOPUS
|
{ // NPC_BABY_OCTOPUS
|
||||||
@ -654,7 +675,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
1,
|
1,
|
||||||
ANIM_BABYOCTOPUS_SWIM,
|
ANIM_BABYOCTOPUS_SWIM,
|
||||||
NPC_SHOT_GENERIC,
|
NPC_SHOT_GENERIC,
|
||||||
0,
|
ANIM_BABYOCTOPUS_DIE,
|
||||||
0,
|
0,
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
@ -662,6 +683,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
true,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_ZOMBIE_FISH_FOLK
|
{ // NPC_ZOMBIE_FISH_FOLK
|
||||||
@ -687,6 +709,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_NINJA_STARFISH
|
{ // NPC_NINJA_STARFISH
|
||||||
@ -712,6 +735,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_GHOST
|
{ // NPC_GHOST
|
||||||
@ -737,6 +761,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::SFX_GHOST,
|
CSoundMediator::SFX_GHOST,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_GHOST_PIRATE
|
{ // NPC_GHOST_PIRATE
|
||||||
@ -762,6 +787,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_FLAMING_SKULL
|
{ // NPC_FLAMING_SKULL
|
||||||
@ -787,6 +813,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::SFX_FLAMING_SKULL_DEFEATED,
|
CSoundMediator::SFX_FLAMING_SKULL_DEFEATED,
|
||||||
CSoundMediator::SFX_FLAMING_SKULL_MOVE,
|
CSoundMediator::SFX_FLAMING_SKULL_MOVE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SHARK_MAN
|
{ // NPC_SHARK_MAN
|
||||||
@ -812,6 +839,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_OIL_BLOB
|
{ // NPC_OIL_BLOB
|
||||||
@ -837,6 +865,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SKULL_STOMPER
|
{ // NPC_SKULL_STOMPER
|
||||||
@ -862,6 +891,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_MOTHER_JELLYFISH
|
{ // NPC_MOTHER_JELLYFISH
|
||||||
@ -887,6 +917,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::SFX_JELLYFISH_DEFEATED,
|
CSoundMediator::SFX_JELLYFISH_DEFEATED,
|
||||||
CSoundMediator::SFX_JELLYFISH_MOVE,
|
CSoundMediator::SFX_JELLYFISH_MOVE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SUB_SHARK
|
{ // NPC_SUB_SHARK
|
||||||
@ -912,6 +943,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_PARASITIC_WORM
|
{ // NPC_PARASITIC_WORM
|
||||||
@ -937,6 +969,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_FLYING_DUTCHMAN
|
{ // NPC_FLYING_DUTCHMAN
|
||||||
@ -962,6 +995,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_IRON_DOGFISH
|
{ // NPC_IRON_DOGFISH
|
||||||
@ -987,6 +1021,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_PARASITIC_WORM_SEGMENT
|
{ // NPC_PARASITIC_WORM_SEGMENT
|
||||||
@ -1012,6 +1047,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_BALL_BLOB
|
{ // NPC_BALL_BLOB
|
||||||
@ -1037,6 +1073,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
true,
|
true,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::SFX_BALL_BLOB_MOVE,
|
CSoundMediator::SFX_BALL_BLOB_MOVE,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SHELL
|
{ // NPC_SHELL
|
||||||
@ -1062,6 +1099,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_PROJECTILE_JELLYFISH
|
{ // NPC_PROJECTILE_JELLYFISH
|
||||||
@ -1087,6 +1125,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_MOTHER_JELLYFISH_BACKGROUND
|
{ // NPC_MOTHER_JELLYFISH_BACKGROUND
|
||||||
@ -1112,6 +1151,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SMALL_JELLYFISH_BACKGROUND
|
{ // NPC_SMALL_JELLYFISH_BACKGROUND
|
||||||
@ -1137,6 +1177,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_SMALL_JELLYFISH_2_BACKGROUND
|
{ // NPC_SMALL_JELLYFISH_2_BACKGROUND
|
||||||
@ -1162,6 +1203,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // NPC_BUTTERFLY_BACKGROUND
|
{ // NPC_BUTTERFLY_BACKGROUND
|
||||||
@ -1187,6 +1229,7 @@ CNpcEnemy::NPC_DATA CNpcEnemy::m_data[NPC_UNIT_TYPE_MAX] =
|
|||||||
false,
|
false,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
CSoundMediator::NUM_SFXIDS,
|
CSoundMediator::NUM_SFXIDS,
|
||||||
|
false,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user