SBSPSS/source/enemy/ndogfish.h

61 lines
1.4 KiB
C
Raw Normal View History

2001-04-20 21:31:02 +02:00
/*=========================================================================
ndogfish.h
Author: CRB
Created:
Project: Spongebob
Purpose:
Copyright (c) 2000 Climax Development Ltd
===========================================================================*/
#ifndef __ENEMY_NDOGFISH_H__
#define __ENEMY_NDOGFISH_H__
2001-06-18 23:18:12 +02:00
#include "fx\fx.h"
#include "fx\fxlaser.h"
2001-06-27 20:28:21 +02:00
#include "fx\fxnrgbar.h"
2001-06-18 23:18:12 +02:00
2001-04-20 21:31:02 +02:00
class CNpcIronDogfishEnemy : public CNpcEnemy
{
public:
virtual void postInit();
2001-06-16 19:45:30 +02:00
void render();
virtual void shutdown();
2001-04-20 21:31:02 +02:00
protected:
2001-06-06 15:27:46 +02:00
virtual void processTimer( int _frames );
2001-04-20 21:31:02 +02:00
virtual bool processSensor();
virtual void processClose( int _frames );
virtual void processMovement( int _frames );
void processStandardIronDogfishAttack( int _frames );
2001-05-04 00:49:57 +02:00
void processWalkToUser( int _frames, int speed );
2001-06-18 23:18:12 +02:00
virtual void processCollision();
2001-05-04 20:54:27 +02:00
virtual void processAttackCollision();
2001-06-06 15:27:46 +02:00
virtual void hasBeenSteamed( DVECTOR &steamPos );
2001-06-28 22:29:14 +02:00
virtual void processShotDeathEnd( int _frames );
2001-06-16 19:34:46 +02:00
virtual void collidedWith(CThing *_thisThing);
2001-04-20 21:31:02 +02:00
enum NPC_IRON_DOGFISH_STATE
{
IRON_DOGFISH_THUMP_1 = 0,
IRON_DOGFISH_LASER_EYE_1 = 1,
2001-06-18 23:18:12 +02:00
IRON_DOGFISH_LASER_EYE_1_WAIT,
2001-04-20 21:31:02 +02:00
IRON_DOGFISH_THUMP_2,
IRON_DOGFISH_ROLL,
IRON_DOGFISH_LASER_EYE_2,
2001-06-18 23:18:12 +02:00
IRON_DOGFISH_LASER_EYE_2_WAIT,
2001-04-20 21:31:02 +02:00
};
2001-06-06 15:27:46 +02:00
s32 m_steamTimer;
2001-06-16 19:34:46 +02:00
s32 m_vulnerableTimer;
2001-06-18 23:18:12 +02:00
s32 m_laserTimer;
2001-06-16 19:45:30 +02:00
bool m_meterOn;
2001-06-18 23:18:12 +02:00
CFXLaser *m_effect;
2001-06-27 20:28:21 +02:00
CFXNRGBar *m_energyBar;
2001-04-20 21:31:02 +02:00
};
#endif