-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfireball.h
94 lines (83 loc) · 1.39 KB
/
fireball.h
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#ifndef FIREBALL_H
#define FIREBALL_H
#include <QRect>
#include <QImage>
class Fire
{
private:
QImage image;
QRect fire;
bool destroyed;
int firex,firey,py, px,dx,dy,slope;
public:
Fire(int x, int y, int tempx, int tempy)
{
image.load("image/fireball.png");
fire=image.rect();
px=tempx;
py =tempy;
firex=x;
firey=y;
dx =px-firex;
dy = py-firey;
if(abs(dy)>abs(dx) && abs(dx)>0)
slope =abs(dy)/abs(dx);
else if(abs(dx)>abs(dy) &&abs(dy)>0)
slope =abs(dx)/abs(dy);
fire.moveTo(x,y);
}
void move(int bx, int by)
{
if(bx <px &&by<py)
{
for (int g =0; g <20 ; g++)
fire.moveTo(++bx,++by);
}
else if(bx==px &&by<py)
{
fire.moveTo(bx,++by);}
else if(bx>px&&by<py)
{
fire.moveTo(--bx,++by);}
else if(bx<px &&by==py)
{
fire.moveTo(++bx,by);}
else if(bx<px &&by>py)
{
fire.moveTo(++bx,--by);}
else if(bx==px&&by>py)
{
fire.moveTo(bx,--by);}
else if(bx>px && by>px)
{
fire.moveTo(--bx,--by);}
else if(bx>px&&by==py)
{
fire.moveTo(--bx,by);}
}
int getplayerx()
{
return px;
}
int getplayery()
{
return py;
}
bool destorybanana()
{
return destroyed;
}
void setdestoryed(bool dest)
{
destroyed =dest;
}
QRect getRect()
{
return fire;
}
QImage & getImage()
{
return image;
}
};
#endif