core: use newest version
This commit is contained in:
parent
cf38b3c326
commit
d2588cba74
4 changed files with 77 additions and 3 deletions
|
@ -36,6 +36,9 @@ function Scene:new()
|
||||||
self.menusystem = MenuSystem()
|
self.menusystem = MenuSystem()
|
||||||
self.keys = core.input:getKeyList()
|
self.keys = core.input:getKeyList()
|
||||||
|
|
||||||
|
self.inputLocked = false
|
||||||
|
self.inputLockedTimer = 0
|
||||||
|
|
||||||
self:register()
|
self:register()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -63,9 +66,33 @@ function Scene:clear()
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function Scene:setKeys()
|
||||||
|
if (self.inputLocked) then
|
||||||
|
self.keys = core.input.fakekeys
|
||||||
|
self.inputLockedTimer = self.inputLockedTimer - 1
|
||||||
|
if (self.inputLockedTimer <= 0 ) then
|
||||||
|
self.inputLockedTimer = false
|
||||||
|
end
|
||||||
|
else
|
||||||
|
self.keys = core.input.keys
|
||||||
|
end
|
||||||
|
|
||||||
|
self.menusystem.keys = self.keys
|
||||||
|
end
|
||||||
|
|
||||||
|
function Scene:getKeys()
|
||||||
|
if (self.inputLocked) then
|
||||||
|
return self.keys
|
||||||
|
else
|
||||||
|
return core.input.fakekeys
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function Scene:flushKeys()
|
function Scene:flushKeys()
|
||||||
core.input:flushKeys()
|
core.input:flushKeys()
|
||||||
self.keys = core.input.keys
|
self.keys = core.input.keys
|
||||||
|
self.inputLockedTimer = 1
|
||||||
|
self.inputLocked = true
|
||||||
end
|
end
|
||||||
|
|
||||||
return Scene
|
return Scene
|
||||||
|
|
24
sonic-radiance.love/core/modules/world/actors/actor2D.lua
Normal file
24
sonic-radiance.love/core/modules/world/actors/actor2D.lua
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
local Actor2D = Object:extend()
|
||||||
|
|
||||||
|
function Actor2D:new(world, type, x, h, w, h)
|
||||||
|
self.world = world
|
||||||
|
self.x = x or 0
|
||||||
|
self.y = y or 0
|
||||||
|
self.w = w or 0
|
||||||
|
self.h = h or 0
|
||||||
|
self.type = type or ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function Actor2D:register()
|
||||||
|
self.world:registerActor(self)
|
||||||
|
end
|
||||||
|
|
||||||
|
function Actor2D:update(dt)
|
||||||
|
-- here will be update actions
|
||||||
|
end
|
||||||
|
|
||||||
|
function Actor2D:draw()
|
||||||
|
-- here will be update actions
|
||||||
|
end
|
||||||
|
|
||||||
|
return Actor2D
|
25
sonic-radiance.love/core/modules/world/baseworld.lua
Normal file
25
sonic-radiance.love/core/modules/world/baseworld.lua
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
local BaseWorld = Object:extend()
|
||||||
|
|
||||||
|
function BaseWorld:new(scene)
|
||||||
|
self.scene = scene
|
||||||
|
|
||||||
|
self.entities = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
function BaseWorld:registerEntity(entity)
|
||||||
|
table.insert(self.entities, entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
function BaseWorld:update(dt)
|
||||||
|
for i,v in ipairs(self.entities) do
|
||||||
|
v:update(dt)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function BaseWorld:draw(dt)
|
||||||
|
for i,v in ipairs(self.entities) do
|
||||||
|
v:draw(dt)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return BaseWorld
|
|
@ -54,9 +54,7 @@ end
|
||||||
|
|
||||||
function SceneManager:update(dt)
|
function SceneManager:update(dt)
|
||||||
if (self.currentScene ~= nil) then
|
if (self.currentScene ~= nil) then
|
||||||
local keys = self.controller.input.keys
|
self.currentScene:setKeys()
|
||||||
self.currentScene.keys = keys
|
|
||||||
self.currentScene.menusystem.keys = keys
|
|
||||||
self.currentScene.assets:update(dt)
|
self.currentScene.assets:update(dt)
|
||||||
self.currentScene.menusystem:update(dt)
|
self.currentScene.menusystem:update(dt)
|
||||||
self.currentScene:update(dt)
|
self.currentScene:update(dt)
|
||||||
|
|
Loading…
Reference in a new issue