CVorticonElite.h 859 Bytes
Newer Older
Gerhard Stein's avatar
Gerhard Stein committed
1 2 3 4 5 6 7 8 9 10
/*
 * CVorticonElite.h
 *
 *  Created on: 05.07.2010
 *      Author: gerstrong
 */

#ifndef CVORTICONELITE_H_
#define CVORTICONELITE_H_

Gerhard Stein's avatar
Gerhard Stein committed
11 12 13
#include "CVorticon.h"
#include "../../../common/CPlayer.h"
#include <vector>
14

15 16
// the "Vorticon Elite" enemies in ep2
enum vortelite_actions{
Gerhard Stein's avatar
Gerhard Stein committed
17
	VORTELITE_WALK, VORTELITE_CHARGE, VORTELITE_JUMP,
18
	VORTELITE_ABOUTTOFIRE, VORTELITE_FIRED,
Gerhard Stein's avatar
Gerhard Stein committed
19
	VORTELITE_DYING
20 21
};

Gerhard Stein's avatar
Gerhard Stein committed
22
class CVorticonElite : public CVorticon
23 24
{
public:
25
	CVorticonElite( CMap *p_map, Uint32 x, Uint32 y );
Gerhard Stein's avatar
Gerhard Stein committed
26
	bool isNearby(CVorticonSpriteObject &theObject);
Gerhard Stein's avatar
Gerhard Stein committed
27 28
	void process();
	void initiatejump();
29 30
	void getShotByRay(object_t &obj_type);

31
private:
32 33 34 35 36 37 38
	vortelite_actions state;

	unsigned char timer,timer2;
	unsigned int animtimer;
	unsigned char frame;
	unsigned char movedir;
	unsigned int timesincefire;
Gerhard Stein's avatar
Gerhard Stein committed
39
	int m_speed;
40 41

	int dist_traveled;
42
};
Gerhard Stein's avatar
Gerhard Stein committed
43 44

#endif /* CVORTICONELITE_H_ */