This commit is contained in:
Paul 2001-08-14 21:03:31 +00:00
parent 7a06560d96
commit 1ea3c80b5c
11 changed files with 42 additions and 23 deletions

View File

@ -13,7 +13,7 @@ TeeterBack
TeeterFront TeeterFront
Swipe Swipe
DeathForwards DeathForwards
DeathSquash DeathTar
DeathDry DeathDry
balloonJump balloonJump
blowbubble blowbubble
@ -36,3 +36,4 @@ IdleNoFace
IdleZorro IdleZorro
Celebrate Celebrate
IdleBlink IdleBlink
Electrocuted

View File

@ -11,10 +11,11 @@ TeeterBack
TeeterFront TeeterFront
Walk Walk
DeathForwards DeathForwards
DeathSquash DeathTar
GetHit GetHit
CrouchDown CrouchDown
CrouchUp CrouchUp
LookUp LookUp
Celebrate Celebrate
IdleBlink IdleBlink
Electrocuted

View File

@ -12,7 +12,7 @@ RunStart
TeeterBack TeeterBack
TeeterFront TeeterFront
Swipe Swipe
DeathSquash DeathTar
DeathForwards DeathForwards
GetHit GetHit
CrouchDown CrouchDown
@ -22,3 +22,4 @@ IdleWeapon
IdleNet IdleNet
Celebrate Celebrate
IdleBlink IdleBlink
Electrocuted

View File

@ -13,7 +13,7 @@ RunStop
RunStart RunStart
TeeterBack TeeterBack
TeeterFront TeeterFront
DeathSquash DeathTar
DeathForwards DeathForwards
GetHit GetHit
CrouchDown CrouchDown
@ -22,3 +22,4 @@ LookUp
IdleWeapon IdleWeapon
Celebrate Celebrate
IdleBlink IdleBlink
Electrocuted

View File

@ -14,7 +14,7 @@ TeeterBack
TeeterFront TeeterFront
Swipe Swipe
DeathForwards DeathForwards
DeathSquash DeathTar
GetHit GetHit
CrouchDown CrouchDown
CrouchUp CrouchUp
@ -22,3 +22,4 @@ LookUp
IdleWeapon IdleWeapon
Celebrate Celebrate
IdleBlink IdleBlink
Electrocuted

View File

@ -15,9 +15,10 @@ RunStart
TeeterBack TeeterBack
TeeterFront TeeterFront
DeathForwards DeathForwards
DeathSquash DeathTar
GetHit GetHit
CrouchDown CrouchDown
CrouchUp CrouchUp
Celebrate Celebrate
IdleBlink IdleBlink
Electrocuted

View File

@ -95,7 +95,7 @@ static const char *s_animNames[NUM_ANIM_SPONGEBOB]=
"ANIM_SPONGEBOB_TEETERFRONT", "ANIM_SPONGEBOB_TEETERFRONT",
"ANIM_SPONGEBOB_SWIPE", "ANIM_SPONGEBOB_SWIPE",
"ANIM_SPONGEBOB_DEATHFORWARDS", "ANIM_SPONGEBOB_DEATHFORWARDS",
"ANIM_SPONGEBOB_DEATHSQUASH", "ANIM_SPONGEBOB_DEATHTAR",
"ANIM_SPONGEBOB_DEATHDRY", "ANIM_SPONGEBOB_DEATHDRY",
"ANIM_SPONGEBOB_BALLOONJUMP", "ANIM_SPONGEBOB_BALLOONJUMP",
"ANIM_SPONGEBOB_BLOWBUBBLE", "ANIM_SPONGEBOB_BLOWBUBBLE",
@ -117,6 +117,7 @@ static const char *s_animNames[NUM_ANIM_SPONGEBOB]=
"ANIM_SPONGEBOB_IDLEZORRO", "ANIM_SPONGEBOB_IDLEZORRO",
"ANIM_SPONGEBOB_CELEBRATE", "ANIM_SPONGEBOB_CELEBRATE",
"ANIM_SPONGEBOB_IDLEBLINK", "ANIM_SPONGEBOB_IDLEBLINK",
"ANIM_SPONGEBOB_ELECTROCUTED",
}; };

View File

@ -335,7 +335,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
ANIM_SPONGEBOB_NET_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT, ANIM_SPONGEBOB_NET_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT,
ANIM_SPONGEBOB_NET_SWIPE, // ANIM_SPONGEBOB_SWIPE, ANIM_SPONGEBOB_NET_SWIPE, // ANIM_SPONGEBOB_SWIPE,
ANIM_SPONGEBOB_NET_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS, ANIM_SPONGEBOB_NET_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS,
ANIM_SPONGEBOB_NET_DEATHSQUASH, // ANIM_SPONGEBOB_DEATHSQUASH, ANIM_SPONGEBOB_NET_DEATHTAR, // ANIM_SPONGEBOB_DEATHTAR,
-1, // ANIM_SPONGEBOB_DEATHDRY -1, // ANIM_SPONGEBOB_DEATHDRY
-1, // ANIM_SPONGEBOB_BALLOONJUMP, -1, // ANIM_SPONGEBOB_BALLOONJUMP,
-1, // ANIM_SPONGEBOB_BLOWBUBBLE, -1, // ANIM_SPONGEBOB_BLOWBUBBLE,
@ -351,12 +351,13 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
-1, // ANIM_SPONGEBOB_IDLEFACEUPSIDEDOWN -1, // ANIM_SPONGEBOB_IDLEFACEUPSIDEDOWN
-1, // ANIM_SPONGEBOB_IDLEBANDAID, -1, // ANIM_SPONGEBOB_IDLEBANDAID,
//NOIDLE -1, // ANIM_SPONGEBOB_IDLEINHAT, //NOIDLE -1, // ANIM_SPONGEBOB_IDLEINHAT,
-1, // ANIM_SPONGEBOB_IDLEMATURE, -1, // ANIM_SPONGEBOB_IDLEMATURE,
-1, // ANIM_SPONGEBOB_IDLEMOUSTACHE, -1, // ANIM_SPONGEBOB_IDLEMOUSTACHE,
-1, // ANIM_SPONGEBOB_IDLENOFACE, -1, // ANIM_SPONGEBOB_IDLENOFACE,
-1, // ANIM_SPONGEBOB_IDLEZORRO, -1, // ANIM_SPONGEBOB_IDLEZORRO,
ANIM_SPONGEBOB_NET_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE, ANIM_SPONGEBOB_NET_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE,
ANIM_SPONGEBOB_NET_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK, ANIM_SPONGEBOB_NET_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK,
ANIM_SPONGEBOB_NET_ELECTROCUTED, // ANIM_SPONGEBOB_ELECTROCUTED,
}, },
// PLAYER_ADDON_CORALBLOWER, // PLAYER_ADDON_CORALBLOWER,
@ -376,7 +377,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
ANIM_SPONGEBOB_CORALBLOWER_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT, ANIM_SPONGEBOB_CORALBLOWER_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT,
-1, // ANIM_SPONGEBOB_SWIPE, -1, // ANIM_SPONGEBOB_SWIPE,
ANIM_SPONGEBOB_CORALBLOWER_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS, ANIM_SPONGEBOB_CORALBLOWER_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS,
ANIM_SPONGEBOB_CORALBLOWER_DEATHSQUASH, // ANIM_SPONGEBOB_DEATHSQUASH, ANIM_SPONGEBOB_CORALBLOWER_DEATHTAR, // ANIM_SPONGEBOB_DEATHTAR,
-1, // ANIM_SPONGEBOB_DEATHDRY -1, // ANIM_SPONGEBOB_DEATHDRY
-1, // ANIM_SPONGEBOB_BALLOONJUMP, -1, // ANIM_SPONGEBOB_BALLOONJUMP,
-1, // ANIM_SPONGEBOB_BLOWBUBBLE, -1, // ANIM_SPONGEBOB_BLOWBUBBLE,
@ -398,6 +399,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
-1, // ANIM_SPONGEBOB_IDLEZORRO, -1, // ANIM_SPONGEBOB_IDLEZORRO,
ANIM_SPONGEBOB_CORALBLOWER_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE, ANIM_SPONGEBOB_CORALBLOWER_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE,
ANIM_SPONGEBOB_CORALBLOWER_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK, ANIM_SPONGEBOB_CORALBLOWER_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK,
ANIM_SPONGEBOB_CORALBLOWER_ELECTROCUTED, // ANIM_SPONGEBOB_ELECTROCUTED,
}, },
// PLAYER_ADDON_JELLYLAUNCHER, // PLAYER_ADDON_JELLYLAUNCHER,
@ -417,7 +419,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
ANIM_SPONGEBOB_JELLYLAUNCHER_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT, ANIM_SPONGEBOB_JELLYLAUNCHER_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT,
-1, // ANIM_SPONGEBOB_SWIPE, -1, // ANIM_SPONGEBOB_SWIPE,
ANIM_SPONGEBOB_JELLYLAUNCHER_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS, ANIM_SPONGEBOB_JELLYLAUNCHER_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS,
ANIM_SPONGEBOB_JELLYLAUNCHER_DEATHSQUASH, // ANIM_SPONGEBOB_DEATHSQUASH, ANIM_SPONGEBOB_JELLYLAUNCHER_DEATHTAR, // ANIM_SPONGEBOB_DEATHTAR,
-1, // ANIM_SPONGEBOB_DEATHDRY -1, // ANIM_SPONGEBOB_DEATHDRY
-1, // ANIM_SPONGEBOB_BALLOONJUMP, -1, // ANIM_SPONGEBOB_BALLOONJUMP,
-1, // ANIM_SPONGEBOB_BLOWBUBBLE, -1, // ANIM_SPONGEBOB_BLOWBUBBLE,
@ -439,6 +441,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
-1, // ANIM_SPONGEBOB_IDLEZORRO, -1, // ANIM_SPONGEBOB_IDLEZORRO,
ANIM_SPONGEBOB_JELLYLAUNCHER_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE, ANIM_SPONGEBOB_JELLYLAUNCHER_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE,
ANIM_SPONGEBOB_JELLYLAUNCHER_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK, ANIM_SPONGEBOB_JELLYLAUNCHER_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK,
ANIM_SPONGEBOB_JELLYLAUNCHER_ELECTROCUTED, // ANIM_SPONGEBOB_ELECTROCUTED,
}, },
// PLAYER_ADDON_BUBBLEWAND, // PLAYER_ADDON_BUBBLEWAND,
@ -458,7 +461,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
ANIM_SPONGEBOB_WAND_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT, ANIM_SPONGEBOB_WAND_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT,
-1, // ANIM_SPONGEBOB_SWIPE, -1, // ANIM_SPONGEBOB_SWIPE,
ANIM_SPONGEBOB_WAND_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS, ANIM_SPONGEBOB_WAND_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS,
ANIM_SPONGEBOB_WAND_DEATHSQUASH, // ANIM_SPONGEBOB_DEATHSQUASH, ANIM_SPONGEBOB_WAND_DEATHTAR, // ANIM_SPONGEBOB_DEATHTAR,
-1, // ANIM_SPONGEBOB_DEATHDRY -1, // ANIM_SPONGEBOB_DEATHDRY
-1, // ANIM_SPONGEBOB_BALLOONJUMP, -1, // ANIM_SPONGEBOB_BALLOONJUMP,
ANIM_SPONGEBOB_WAND_BLOWBUBBLE, // ANIM_SPONGEBOB_BLOWBUBBLE, ANIM_SPONGEBOB_WAND_BLOWBUBBLE, // ANIM_SPONGEBOB_BLOWBUBBLE,
@ -480,6 +483,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
-1, // ANIM_SPONGEBOB_IDLEZORRO, -1, // ANIM_SPONGEBOB_IDLEZORRO,
ANIM_SPONGEBOB_WAND_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE, ANIM_SPONGEBOB_WAND_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE,
ANIM_SPONGEBOB_WAND_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK, ANIM_SPONGEBOB_WAND_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK,
ANIM_SPONGEBOB_WAND_ELECTROCUTED, // ANIM_SPONGEBOB_ELECTROCUTED,
}, },
// PLAYER_ADDON_JELLYFISHINNET // PLAYER_ADDON_JELLYFISHINNET
@ -499,7 +503,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
ANIM_SPONGEBOB_JELLYFISH_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT, ANIM_SPONGEBOB_JELLYFISH_TEETERFRONT, // ANIM_SPONGEBOB_TEETERFRONT,
ANIM_SPONGEBOB_JELLYFISH_SWIPE, // ANIM_SPONGEBOB_SWIPE, ANIM_SPONGEBOB_JELLYFISH_SWIPE, // ANIM_SPONGEBOB_SWIPE,
ANIM_SPONGEBOB_JELLYFISH_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS, ANIM_SPONGEBOB_JELLYFISH_DEATHFORWARDS, // ANIM_SPONGEBOB_DEATHFORWARDS,
ANIM_SPONGEBOB_JELLYFISH_DEATHSQUASH, // ANIM_SPONGEBOB_DEATHSQUASH, ANIM_SPONGEBOB_JELLYFISH_DEATHTAR, // ANIM_SPONGEBOB_DEATHTAR,
-1, // ANIM_SPONGEBOB_DEATHDRY -1, // ANIM_SPONGEBOB_DEATHDRY
-1, // ANIM_SPONGEBOB_BALLOONJUMP, -1, // ANIM_SPONGEBOB_BALLOONJUMP,
-1, // ANIM_SPONGEBOB_BLOWBUBBLE, -1, // ANIM_SPONGEBOB_BLOWBUBBLE,
@ -521,6 +525,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
-1, // ANIM_SPONGEBOB_IDLEZORRO, -1, // ANIM_SPONGEBOB_IDLEZORRO,
ANIM_SPONGEBOB_JELLYFISH_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE, ANIM_SPONGEBOB_JELLYFISH_CELEBRATE, // ANIM_SPONGEBOB_CELEBRATE,
ANIM_SPONGEBOB_JELLYFISH_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK, ANIM_SPONGEBOB_JELLYFISH_IDLEBLINK, // ANIM_SPONGEBOB_IDLEBLINK,
ANIM_SPONGEBOB_JELLYFISH_ELECTROCUTED, // ANIM_SPONGEBOB_ELECTROCUTED,
}, },
// PLAYER_ADDON_GLOVE // PLAYER_ADDON_GLOVE
@ -540,7 +545,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
-1, // ANIM_SPONGEBOB_TEETERFRONT, -1, // ANIM_SPONGEBOB_TEETERFRONT,
-1, // ANIM_SPONGEBOB_SWIPE, -1, // ANIM_SPONGEBOB_SWIPE,
-1, // ANIM_SPONGEBOB_DEATHFORWARDS, -1, // ANIM_SPONGEBOB_DEATHFORWARDS,
-1, // ANIM_SPONGEBOB_DEATHSQUASH, -1, // ANIM_SPONGEBOB_DEATHTAR,
-1, // ANIM_SPONGEBOB_DEATHDRY -1, // ANIM_SPONGEBOB_DEATHDRY
-1, // ANIM_SPONGEBOB_BALLOONJUMP, -1, // ANIM_SPONGEBOB_BALLOONJUMP,
-1, // ANIM_SPONGEBOB_BLOWBUBBLE, -1, // ANIM_SPONGEBOB_BLOWBUBBLE,
@ -562,6 +567,7 @@ s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
-1, // ANIM_SPONGEBOB_IDLEZORRO, -1, // ANIM_SPONGEBOB_IDLEZORRO,
-1, // ANIM_SPONGEBOB_CELEBRATE, -1, // ANIM_SPONGEBOB_CELEBRATE,
-1, // ANIM_SPONGEBOB_IDLEBLINK, -1, // ANIM_SPONGEBOB_IDLEBLINK,
-1, // ANIM_SPONGEBOB_ELECTROCUTED,
}, },
}; };
@ -1953,6 +1959,7 @@ void CPlayer::respawn()
m_spatulaWarningTimer=0; m_spatulaWarningTimer=0;
m_healthWaterLevel=WATERMAXHEALTH; m_healthWaterLevel=WATERMAXHEALTH;
m_invincibleFrameCount=INVINCIBLE_FRAMES__START; m_invincibleFrameCount=INVINCIBLE_FRAMES__START;
m_recoveringFromElectrocution=false;
m_helmetSoundTimer=0; m_helmetSoundTimer=0;
Pos=m_respawnPos; Pos=m_respawnPos;
m_cameraLookOffset=0; m_cameraLookOffset=0;
@ -2192,6 +2199,7 @@ void CPlayer::takeDamage(DAMAGE_TYPE _damage,REACT_DIRECTION _reactDirection,CTh
CSoundMediator::SFXID painSound=CSoundMediator::SFX_SPONGEBOB_OUCH; CSoundMediator::SFXID painSound=CSoundMediator::SFX_SPONGEBOB_OUCH;
// Check if we are currently immune to this damage type // Check if we are currently immune to this damage type
m_recoveringFromElectrocution=false;
switch(_damage) switch(_damage)
{ {
case DAMAGE__NONE: case DAMAGE__NONE:
@ -2207,6 +2215,7 @@ void CPlayer::takeDamage(DAMAGE_TYPE _damage,REACT_DIRECTION _reactDirection,CTh
else else
{ {
painSound=CSoundMediator::SFX_BOSS_JELLYFISH___SB_GETS_ELECTROCUTED; painSound=CSoundMediator::SFX_BOSS_JELLYFISH___SB_GETS_ELECTROCUTED;
m_recoveringFromElectrocution=true;
} }
break; break;

View File

@ -255,6 +255,7 @@ public:
int getSpatulasHeld() {return m_numSpatulasHeld;} int getSpatulasHeld() {return m_numSpatulasHeld;}
ATTACK_STATE getAttackState(); ATTACK_STATE getAttackState();
int isRecoveringFromHit() {return m_invincibleFrameCount!=0||m_currentMode==PLAYER_MODE_DEAD;} int isRecoveringFromHit() {return m_invincibleFrameCount!=0||m_currentMode==PLAYER_MODE_DEAD;}
int wasLastHitElectrical() { return m_recoveringFromElectrocution;}
void registerAddon(PLAYER_ADDONS _addon); void registerAddon(PLAYER_ADDONS _addon);
DVECTOR *getMoveVelocity() {return &m_moveVelocity;} DVECTOR *getMoveVelocity() {return &m_moveVelocity;}
@ -352,6 +353,7 @@ private:
INVINCIBLE_FRAMES__HIT=120, // Invincible for this many frames after taking damage INVINCIBLE_FRAMES__HIT=120, // Invincible for this many frames after taking damage
}; };
int m_invincibleFrameCount; // Initial invincibility and also invincibility after taking damage int m_invincibleFrameCount; // Initial invincibility and also invincibility after taking damage
int m_recoveringFromElectrocution; // TRUE is last hit was electrical
static class CPlayerMode *s_playerModes[NUM_PLAYERMODES]; static class CPlayerMode *s_playerModes[NUM_PLAYERMODES];
class CPlayerMode *m_currentPlayerModeClass; class CPlayerMode *m_currentPlayerModeClass;

View File

@ -75,10 +75,10 @@ void CPlayerModeDead::enter()
m_deathAnim=ANIM_SPONGEBOB_DEATHDRY; m_deathAnim=ANIM_SPONGEBOB_DEATHDRY;
break; break;
case DEATHTYPE__SQUASH: case DEATHTYPE__SQUASH:
m_deathAnim=ANIM_SPONGEBOB_DEATHSQUASH; m_deathAnim=ANIM_SPONGEBOB_DEATHFORWARDS;
break; break;
case DEATHTYPE__LIQUID: case DEATHTYPE__LIQUID:
m_deathAnim=ANIM_SPONGEBOB_DEATHFORWARDS; m_deathAnim=ANIM_SPONGEBOB_DEATHTAR;
break; break;
case DEATHTYPE__FALL_TO_DEATH: case DEATHTYPE__FALL_TO_DEATH:
m_deathAnim=-1; m_deathAnim=-1;

View File

@ -70,7 +70,8 @@ CPlayerStateJumpBack s_stateJumpBack;
---------------------------------------------------------------------- */ ---------------------------------------------------------------------- */
void CPlayerStateJumpBack::enter(CPlayerModeBase *_playerMode) void CPlayerStateJumpBack::enter(CPlayerModeBase *_playerMode)
{ {
_playerMode->setAnimNo(ANIM_SPONGEBOB_GETHIT); _playerMode->setAnimNo(_playerMode->getPlayer()->wasLastHitElectrical()?ANIM_SPONGEBOB_ELECTROCUTED:ANIM_SPONGEBOB_GETHIT);
if(_playerMode->getState()!=STATE_JUMPBACK) if(_playerMode->getState()!=STATE_JUMPBACK)
{ {
m_reactFrames=0; m_reactFrames=0;