summaryrefslogtreecommitdiffhomepage
path: root/button.lua
diff options
context:
space:
mode:
authorAki <nthirtyone@gmail.com>2017-04-09 22:07:04 +0200
committerAki <nthirtyone@gmail.com>2017-04-09 22:07:04 +0200
commit0dd01913fe0eefc7ba4bc0797877f40fdedf9315 (patch)
tree8d270eb07f589d2487b3ce66d4865e5a4718042a /button.lua
parent55b0cf1a22e4a7e41fe00aa693445d6c4bd0652d (diff)
parenta03c1125f10fbbad253a0efc4727072fcbd55345 (diff)
downloadroflnauts-0dd01913fe0eefc7ba4bc0797877f40fdedf9315.zip
roflnauts-0dd01913fe0eefc7ba4bc0797877f40fdedf9315.tar.gz
roflnauts-0dd01913fe0eefc7ba4bc0797877f40fdedf9315.tar.bz2
Merge branch 'com'
Diffstat (limited to 'button.lua')
-rw-r--r--button.lua78
1 files changed, 0 insertions, 78 deletions
diff --git a/button.lua b/button.lua
deleted file mode 100644
index c5681b2..0000000
--- a/button.lua
+++ /dev/null
@@ -1,78 +0,0 @@
--- `Button`
--- Button used in `Menu`
-
-Button = {
- text = "",
- focused = false,
- x = 0,
- y = 0,
- sprite,
- quads,
- delay = 2,
- parent,
-}
-
-function Button:new(parent)
- local o = {}
- setmetatable(o, self)
- self.__index = self
- o.parent = parent
- o.sprite, o.quads = parent:getSheet()
- return o
-end
-function Button:setText(text)
- self.text = text or ""
- return self
-end
-function Button:setPosition(x, y)
- self.x = x or 0
- self.y = y or 0
- return self
-end
-function Button:getPosition() return self.x,self.y end
-function Button:focus(next)
- self.focused = true
- return true
-end
-function Button:blur()
- self.focused = false
-end
-function Button:active() end
-function Button:isEnabled() return true end
-function Button:set(name, func)
- if type(name) == "string" and type(func) == "function" then
- self[name] = func
- end
- return self
-end
-function Button:draw(scale)
- local x,y = self:getPosition()
- local quad = self.quads
- local sprite = self.sprite
- if self:isEnabled() then
- love.graphics.setColor(255, 255, 255, 255)
- else
- love.graphics.setColor(140, 140, 140, 255)
- end
- love.graphics.draw(sprite, quad.button.normal, x*scale, y*scale, 0, scale, scale)
- if self.focused then
- love.graphics.draw(sprite, quad.arrow_l, (x+54+math.floor(self.delay))*scale, (y+5)*scale, 0, scale, scale)
- love.graphics.draw(sprite, quad.arrow_r, (x-2-math.floor(self.delay))*scale, (y+5)*scale, 0, scale, scale)
- end
- love.graphics.setFont(Font)
- love.graphics.printf(self.text, (x+2)*scale, (y+4)*scale, 54, "center", 0, scale, scale)
-end
-function Button:update(dt)
- self.delay = self.delay + dt
- if self.delay > Button.delay then -- Button.delay is initial
- self.delay = self.delay - Button.delay
- end
-end
-function Button:controlpressed(set, action, key)
- if action == "attack" and self.focused and self:isEnabled() then
- self:active()
- end
-end
-function Button:controlreleased(set, action, key) end
-
-return Button \ No newline at end of file