Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
9566 turbocat 1
#ifndef HEADS_H
2
#define HEADS_H
3
 
4
#include "../collision.h"
5
 
6
//Goblin/medusa/dragon head statues
7
typedef struct {
8
	int id, type; //0 = Rhyno head | 1 = Goblin | 2 = Dragon | 3 = Demon | 4 = Fireball | 5 = Air Jar
9
	int state, timer;
10
	double x, y;
11
	int dir;
12
	int hp, invincible;
13
	int cooloff;
14
	int counter;
15
 
16
	//Mask mask;
17
} Head;
18
 
19
void createHead(int type, int x, int y, int dir, int offset, int cooloff);
20
 
21
//Bullet from Rhyno statues
22
typedef struct {
23
	int id;
24
	double x, y;
25
	int hsp;
26
	double imageIndex;
27
 
28
	//Mask mask;
29
} Bullet;
30
 
31
void createBullet(int x, int y, int dir, int minid); //Minid is the spawner's id
32
 
33
//Fireball
34
typedef struct {
35
	int id;
36
	double x, y;
37
	int angle;
38
	int spd;
39
	double imageIndex;
40
 
41
	Mask mask;
42
} Fireball;
43
 
44
void createFireball(int x, int y, int angle, int minid);
45
 
46
//Medusa lazer
47
typedef struct {
48
	int id;
49
	double x, y;
50
	int dir;
51
	double imageIndex;
52
 
53
	Mask mask;
54
} Laser;
55
 
56
void createLaser(int x, int y, int dir);
57
 
58
//Dragon flame
59
typedef struct {
60
	int id;
61
	int x, y;
62
	int dir;
63
	int timer;
64
	double imageIndex;
65
} Flame;
66
 
67
void createFlame(int x, int y, int dir);
68
 
69
//Demon Boulder
70
typedef struct {
71
	int id;
72
	double x, y;
73
	double vsp;
74
	int dir;
75
	double imageIndex;
76
} Rock;
77
 
78
void createRock(int x, int y, int dir);
79
 
80
//Air
81
typedef struct {
82
	int id;
83
	double x, y;
84
	double imageIndex;
85
} Air;
86
 
87
void createAir(int x, int y);
88
 
89
#endif