1geldispenser = class:new() 2 3function geldispenser:init(x, y, id, dir) 4 --PHYSICS STUFF 5 self.cox = x 6 self.coy = y 7 self.x = x-1 8 self.y = y-1 9 self.speedy = 0 10 self.speedx = 0 11 self.width = 2 12 self.height = 2 13 self.static = true 14 self.active = true 15 self.category = 7 16 self.mask = {true, false, false, false, false, false} 17 18 self.dir = dir 19 self.id = id 20 self.timer = 0 21end 22 23function geldispenser:update(dt) 24 self.timer = self.timer + dt 25 26 while self.timer > geldispensespeed do 27 self.timer = self.timer - geldispensespeed 28 if self.dir == "down" then 29 table.insert(objects["gel"], gel:new(self.x+1.5 + (math.random()-0.5)*1, self.y+12/16, self.id)) 30 objects["gel"][#objects["gel"]].speedy = 10 31 elseif self.dir == "right" then 32 table.insert(objects["gel"], gel:new(self.x+14/16, self.y+1.5 + (math.random()-0.5)*1, self.id)) 33 objects["gel"][#objects["gel"]].speedx = 20 34 objects["gel"][#objects["gel"]].speedy = -4 35 elseif self.dir == "left" then 36 table.insert(objects["gel"], gel:new(self.x+30/16, self.y+1.5 + (math.random()-0.5)*1, self.id)) 37 objects["gel"][#objects["gel"]].speedx = -20 38 objects["gel"][#objects["gel"]].speedy = -4 39 end 40 end 41 42 return false 43end 44 45function geldispenser:draw() 46 if self.dir == "down" then 47 love.graphics.draw(geldispenserimg, math.floor((self.cox-xscroll-1)*16*scale), (self.coy-1.5)*16*scale, 0, scale, scale, 0, 0) 48 elseif self.dir == "right" then 49 love.graphics.draw(geldispenserimg, math.floor((self.cox-xscroll-1)*16*scale), (self.coy+.5)*16*scale, math.pi*1.5, scale, scale, 0, 0) 50 elseif self.dir == "left" then 51 love.graphics.draw(geldispenserimg, math.floor((self.cox-xscroll+1)*16*scale), (self.coy-1.5)*16*scale, math.pi*0.5, scale, scale, 0, 0) 52 end 53end