This commit is contained in:
parent
58756ef755
commit
4c5d514e54
2 changed files with 84 additions and 22 deletions
|
@ -120,6 +120,10 @@
|
||||||
#include <ACTOR_SPONGEBOB_JELLYFISH_Anim.h>
|
#include <ACTOR_SPONGEBOB_JELLYFISH_Anim.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef __ANIM_SPONGEBOB_GLOVE_HEADER__
|
||||||
|
#include <ACTOR_SPONGEBOB_GLOVE_Anim.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/*----------------------------------------------------------------------
|
/*----------------------------------------------------------------------
|
||||||
Tyepdefs && Defines
|
Tyepdefs && Defines
|
||||||
|
@ -263,7 +267,7 @@ pint ledgeShift=1;
|
||||||
pint cammove=2;
|
pint cammove=2;
|
||||||
|
|
||||||
pint waterDrainSpeed=4;
|
pint waterDrainSpeed=4;
|
||||||
pint waterSoakUpSpeed=20;
|
pint waterSoakUpSpeed=40;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -276,6 +280,7 @@ CActorGfx *s_addonActorGfx[NUM_PLAYER_ADDONS]=
|
||||||
NULL, // PLAYER_ADDON_GLASSES
|
NULL, // PLAYER_ADDON_GLASSES
|
||||||
NULL, // PLAYER_ADDON_BUBBLEWAND
|
NULL, // PLAYER_ADDON_BUBBLEWAND
|
||||||
NULL, // PLAYER_ADDON_JELLYFISHINNET
|
NULL, // PLAYER_ADDON_JELLYFISHINNET
|
||||||
|
NULL, // PLAYER_ADDON_GLOVE
|
||||||
};
|
};
|
||||||
FileEquate s_addonActorPoolNames[NUM_PLAYER_ADDONS]=
|
FileEquate s_addonActorPoolNames[NUM_PLAYER_ADDONS]=
|
||||||
{
|
{
|
||||||
|
@ -285,6 +290,7 @@ FileEquate s_addonActorPoolNames[NUM_PLAYER_ADDONS]=
|
||||||
ACTORS_SPONGEBOB_GLASSES_SBK, // PLAYER_ADDON_GLASSES
|
ACTORS_SPONGEBOB_GLASSES_SBK, // PLAYER_ADDON_GLASSES
|
||||||
(FileEquate)-1, // PLAYER_ADDON_BUBBLEWAND
|
(FileEquate)-1, // PLAYER_ADDON_BUBBLEWAND
|
||||||
ACTORS_SPONGEBOB_JELLYFISH_SBK, // PLAYER_ADDON_JELLYFISHINNET
|
ACTORS_SPONGEBOB_JELLYFISH_SBK, // PLAYER_ADDON_JELLYFISHINNET
|
||||||
|
ACTORS_SPONGEBOB_GLOVE_SBK, // PLAYER_ADDON_GLOVE
|
||||||
};
|
};
|
||||||
PLAYER_ADDONS s_addonNumbers[NUM_PLAYERMODES]=
|
PLAYER_ADDONS s_addonNumbers[NUM_PLAYERMODES]=
|
||||||
{
|
{
|
||||||
|
@ -468,6 +474,34 @@ static s8 s_animMapNet[NUM_PLAYER_ADDONS][NUM_ANIM_SPONGEBOB]=
|
||||||
-1, // ANIM_SPONGEBOB_WALK,
|
-1, // ANIM_SPONGEBOB_WALK,
|
||||||
-1, // ANIM_SPONGEBOB_KARATE,
|
-1, // ANIM_SPONGEBOB_KARATE,
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// PLAYER_ADDON_GLOVE
|
||||||
|
{
|
||||||
|
-1, // ANIM_SPONGEBOB_BUTTBOUNCEEND,
|
||||||
|
-1, // ANIM_SPONGEBOB_BUTTBOUNCESTART,
|
||||||
|
-1, // ANIM_SPONGEBOB_FALL,
|
||||||
|
-1, // ANIM_SPONGEBOB_GETUP,
|
||||||
|
-1, // ANIM_SPONGEBOB_HITGROUND,
|
||||||
|
-1, // ANIM_SPONGEBOB_IDLEBREATH,
|
||||||
|
-1, // ANIM_SPONGEBOB_IDLEWIND,
|
||||||
|
-1, // ANIM_SPONGEBOB_JUMPEND,
|
||||||
|
-1, // ANIM_SPONGEBOB_JUMP,
|
||||||
|
-1, // ANIM_SPONGEBOB_RUN,
|
||||||
|
-1, // ANIM_SPONGEBOB_RUNSTOP,
|
||||||
|
-1, // ANIM_SPONGEBOB_RUNSTART,
|
||||||
|
-1, // ANIM_SPONGEBOB_SOAKUP,
|
||||||
|
-1, // ANIM_SPONGEBOB_TEETERBACK,
|
||||||
|
-1, // ANIM_SPONGEBOB_TEETERFRONT,
|
||||||
|
-1, // ANIM_SPONGEBOB_SWIPE,
|
||||||
|
-1, // ANIM_SPONGEBOB_DEATHSPIN,
|
||||||
|
-1, // ANIM_SPONGEBOB_BALLOONJUMP,
|
||||||
|
-1, // ANIM_SPONGEBOB_BLOWBUBBLE,
|
||||||
|
-1, // ANIM_SPONGEBOB_FIREEND,
|
||||||
|
-1, // ANIM_SPONGEBOB_FIRESTART,
|
||||||
|
-1, // ANIM_SPONGEBOB_IDLEWEAPON,
|
||||||
|
-1, // ANIM_SPONGEBOB_WALK,
|
||||||
|
ANIM_SPONGEBOB_GLOVE_KARATE, // ANIM_SPONGEBOB_KARATE,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
// -------------------------------------------------------------------------------
|
// -------------------------------------------------------------------------------
|
||||||
|
@ -521,13 +555,13 @@ m_animFrame=0;
|
||||||
m_divingHelmet=false;
|
m_divingHelmet=false;
|
||||||
setIsInWater(true);
|
setIsInWater(true);
|
||||||
|
|
||||||
//#ifdef __USER_paul__
|
// Always ( cept for one level ) need this
|
||||||
registerAddon(PLAYER_ADDON_NET);
|
registerAddon(PLAYER_ADDON_GLOVE);
|
||||||
registerAddon(PLAYER_ADDON_CORALBLOWER);
|
// registerAddon(PLAYER_ADDON_NET);
|
||||||
registerAddon(PLAYER_ADDON_JELLYLAUNCHER);
|
// registerAddon(PLAYER_ADDON_CORALBLOWER);
|
||||||
registerAddon(PLAYER_ADDON_GLASSES);
|
// registerAddon(PLAYER_ADDON_JELLYLAUNCHER);
|
||||||
registerAddon(PLAYER_ADDON_BUBBLEWAND);
|
// registerAddon(PLAYER_ADDON_GLASSES);
|
||||||
//#endif
|
// registerAddon(PLAYER_ADDON_BUBBLEWAND);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*----------------------------------------------------------------------
|
/*----------------------------------------------------------------------
|
||||||
|
@ -1403,8 +1437,9 @@ void CPlayer::renderSb(DVECTOR *_pos,int _animNo,int _animFrame)
|
||||||
if(addonAnimNo!=-1)
|
if(addonAnimNo!=-1)
|
||||||
{
|
{
|
||||||
CActorGfx *addonGfx=s_addonActorGfx[addon];
|
CActorGfx *addonGfx=s_addonActorGfx[addon];
|
||||||
if(addonGfx&&
|
if(addonGfx)
|
||||||
_animFrame>=addonGfx->getFrameCount(addonAnimNo))
|
{
|
||||||
|
if(_animFrame>=addonGfx->getFrameCount(addonAnimNo))
|
||||||
{
|
{
|
||||||
PAUL_DBGMSG("FRAME OVERRUN ON SPONGEBOB ADDON! ( %d vs %d )",m_actorGfx->getFrameCount(_animNo),addonGfx->getFrameCount(addonAnimNo));
|
PAUL_DBGMSG("FRAME OVERRUN ON SPONGEBOB ADDON! ( %d vs %d )",m_actorGfx->getFrameCount(_animNo),addonGfx->getFrameCount(addonAnimNo));
|
||||||
}
|
}
|
||||||
|
@ -1415,6 +1450,7 @@ void CPlayer::renderSb(DVECTOR *_pos,int _animNo,int _animFrame)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Render glasses addon?
|
// Render glasses addon?
|
||||||
if(isWearingGlasses())
|
if(isWearingGlasses())
|
||||||
|
@ -1423,6 +1459,8 @@ void CPlayer::renderSb(DVECTOR *_pos,int _animNo,int _animFrame)
|
||||||
if(addonAnimNo!=-1)
|
if(addonAnimNo!=-1)
|
||||||
{
|
{
|
||||||
CActorGfx *addonGfx=s_addonActorGfx[PLAYER_ADDON_GLASSES];
|
CActorGfx *addonGfx=s_addonActorGfx[PLAYER_ADDON_GLASSES];
|
||||||
|
if(addonGfx)
|
||||||
|
{
|
||||||
if(_animFrame>=addonGfx->getFrameCount(addonAnimNo))
|
if(_animFrame>=addonGfx->getFrameCount(addonAnimNo))
|
||||||
{
|
{
|
||||||
PAUL_DBGMSG("FRAME OVERRUN ON SPONGEBOB GLASSES ADDON! ( %d vs %d )",m_actorGfx->getFrameCount(_animNo),addonGfx->getFrameCount(addonAnimNo));
|
PAUL_DBGMSG("FRAME OVERRUN ON SPONGEBOB GLASSES ADDON! ( %d vs %d )",m_actorGfx->getFrameCount(_animNo),addonGfx->getFrameCount(addonAnimNo));
|
||||||
|
@ -1434,6 +1472,29 @@ void CPlayer::renderSb(DVECTOR *_pos,int _animNo,int _animFrame)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Render glove addon?
|
||||||
|
if(m_currentMode==PLAYER_MODE_FULLUNARMED)
|
||||||
|
{
|
||||||
|
s8 addonAnimNo=s_animMapNet[PLAYER_ADDON_GLOVE][_animNo];
|
||||||
|
if(addonAnimNo!=-1)
|
||||||
|
{
|
||||||
|
CActorGfx *addonGfx=s_addonActorGfx[PLAYER_ADDON_GLOVE];
|
||||||
|
if(addonGfx)
|
||||||
|
{
|
||||||
|
if(_animFrame>=addonGfx->getFrameCount(addonAnimNo))
|
||||||
|
{
|
||||||
|
PAUL_DBGMSG("FRAME OVERRUN ON SPONGEBOB GLASSES ADDON! ( %d vs %d )",m_actorGfx->getFrameCount(_animNo),addonGfx->getFrameCount(addonAnimNo));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ft4=addonGfx->Render(*_pos,addonAnimNo,_animFrame,m_facing==FACING_RIGHT?0:1);
|
||||||
|
setSemiTrans(ft4,trans);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Render SB
|
// Render SB
|
||||||
ft4=m_actorGfx->Render(*_pos,_animNo,_animFrame,m_facing==FACING_RIGHT?0:1);
|
ft4=m_actorGfx->Render(*_pos,_animNo,_animFrame,m_facing==FACING_RIGHT?0:1);
|
||||||
|
|
|
@ -90,6 +90,7 @@ typedef enum
|
||||||
PLAYER_ADDON_GLASSES,
|
PLAYER_ADDON_GLASSES,
|
||||||
PLAYER_ADDON_BUBBLEWAND,
|
PLAYER_ADDON_BUBBLEWAND,
|
||||||
PLAYER_ADDON_JELLYFISHINNET,
|
PLAYER_ADDON_JELLYFISHINNET,
|
||||||
|
PLAYER_ADDON_GLOVE,
|
||||||
|
|
||||||
NUM_PLAYER_ADDONS,
|
NUM_PLAYER_ADDONS,
|
||||||
NO_ADDON,
|
NO_ADDON,
|
||||||
|
@ -159,7 +160,7 @@ public:
|
||||||
MAX_HEALTH=5,
|
MAX_HEALTH=5,
|
||||||
MAX_LIVES=99,
|
MAX_LIVES=99,
|
||||||
|
|
||||||
WATERLEVELSHIFT=4,
|
WATERLEVELSHIFT=5,
|
||||||
WATERMAXHEALTH=(255<<WATERLEVELSHIFT),
|
WATERMAXHEALTH=(255<<WATERLEVELSHIFT),
|
||||||
WATERHEALTHPART=WATERMAXHEALTH/(MAX_HEALTH+1),
|
WATERHEALTHPART=WATERMAXHEALTH/(MAX_HEALTH+1),
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue