Reorganized code and assets.
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 347 B After Width: | Height: | Size: 347 B |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
2
main.lua
@@ -5,7 +5,7 @@
|
|||||||
local love = require 'love'
|
local love = require 'love'
|
||||||
local game_states = require 'src.states'
|
local game_states = require 'src.states'
|
||||||
local settings = require 'src.utils.settings'
|
local settings = require 'src.utils.settings'
|
||||||
local Fader = require 'src.utils.fader'
|
local Fader = require 'src.graphics.fader'
|
||||||
|
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -3,13 +3,13 @@
|
|||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
local make_class = require 'src.utils.classes'
|
local make_class = require 'src.utils.classes'
|
||||||
|
local Asset = require 'src.utils.asset'
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
-- Class definitions
|
-- Class definitions
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
local Drawable = make_class()
|
local Drawable = make_class(Asset)
|
||||||
|
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
@@ -20,10 +20,6 @@ function Drawable:_init()
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
function Drawable:load()
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function Drawable:update(_)
|
function Drawable:update(_)
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -32,10 +28,6 @@ function Drawable:draw()
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
function Drawable:unload()
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function Drawable:keypressed(_, _ , _)
|
function Drawable:keypressed(_, _ , _)
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
local love = require 'love'
|
local love = require 'love'
|
||||||
local make_class = require 'src.utils.classes'
|
local make_class = require 'src.utils.classes'
|
||||||
local Drawable = require 'src.ui.drawable'
|
local Drawable = require 'src.graphics.drawable'
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
-- Class definitions
|
-- Class definitions
|
||||||
@@ -18,7 +18,7 @@ local Sprite = make_class(Drawable)
|
|||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
function Sprite:_init(sprite_name, x, y)
|
function Sprite:_init(sprite_name, x, y)
|
||||||
self.sprite_name = sprite_name
|
self.sprite_name = string.format('assets/%s', sprite_name)
|
||||||
self.x = (x ~= nil and x) or 0
|
self.x = (x ~= nil and x) or 0
|
||||||
self.y = (y ~= nil and y) or 0
|
self.y = (y ~= nil and y) or 0
|
||||||
end
|
end
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
local make_class = require 'src.utils.classes'
|
local make_class = require 'src.utils.classes'
|
||||||
local Drawable = require 'src.ui.drawable'
|
local Drawable = require 'src.graphics.drawable'
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
-- Class definitions
|
-- Class definitions
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
|
|
||||||
local make_class = require 'src.utils.classes'
|
local make_class = require 'src.utils.classes'
|
||||||
local GameState = require 'src.gstates.gstate'
|
local GameState = require 'src.gstates.gstate'
|
||||||
local Sprite = require 'src.ui.sprite'
|
local Sprite = require 'src.graphics.sprite'
|
||||||
local Fader = require 'src.utils.fader'
|
local Fader = require 'src.graphics.fader'
|
||||||
local SoundEffect = require 'src.utils.sfx'
|
local SoundEffect = require 'src.sound.sfx'
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
-- Class definitions
|
-- Class definitions
|
||||||
|
|||||||
@@ -5,9 +5,10 @@
|
|||||||
local love = require 'love'
|
local love = require 'love'
|
||||||
local make_class = require 'src.utils.classes'
|
local make_class = require 'src.utils.classes'
|
||||||
local GameState = require 'src.gstates.gstate'
|
local GameState = require 'src.gstates.gstate'
|
||||||
local Fader = require 'src.utils.fader'
|
local Fader = require 'src.graphics.fader'
|
||||||
|
local Sprite = require 'src.graphics.sprite'
|
||||||
local Cursor = require 'src.ui.cursor'
|
local Cursor = require 'src.ui.cursor'
|
||||||
local SoundEffect = require 'src.utils.sfx'
|
local SoundEffect = require 'src.sound.sfx'
|
||||||
|
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
@@ -26,6 +27,9 @@ function MainMenu:_init(name, index)
|
|||||||
self.skip = false
|
self.skip = false
|
||||||
self.fade = Fader()
|
self.fade = Fader()
|
||||||
|
|
||||||
|
-- Create sprites and buttons.
|
||||||
|
self.background = Sprite('imgs/cpu.png')
|
||||||
|
|
||||||
-- Create a mouse cursor object at the current mouse position.
|
-- Create a mouse cursor object at the current mouse position.
|
||||||
local mx, my = love.mouse.getPosition()
|
local mx, my = love.mouse.getPosition()
|
||||||
self.cursor = Cursor(mx, my)
|
self.cursor = Cursor(mx, my)
|
||||||
@@ -37,6 +41,7 @@ end
|
|||||||
|
|
||||||
function MainMenu:load()
|
function MainMenu:load()
|
||||||
-- Load sprites.
|
-- Load sprites.
|
||||||
|
self.background:load()
|
||||||
self.cursor:load()
|
self.cursor:load()
|
||||||
|
|
||||||
-- Load sound effects and start playing the background music
|
-- Load sound effects and start playing the background music
|
||||||
@@ -55,12 +60,14 @@ end
|
|||||||
|
|
||||||
|
|
||||||
function MainMenu:draw()
|
function MainMenu:draw()
|
||||||
|
self.background:draw()
|
||||||
self.cursor:draw()
|
self.cursor:draw()
|
||||||
self.fade:draw()
|
self.fade:draw()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
function MainMenu:unload()
|
function MainMenu:unload()
|
||||||
|
self.background:unload()
|
||||||
self.cursor:unload()
|
self.cursor:unload()
|
||||||
self.bgm:unload()
|
self.bgm:unload()
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
local love = require 'love'
|
local love = require 'love'
|
||||||
local make_class = require 'src.utils.classes'
|
local make_class = require 'src.utils.classes'
|
||||||
|
local Asset = require 'src.utils.asset'
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
-- Class definitions
|
-- Class definitions
|
||||||
@@ -13,7 +13,7 @@ local make_class = require 'src.utils.classes'
|
|||||||
-- SoundEffect is a simple wrapper around Löve's Source class to allow for
|
-- SoundEffect is a simple wrapper around Löve's Source class to allow for
|
||||||
-- easy loading/unloading and automatically hecking if a sound effect is valid
|
-- easy loading/unloading and automatically hecking if a sound effect is valid
|
||||||
-- before using it.
|
-- before using it.
|
||||||
local SoundEffect = make_class()
|
local SoundEffect = make_class(Asset)
|
||||||
|
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
@@ -21,7 +21,7 @@ local SoundEffect = make_class()
|
|||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
function SoundEffect:_init(file_name)
|
function SoundEffect:_init(file_name)
|
||||||
self.file_name = file_name
|
self.file_name = string.format('assets/%s', file_name)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
local make_class = require 'src.utils.classes'
|
local make_class = require 'src.utils.classes'
|
||||||
local Sprite = require 'src.ui.sprite'
|
local Sprite = require 'src.graphics.sprite'
|
||||||
|
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
|||||||
35
src/utils/asset.lua
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
------------------------------------------------------------------------------
|
||||||
|
-- Imports
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
local make_class = require 'src.utils.classes'
|
||||||
|
|
||||||
|
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
-- Class definitions
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
local Asset = make_class()
|
||||||
|
|
||||||
|
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
-- Class methods
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
function Asset:_init()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
function Asset:load()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
function Asset:unload()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
-- Module return
|
||||||
|
------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
return Asset
|
||||||