From 768eed87872c82daf77d4d591560d87525438760 Mon Sep 17 00:00:00 2001 From: Mango Date: Sat, 23 Aug 2025 19:10:20 -0700 Subject: [PATCH] first commit --- button.lua | 31 ++++++++++++++++++++++++ classic.lua | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++ conf.lua | 10 ++++++++ icon.png | Bin 0 -> 6226 bytes main.lua | 60 ++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 169 insertions(+) create mode 100644 button.lua create mode 100644 classic.lua create mode 100644 conf.lua create mode 100644 icon.png create mode 100644 main.lua diff --git a/button.lua b/button.lua new file mode 100644 index 0000000..ed22ed3 --- /dev/null +++ b/button.lua @@ -0,0 +1,31 @@ +local Object = require "classic" +local Button = Object:extend() + +function Button:new(x, y, r, b) + self.x = x + self.y = y + self.r = r + self.b = b + self.press = false +end + +function Button:update(dt) + if love.keyboard.isDown(self.b) then + self.press = true + else + self.press = false + end +end + +function Button:draw() + local mode + if self.press then + mode = "fill" + else + mode = "line" + end + + love.graphics.circle(mode, self.x + self.r, self.y + self.r, self.r) +end + +return Button \ No newline at end of file diff --git a/classic.lua b/classic.lua new file mode 100644 index 0000000..cbd6f81 --- /dev/null +++ b/classic.lua @@ -0,0 +1,68 @@ +-- +-- classic +-- +-- Copyright (c) 2014, rxi +-- +-- This module is free software; you can redistribute it and/or modify it under +-- the terms of the MIT license. See LICENSE for details. +-- + + +local Object = {} +Object.__index = Object + + +function Object:new() +end + + +function Object:extend() + local cls = {} + for k, v in pairs(self) do + if k:find("__") == 1 then + cls[k] = v + end + end + cls.__index = cls + cls.super = self + setmetatable(cls, self) + return cls +end + + +function Object:implement(...) + for _, cls in pairs({...}) do + for k, v in pairs(cls) do + if self[k] == nil and type(v) == "function" then + self[k] = v + end + end + end +end + + +function Object:is(T) + local mt = getmetatable(self) + while mt do + if mt == T then + return true + end + mt = getmetatable(mt) + end + return false +end + + +function Object:__tostring() + return "Object" +end + + +function Object:__call(...) + local obj = setmetatable({}, self) + obj:new(...) + return obj +end + + +return Object diff --git a/conf.lua b/conf.lua new file mode 100644 index 0000000..d436c39 --- /dev/null +++ b/conf.lua @@ -0,0 +1,10 @@ +function love.conf(t) + t.window.width = 373 + t.window.height = 212 + t.window.borderless = true + t.window.title = "input display" + t.window.icon = "icon.png" + + t.modules.physics = false + +end \ No newline at end of file diff --git a/icon.png b/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..cb9f8ce02fb1afa8c6a1b60137c792abb2fc6b2b GIT binary patch literal 6226 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 z