1fire = class:new()
2
3function fire:init(x, y)
4	--PHYSICS STUFF
5	if objects["bowser"][1] then --make bowser fire this
6		self.y = objects["bowser"][1].y+0.25
7		self.x = objects["bowser"][1].x-0.750
8
9		--get goal Y
10		self.targety = objects["bowser"][1].starty-math.random(3)+2/16
11		self.source = "bowser"
12	else
13		self.y = y-1+1/16
14		self.targety = self.y
15		self.x = x+6/16
16		self.source = "none"
17	end
18
19	self.speedy = 0
20	self.speedx = -firespeed
21
22	self.width = 24/16
23	self.height = 8/16
24	self.active = true
25	self.static = true
26	self.autodelete = true
27	self.gravity = 0
28	self.category = 17
29
30	self.mask = {	true,
31					true, false, true, true, true,
32					true, true, true, true, true,
33					true, true, true, true, true,
34					true, true, true, true, true,
35					true, true, true, true, true,
36					true, true, true, true, true}
37
38	--IMAGE STUFF
39	self.drawable = true
40	self.graphic = fireimg
41	self.quad = firequad[1]
42	self.offsetX = 0
43	self.offsetY = 8
44	self.quadcenterX = 0
45	self.quadcenterY = 0
46
47	self.rotation = 0 --for portals
48	self.timer = 0
49	self.quadi = 1
50
51	playsound(firesound)
52end
53
54function fire:update(dt)
55	--animate
56	self.timer = self.timer + dt
57	while self.timer > fireanimationdelay do
58		if self.quadi == 2 then
59			self.quadi = 1
60		else
61			self.quadi = 2
62		end
63
64		self.quad = firequad[self.quadi]
65		self.timer = self.timer - fireanimationdelay
66	end
67
68	self.x = self.x + self.speedx*dt
69
70	if self.y > self.targety then
71		self.y = self.y - fireverspeed*dt
72		if self.y < self.targety then
73			self.y = self.targety
74		end
75	elseif self.y < self.targety then
76		self.y = self.y + fireverspeed*dt
77		if self.y > self.targety then
78			self.y = self.targety
79		end
80	end
81end
82
83function fire:leftcollide(a, b)
84	return false
85end
86
87function fire:rightcollide(a, b)
88	return false
89end
90
91function fire:floorcollide(a, b)
92	return false
93end
94
95function fire:ceilcollide(a, b)
96	return false
97end