aboutsummaryrefslogtreecommitdiff
path: root/src/enemies/hydra.h
blob: 40cc28f2320a26f962e9c7ce691a5ee0c37ef179 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#ifndef HYDRA_H
#define HYDRA_H

typedef struct {
	int id;
	int hp, blink;
	double x, y;
	double hsp, vsp;
	double imageIndex;
	int state, timer;
	int patternCounter;
	char onground;
	char noheads;
	int headid[4];
} Hydra;

void createHydra(int x);

typedef struct {
	int id;
	int hp, blink;
	int dir;
	int position; //0 = lower 1 = higher
	double imageIndex;
	double neckRot;
	int state, timer, counter;
	int bodyid;
	double bodyposX[7];
	double bodyposY[7];
} Hydrahead;

int createHydrahead(int dir, int position, int bodyid);

typedef struct {
	int id;
	double x, y;
	double hsp, vsp;
	char inwall;
	char bounce;
	double imageIndex;
} Hydragoop;

void createHydragoop(int x, int y, int hsp, int vsp);

typedef struct {
	int id;
	double x, y;
	double vsp;
	char bounce;
	double imageIndex;
} Hydrarock;

void createHydrarock();

typedef struct {
	int id;
	int timer;
	double x, y;
	double angle;
	double imageIndex;
} Hydrashock;

void createHydrashock(int x, int y);

#endif