full color customization added
This commit is contained in:
parent
8ec984afb1
commit
64f3bd5616
3 changed files with 75 additions and 39 deletions
13
button.lua
13
button.lua
|
@ -1,13 +1,15 @@
|
|||
local Object = require "classic"
|
||||
local Button = Object:extend()
|
||||
|
||||
function Button:new(x, y, r, b, c)
|
||||
function Button:new(x, y, r, b, c1, c2, c3)
|
||||
self.x = x
|
||||
self.y = y
|
||||
self.r = r
|
||||
self.b = b
|
||||
self.press = false
|
||||
self.c = c
|
||||
self.c1 = c1
|
||||
self.c2 = c2
|
||||
self.c3 = c3
|
||||
end
|
||||
|
||||
function Button:update(dt)
|
||||
|
@ -28,13 +30,12 @@ end
|
|||
|
||||
function Button:draw()
|
||||
if self.press then
|
||||
love.graphics.setColor(self.c)
|
||||
love.graphics.setColor(self.c1)
|
||||
else
|
||||
love.graphics.setColor(75/255, 75/255, 75/255)
|
||||
love.graphics.setColor(self.c2)
|
||||
end
|
||||
|
||||
love.graphics.circle("fill", self.x + self.r, self.y + self.r, self.r+1)
|
||||
love.graphics.setColor(1,1,1)
|
||||
love.graphics.setColor(self.c3)
|
||||
love.graphics.circle("line", self.x + self.r, self.y+self.r, self.r+1)
|
||||
end
|
||||
|
||||
|
|
81
main.lua
81
main.lua
|
@ -9,33 +9,49 @@ function love.load()
|
|||
MENU = true
|
||||
col1 = {255/255, 179/255, 102/255}
|
||||
col2 = {150/255, 109/255, 209/255}
|
||||
col3 = {75/255, 75/255, 75/255}
|
||||
col4 = {1, 1, 1}
|
||||
|
||||
--movement buttons
|
||||
movement = {
|
||||
Button(37.5, 60, 43.5, "dpleft", col1),
|
||||
Button(135, 60, 43.5, "dpdown", col1),
|
||||
Button(220.5, 106.5, 43.5, "dpright", col1),
|
||||
Button(252, 270, 54, "dpup", col1),
|
||||
Button(37.5, 60, 43.5, "dpleft", col1, col3, col4),
|
||||
Button(135, 60, 43.5, "dpdown", col1, col3, col4),
|
||||
Button(220.5, 106.5, 43.5, "dpright", col1, col3, col4),
|
||||
Button(252, 270, 54, "dpup", col1, col3, col4),
|
||||
}
|
||||
--attack buttons
|
||||
attack = {
|
||||
Button(310.5, 64.5, 43.5, "x", col2),
|
||||
Button(398.5, 25.5, 43.5, "y", col2),
|
||||
Button(495, 33, 43.5, "rightshoulder", col2),
|
||||
Button(592.5, 57, 43.5, "leftshoulder", col2),
|
||||
Button(303, 165, 43.5, "a", col2),
|
||||
Button(394.5, 127.5, 43.5, "b", col2),
|
||||
Button(495, 132, 43.5, "triggerright", col2),
|
||||
Button(592.5, 157.5, 43.5, "triggerleft", col2),
|
||||
Button(310.5, 64.5, 43.5, "x", col2, col3, col4),
|
||||
Button(398.5, 25.5, 43.5, "y", col2, col3, col4),
|
||||
Button(495, 33, 43.5, "rightshoulder", col2, col3, col4),
|
||||
Button(592.5, 57, 43.5, "leftshoulder", col2, col3, col4),
|
||||
Button(303, 165, 43.5, "a", col2, col3, col4),
|
||||
Button(394.5, 127.5, 43.5, "b", col2, col3, col4),
|
||||
Button(495, 132, 43.5, "triggerright", col2, col3, col4),
|
||||
Button(592.5, 157.5, 43.5, "triggerleft", col2, col3, col4),
|
||||
}
|
||||
--color sliders
|
||||
slider = {
|
||||
Slider(48, 192, 256, 6, 255),
|
||||
--movement
|
||||
Slider(48, 154, 256, 6, 255),
|
||||
Slider(48, 186, 256, 6, 255),
|
||||
Slider(48, 218, 256, 6, 255),
|
||||
--attack
|
||||
Slider(48, 256, 256, 6, 255),
|
||||
Slider(48, 312, 256, 6, 255),
|
||||
Slider(416, 192, 256, 6, 255),
|
||||
Slider(416, 256, 256, 6, 255),
|
||||
Slider(416, 312, 256, 6, 255)
|
||||
Slider(48, 288, 256, 6, 255),
|
||||
Slider(48, 320, 256, 6, 255),
|
||||
--background
|
||||
Slider(418, 154, 256, 6, 255),
|
||||
Slider(418, 186, 256, 6, 255),
|
||||
Slider(418, 218, 256, 6, 255),
|
||||
--outline
|
||||
Slider(418, 256, 256, 6, 255),
|
||||
Slider(418, 288, 256, 6, 255),
|
||||
Slider(418, 320, 256, 6, 255),
|
||||
--outline
|
||||
Slider(232, 52, 256, 6, 255),
|
||||
Slider(232, 84, 256, 6, 255),
|
||||
Slider(232, 116, 256, 6, 255)
|
||||
}
|
||||
end
|
||||
|
||||
|
@ -50,11 +66,16 @@ function love.keypressed(key)
|
|||
elseif key == "q" then
|
||||
love.event.quit()
|
||||
elseif key == "c" then
|
||||
love.graphics.setBackgroundColor(slider[13].level/255, slider[14].level/255, slider[15].level/255)
|
||||
for i, m in ipairs(movement) do
|
||||
m.c = {slider[1].level/255, slider[2].level/255, slider[3].level/255}
|
||||
m.c1 = {slider[1].level/255, slider[2].level/255, slider[3].level/255}
|
||||
m.c2 = {slider[7].level/255, slider[8].level/255, slider[9].level/255}
|
||||
m.c3 = {slider[10].level/255, slider[11].level/255, slider[12].level/255}
|
||||
end
|
||||
for i, a in ipairs(attack) do
|
||||
a.c = {slider[4].level/255, slider[5].level/255, slider[6].level/255}
|
||||
a.c1 = {slider[4].level/255, slider[5].level/255, slider[6].level/255}
|
||||
a.c2 = {slider[7].level/255, slider[8].level/255, slider[9].level/255}
|
||||
a.c3 = {slider[10].level/255, slider[11].level/255, slider[12].level/255}
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -93,12 +114,21 @@ function love.draw()
|
|||
v:draw()
|
||||
end
|
||||
--rectangles showing the results of slider color
|
||||
love.graphics.rectangle("line", 328, 191, 16, 128)
|
||||
love.graphics.rectangle("line", 376, 191, 16, 128)
|
||||
love.graphics.rectangle("line", 310, 154, 16, 70)
|
||||
love.graphics.rectangle("line", 310, 256, 16, 70)
|
||||
love.graphics.rectangle("line", 680, 154, 16, 70)
|
||||
love.graphics.rectangle("line", 680, 256, 16, 70)
|
||||
love.graphics.rectangle("line", 494, 52, 16, 70)
|
||||
love.graphics.setColor(slider[1].level/255, slider[2].level/255, slider[3].level/255)
|
||||
love.graphics.rectangle("fill", 328, 191, 16, 128)
|
||||
love.graphics.rectangle("fill", 310, 154, 16, 70)
|
||||
love.graphics.setColor(slider[4].level/255, slider[5].level/255, slider[6].level/255)
|
||||
love.graphics.rectangle("fill", 376, 191, 16, 128)
|
||||
love.graphics.rectangle("fill", 310, 256, 16, 70)
|
||||
love.graphics.setColor(slider[7].level/255, slider[8].level/255, slider[9].level/255)
|
||||
love.graphics.rectangle("fill", 680, 154, 16, 70)
|
||||
love.graphics.setColor(slider[10].level/255, slider[11].level/255, slider[12].level/255)
|
||||
love.graphics.rectangle("fill", 680, 256, 16, 70)
|
||||
love.graphics.setColor(slider[13].level/255, slider[14].level/255, slider[15].level/255)
|
||||
love.graphics.rectangle("fill", 494, 52, 16, 70)
|
||||
--text based instrunctions
|
||||
love.graphics.setFont(font, 20)
|
||||
love.graphics.setColor(150/255, 150/255, 150/255)
|
||||
|
@ -106,6 +136,11 @@ function love.draw()
|
|||
love.graphics.print("borderless = b", 0, 16)
|
||||
love.graphics.print("set color = c", 0, 32)
|
||||
love.graphics.print("quit = q", 0, 48)
|
||||
love.graphics.print("direction color", 49, 136)
|
||||
love.graphics.print("button color", 49, 238)
|
||||
love.graphics.print("idle color", 418, 136)
|
||||
love.graphics.print("outline color", 418, 238)
|
||||
love.graphics.print("background color", 232, 34)
|
||||
love.graphics.setColor(255/255, 179/255, 102/255)
|
||||
love.graphics.printf("open/close this menu with spacebar", 0, 385, 720, "center")
|
||||
love.graphics.setColor(60/255, 60/255, 60/255)
|
||||
|
|
|
@ -55,12 +55,12 @@ function Slider:update(dt)
|
|||
end
|
||||
|
||||
function Slider:draw()
|
||||
love.graphics.setColor(1, 1, 1)
|
||||
love.graphics.setColor(200/255, 200/255, 200/255)
|
||||
love.graphics.rectangle("line", self.x, self.y, self.w, self.h)
|
||||
love.graphics.setColor(237/255, 86/255, 83/255)
|
||||
love.graphics.rectangle("fill", self.knobx-(self.knobw/2), self.knoby-(self.knobh/3), self.knobw, self.knobh)
|
||||
love.graphics.setColor(1, 1, 1)
|
||||
love.graphics.print(self.level, self.knobx-4, self.knoby-20)
|
||||
love.graphics.print(self.level, self.x-32, self.y-self.h/2)
|
||||
end
|
||||
|
||||
return Slider
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue