SBSPSS/source/enemy/nfdutch.h

60 lines
1.3 KiB
C
Raw Normal View History

2001-04-20 21:14:57 +02:00
/*=========================================================================
nfdutch.cpp
Author: CRB
Created:
Project: Spongebob
Purpose:
Copyright (c) 2000 Climax Development Ltd
===========================================================================*/
#ifndef __ENEMY_NFDUTCH_H__
#define __ENEMY_NFDUTCH_H__
2001-06-30 17:39:43 +02:00
#ifndef __ENEMY_NBOSS_H__
#include "enemy\nboss.h"
#endif
2001-06-27 20:28:21 +02:00
2001-06-30 17:39:43 +02:00
class CNpcFlyingDutchmanEnemy : public CNpcBossEnemy
2001-04-20 21:14:57 +02:00
{
public:
2001-07-04 16:26:36 +02:00
void think( int _frames );
2001-07-04 00:17:20 +02:00
void postInit();
2001-06-16 18:16:57 +02:00
void render();
2001-08-03 21:10:05 +02:00
void renderOnMapScreen( DVECTOR drawPos );
2001-07-04 00:17:20 +02:00
void shutdown();
2001-07-04 16:26:36 +02:00
u8 hasBeenAttacked();
2001-04-20 21:14:57 +02:00
protected:
2001-07-04 16:26:36 +02:00
void processClose( int _frames );
void processMovement( int _frames );
void processShotRecoil( int _frames );
void processShotDeathEnd( int _frames );
void collidedWith(CThing *_thisThing);
2001-04-20 21:14:57 +02:00
enum NPC_FLYING_DUTCHMAN_STATE
{
2001-07-04 21:39:13 +02:00
//FLYING_DUTCHMAN_ATTACK_PLAYER_1 = 0,
//FLYING_DUTCHMAN_ATTACK_PLAYER_2 = 1,
//FLYING_DUTCHMAN_ATTACK_PLAYER_3,
FLYING_DUTCHMAN_GOTO_PLAYER = 0,
FLYING_DUTCHMAN_ATTACK_PLAYER = 1,
2001-07-05 16:07:27 +02:00
FLYING_DUTCHMAN_CHARGE_PLAYER_START,
FLYING_DUTCHMAN_CHARGE_PLAYER,
2001-07-05 23:50:02 +02:00
FLYING_DUTCHMAN_LEVEL_SHAKE,
FLYING_DUTCHMAN_LEVEL_SHAKE_WAIT,
2001-07-04 21:39:13 +02:00
FLYING_DUTCHMAN_RETURN,
2001-04-20 21:14:57 +02:00
};
2001-05-04 00:15:13 +02:00
s32 m_minY, m_maxY;
2001-06-16 18:16:57 +02:00
u8 m_inRange;
u8 m_fireCount;
2001-07-02 22:34:37 +02:00
u8 m_oldState;
2001-07-02 23:25:13 +02:00
s16 m_fadeVal;
u8 m_fadeDown;
2001-04-20 21:14:57 +02:00
};
#endif