Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- spikeydispenser = class:new()
- function spikeydispenser:init(x, y, r)
- --PHYSICS STUFF
- self.cox = x
- self.coy = y
- self.x = x-1
- self.y = y-1
- self.speedy = 0
- self.speedx = 0
- self.width = 2
- self.height = 2
- self.static = true
- self.active = true
- self.category = 7
- self.mask = {true, false, false, false, false, false, false, false, true}
- self.r = r
- self.timer = spikeydispensertime
- self.inputactive = false
- self.spikeyexists = false
- self.spikey = nil
- end
- function spikeydispenser:input(t)
- if t == "on" or t == "toggle" then
- if self.spikeyexists then
- self.spikeyexists = false
- self:removespikey()
- end
- if self.timer == spikeydispensertime then
- self.timer = 0
- end
- end
- end
- function spikeydispenser:link()
- self.outtable = {}
- if #self.r > 2 then
- for j, w in pairs(outputs) do
- for i, v in pairs(objects[w]) do
- if tonumber(self.r[4]) == v.cox and tonumber(self.r[5]) == v.coy then
- v:addoutput(self)
- if entityquads[map[v.cox][v.coy][2]].t == "spikey" then
- self.spikeyexists = true
- end
- end
- end
- end
- end
- end
- function spikeydispenser:update(dt)
- if self.timer < spikeydispensertime then
- self.timer = self.timer + dt
- if self.timer > 0.1 and self.timer <= 0.4 and self.active == true then
- self.active = false
- elseif self.timer > 0.4 and self.timer <= 0.6 and self.active == false then
- self.active = true
- elseif self.timer > 0.6 and self.spikeyexists == false then
- local temp = goomba:new(self.cox, self.coy, "spikeyfall")
- table.insert(objects["goomba"], temp)
- self.spikey = temp
- self.spikeyexists = true
- elseif self.timer > 1 then
- self.timer = 1
- end
- end
- return false
- end
- function spikeydispenser:draw()
- love.graphics.draw(spikeydispenserimg, math.floor((self.cox-xscroll-1)*16*scale), (self.coy-1.5)*16*scale, 0, scale, scale, 0, 0)
- end
- function spikeydispenser:removespikey()
- if self.spikey then
- self.spikey:emancipate()
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement