This commit is contained in:
parent
180ba21ecb
commit
7853274fe5
14 changed files with 70 additions and 145 deletions
|
@ -626,7 +626,7 @@ m_animNo=0;
|
|||
m_animFrame=0;
|
||||
setFacing(FACING_RIGHT);
|
||||
m_currentPlayerModeClass=NULL;
|
||||
m_lastModeBeforeDeath=PLAYER_MODE_FULLUNARMED; // Player will then respawn into this mode
|
||||
m_lastModeBeforeDeath=PLAYER_MODE_BASICUNARMED; // Player will then respawn into this mode
|
||||
m_lives++;respawn();
|
||||
m_canExitLevel=false;
|
||||
|
||||
|
@ -772,8 +772,7 @@ if(PadGetDown(0)&PAD_TRIANGLE)
|
|||
updatePadInput();
|
||||
|
||||
// Weapon collect/drop/swap stuff..
|
||||
if(m_currentMode==PLAYER_MODE_BASICUNARMED||
|
||||
m_currentMode==PLAYER_MODE_FULLUNARMED)
|
||||
if(m_currentMode==PLAYER_MODE_BASICUNARMED)
|
||||
{
|
||||
// Always trying to pickup weapon if unarmed... means that when SB walks
|
||||
// over an item whilst unarmed, he automatically picks it up
|
||||
|
@ -786,7 +785,6 @@ if(PadGetDown(0)&PAD_TRIANGLE)
|
|||
|
||||
// If already armed then drop current weapon
|
||||
if(m_currentMode!=PLAYER_MODE_BASICUNARMED&&
|
||||
m_currentMode!=PLAYER_MODE_FULLUNARMED&&
|
||||
m_currentMode!=PLAYER_MODE_DEAD)
|
||||
{
|
||||
static const int s_pickupsToDrop[NUM_PLAYERMODES]=
|
||||
|
@ -814,7 +812,7 @@ if(PadGetDown(0)&PAD_TRIANGLE)
|
|||
pickup=createPickup((PICKUP_TYPE)pickupToDrop,&pickupPos);
|
||||
pickup->setPos(&pickupPos);
|
||||
}
|
||||
setMode(PLAYER_MODE_FULLUNARMED);
|
||||
setMode(PLAYER_MODE_BASICUNARMED);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2055,7 +2053,7 @@ void CPlayer::takeDamage(DAMAGE_TYPE _damage,REACT_DIRECTION _reactDirection,CTh
|
|||
if(m_currentMode==PLAYER_MODE_NET)
|
||||
{
|
||||
// Launch net pickup
|
||||
setMode(PLAYER_MODE_FULLUNARMED);
|
||||
setMode(PLAYER_MODE_BASICUNARMED);
|
||||
DVECTOR pickupPos;
|
||||
CBasePickup *pickup;
|
||||
pickupPos.vx=Pos.vx;
|
||||
|
|
|
@ -104,7 +104,7 @@ void CPlayerModeBalloon::think()
|
|||
{
|
||||
CSoundMediator::playSfx(CSoundMediator::SFX_BALLOON_POP);
|
||||
}
|
||||
m_player->setMode(PLAYER_MODE_FULLUNARMED);
|
||||
m_player->setMode(PLAYER_MODE_BASICUNARMED);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -17,6 +17,14 @@
|
|||
|
||||
#include "player\pmchop.h"
|
||||
|
||||
#ifndef __GFX_SPRBANK_H__
|
||||
#include "gfx\sprbank.h"
|
||||
#endif
|
||||
|
||||
#ifndef __GAME_GAME_H__
|
||||
#include "game\game.h"
|
||||
#endif
|
||||
|
||||
|
||||
/* Std Lib
|
||||
------- */
|
||||
|
@ -28,6 +36,10 @@
|
|||
#include <ACTOR_SPONGEBOB_ANIM.h>
|
||||
#endif
|
||||
|
||||
#ifndef __SPR_SPRITES_H__
|
||||
#include <sprites.h>
|
||||
#endif
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
Tyepdefs && Defines
|
||||
|
@ -55,6 +67,7 @@ void CPlayerModeChop::enter()
|
|||
{
|
||||
CPlayerModeBase::enter();
|
||||
m_chopping=false;
|
||||
m_timer=0;
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
|
@ -116,6 +129,31 @@ void CPlayerModeChop::think()
|
|||
setPlayerCollisionSize(m_savedCSX,m_savedCSY,m_savedCSW,m_savedCSH);
|
||||
}
|
||||
}
|
||||
|
||||
if(++m_timer>CHOP_TIMEOUT)
|
||||
{
|
||||
m_player->setMode(PLAYER_MODE_BASICUNARMED);
|
||||
}
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
Function:
|
||||
Purpose:
|
||||
Params:
|
||||
Returns:
|
||||
---------------------------------------------------------------------- */
|
||||
void CPlayerModeChop::renderModeUi()
|
||||
{
|
||||
if(m_timer<CHOP_TIMEOUT-CHOP_FLASH_TIME||m_timer&2)
|
||||
{
|
||||
SpriteBank *sb;
|
||||
sFrameHdr *fh;
|
||||
|
||||
sb=CGameScene::getSpriteBank();
|
||||
fh=sb->getFrameHeader(FRM__GLOVE);
|
||||
|
||||
sb->printFT4(fh,CPlayer::POWERUPUI_ICONX,CPlayer::POWERUPUI_ICONY,0,0,CPlayer::POWERUPUI_OT);
|
||||
}
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
|
|
|
@ -39,6 +39,7 @@ class CPlayerModeChop : public CPlayerModeBase
|
|||
public:
|
||||
virtual void enter();
|
||||
virtual void think();
|
||||
virtual void renderModeUi();
|
||||
|
||||
virtual void setAnimNo(int _animNo);
|
||||
virtual void setAnimFrame(int _animFrame);
|
||||
|
@ -52,6 +53,8 @@ private:
|
|||
{
|
||||
CHOP_ATTACK_START_FRAME=15,
|
||||
CHOP_ATTACK_END_FRAME=21,
|
||||
CHOP_TIMEOUT=10*60,
|
||||
CHOP_FLASH_TIME=2*60,
|
||||
};
|
||||
|
||||
|
||||
|
@ -60,6 +63,7 @@ private:
|
|||
int m_savedAnimNo,m_savedAnimFrame;
|
||||
int m_chopFrame;
|
||||
int m_chopping;
|
||||
int m_timer;
|
||||
|
||||
int m_savedCSX,m_savedCSY,m_savedCSW,m_savedCSH;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue