aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.lua31
-rw-r--r--panel.lua11
-rw-r--r--startmenu.lua2
-rw-r--r--window.lua74
4 files changed, 111 insertions, 7 deletions
diff --git a/main.lua b/main.lua
index ac42ee5..4f57d2c 100644
--- a/main.lua
+++ b/main.lua
@@ -2,6 +2,7 @@ function love.load()
require "window"
require "panel"
require "startmenu"
+ love.graphics.setDefaultFilter("nearest", "nearest")
sys = {}
sys.width = love.graphics.getWidth()
sys.height = love.graphics.getHeight()
@@ -26,19 +27,25 @@ function love.load()
panel.s.width = 65
panel.s.height = 20
panel.s.activate = false
- love.graphics.setNewFont("fonts/pressstart.ttf", 12)
+ love.graphics.setNewFont()
+ pressstart = love.graphics.newFont("fonts/pressstart.ttf", 12)
+ pressstart:setFilter("nearest", "nearest")
+ love.graphics.setFont(pressstart)
test = false
win = {}
win[1] = {}
win[1].x = 100
win[1].y = 100
- win[1].w = 300
- win[1].h = 300
+ win[1].w = 250
+ win[1].h = 400
win[1].px = win[1].x
win[1].py = win[1].y
win[1].ex = false
win[1].cvs = love.graphics.newCanvas(win[1].w, win[1].h)
win[1].fd = false
+ win[1].s = 1
+ win[1].min = false
+ win[1].miny = 0
end
function love.update(dt)
sys.mouse.x = love.mouse.getX()
@@ -53,6 +60,13 @@ function love.update(dt)
end
end
end
+ if love.keyboard.isDown("c") == true and win[1].ex == true then
+ win[1].ex = false
+ win[1].s = 0.2
+ end
+ if love.keyboard.isDown("u") == true and win[1].min == true then
+ win[1].min = false
+ end
end
function love.mousepressed(x, y, button)
sys.mouse.p.x = x
@@ -63,9 +77,12 @@ function love.mousereleased(x, y, button)
sys.mouse.p.p = false
end
function love.draw()
- drawStart()
- drawWindow(1, win[1].x, win[1].y, win[1].w, win[1].h, "Chat")
- if test == true then
- love.graphics.print("IT WORKS " .. sys.mouse.p.x, 100, 100)
+ if win[1].ex == true and win[1].s == 0 then
+ elseif win[1].ex == false or win[1].s ~= 0 then
+ drawWindow(1, win[1].x, win[1].y, win[1].w, win[1].h, "Chat")
end
+ drawStart()
+ --if test == true then
+ -- love.graphics.print("IT WORKS " .. sys.mouse.p.x, 100, 100)
+ --end
end
diff --git a/panel.lua b/panel.lua
new file mode 100644
index 0000000..9a113ca
--- /dev/null
+++ b/panel.lua
@@ -0,0 +1,11 @@
+function drawStart()
+ love.graphics.setColor(192, 192, 192)
+ love.graphics.rectangle("fill", panel.x, panel.y, panel.width, panel.height)
+ love.graphics.setColor(220, 220, 220)
+ love.graphics.setLineWidth(2)
+ love.graphics.line(panel.x, panel.y, panel.width, panel.y)
+ love.graphics.setColor(150, 150, 150)
+ love.graphics.rectangle("line", panel.s.x, panel.s.y, panel.s.width, panel.s.height)
+ love.graphics.setColor(70,70,70)
+ love.graphics.print("START", panel.s.x+4, panel.s.y+7)
+end
diff --git a/startmenu.lua b/startmenu.lua
new file mode 100644
index 0000000..9811439
--- /dev/null
+++ b/startmenu.lua
@@ -0,0 +1,2 @@
+function drawMenu()
+end
diff --git a/window.lua b/window.lua
new file mode 100644
index 0000000..9bf815e
--- /dev/null
+++ b/window.lua
@@ -0,0 +1,74 @@
+function drawWindow(id, x, y, w, h, t)
+ love.graphics.setCanvas(win[1].cvs)
+ love.graphics.setColor(192, 192, 192)
+ love.graphics.rectangle("fill", 0, 0, w, h) --Box
+ love.graphics.setLineWidth(4)
+ love.graphics.setColor(220, 220, 220)
+ love.graphics.line(0, y+h, 0, 0, 0+w, 0) --BoxLight
+ love.graphics.setColor(150,150,150)
+ love.graphics.line(0, 0+h, 0+w, 0+h, 0+w, 0) --BoxShadow
+ love.graphics.setColor(0,0,120)
+ love.graphics.rectangle("fill", 0+3, 0+3, w-7, 20) --Blue Bar
+ love.graphics.setColor(192, 192, 192)
+ love.graphics.rectangle("fill", 0+w-22, 0+5, 16, 16) --X Button
+ love.graphics.setColor(70,70,70)
+ love.graphics.print("X", 0+w-19, 0+10)
+ love.graphics.setColor(192, 192, 192)
+ love.graphics.rectangle("fill", 0+w-40, 0+5, 16, 16) --Minimize Button
+ love.graphics.setColor(70,70,70)
+ love.graphics.setLineWidth(3)
+ love.graphics.line(0+w-37, 0+13, 0+w-37+10, 0+13)
+ love.graphics.setColor(220, 220, 220)
+ love.graphics.print(t, 0+6, 0+9) --Title
+ love.graphics.setCanvas()
+ if sys.mouse.p.p == true and sys.mouse.p.x >= x+2 and sys.mouse.p.x <= (x+2)+(w-44) then
+ if sys.mouse.p.y >= y+2 and sys.mouse.p.y <= y+22 then
+ sys.mouse.drag = true
+ test = true
+ end
+ end
+ if sys.mouse.p.p == false then
+ sys.mouse.drag = false
+ win[id].px = win[id].x
+ win[id].py = win[id].y
+ end
+ if sys.mouse.drag == true and win[id].min == false and win[id].ex == false then
+ win[id].x = win[id].px + (sys.mouse.x - sys.mouse.p.x)
+ win[id].y = win[id].py + (sys.mouse.y - sys.mouse.p.y)
+ end
+ if sys.mouse.p.p == true and sys.mouse.p.x >= x+w-22 and sys.mouse.p.x <= (x+w-22)+16 then
+ if sys.mouse.drag == false and sys.mouse.p.y >= y+5 and sys.mouse.p.y <= (y+5)+16 then
+ win[id].ex = true
+ end
+ end
+ if win[id].ex == true and win[id].s ~= 0 then
+ win[id].s = win[id].s - 0.2
+ elseif win[id].ex == false and win[id].s ~= 0 then
+ win[id].s = win[id].s + 0.2
+ end
+ if win[id].s <= 0 then
+ win[id].s = 0
+ elseif win[id].s >= 1 then
+ win[id].s = 1
+ end
+ if win[id].min == false and sys.mouse.p.p == true and sys.mouse.p.x >= x+w-40 and sys.mouse.p.x <= (x+w-40)+16 then
+ if sys.mouse.drag == false and sys.mouse.p.y >= y+5 and sys.mouse.p.y <= (y+5)+16 then
+ win[id].min = true
+ end
+ end
+ if win[id].min == true and win[id].miny < 800 then
+ win[id].y = win[id].y + 100
+ win[id].miny = win[id].miny + 100
+ end
+ if win[id].miny > 800 then
+ win[id].miny = 800
+ end
+ if win[id].min == false and win[id].miny > 0 then
+ win[id].y = win[id].y - 100
+ win[id].miny = win[id].miny - 100
+ end
+ if win[id].miny < 0 then
+ win[id].miny = 0
+ end
+ love.graphics.draw(win[id].cvs, win[id].x, win[id].y, 0, win[id].s)
+end