Compare commits
4 commits
6bac6704f5
...
fed8ab4662
Author | SHA1 | Date | |
---|---|---|---|
|
fed8ab4662 | ||
|
6a66cff503 | ||
|
77311a803b | ||
|
982be45f1a |
14 changed files with 53 additions and 41 deletions
12
.vscode/settings.json
vendored
Normal file
12
.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"Lua.diagnostics.globals": [
|
||||
"love",
|
||||
"loadstring",
|
||||
"unpack",
|
||||
"birb",
|
||||
"utils",
|
||||
"core",
|
||||
"scenes",
|
||||
"game"
|
||||
]
|
||||
}
|
|
@ -69,6 +69,7 @@ end
|
|||
|
||||
function InputManager:getKey(sourceid, padkey)
|
||||
local padkey = padkey
|
||||
local key
|
||||
for k,v in pairs(self.data[sourceid].keys) do
|
||||
if (k == padkey) then key = v end
|
||||
end
|
||||
|
|
|
@ -121,6 +121,7 @@ function OptionsManager:getTranslationDefaultData()
|
|||
local _path = TRANSLATION_PATH .. "init.lua"
|
||||
local fileinfo = love.filesystem.getInfo(_path)
|
||||
local datas = nil
|
||||
local lang = nil
|
||||
|
||||
if fileinfo ~= nil then
|
||||
lang = require(TRANSLATION_PATH)
|
||||
|
@ -146,12 +147,12 @@ end
|
|||
function OptionsManager:write()
|
||||
local data = self:getData()
|
||||
|
||||
filepath = self:getFile(true)
|
||||
local filepath = self:getFile(true)
|
||||
binser.writeFile(filepath, data)
|
||||
end
|
||||
|
||||
function OptionsManager:read()
|
||||
filepath = self:getFile(true)
|
||||
local filepath = self:getFile(true)
|
||||
if utils.filesystem.exists("options.data") then
|
||||
local loadedDatas = binser.readFile(filepath)
|
||||
self.core.debug:logInfo("core/options", "data file found, loading it")
|
||||
|
|
|
@ -32,7 +32,7 @@ function Background:new(filepath)
|
|||
self.batch = love.graphics.newSpriteBatch(self.image , 1000 )
|
||||
|
||||
self.width, self.height = self.image:getDimensions()
|
||||
screenwidth, screenheight = core.screen:getDimensions()
|
||||
local screenwidth, screenheight = core.screen:getDimensions()
|
||||
|
||||
local w = math.floor(screenwidth / self.width) * self.width + 1
|
||||
local h = math.floor(screenheight / self.height) * self.height + 1
|
||||
|
|
|
@ -136,7 +136,7 @@ function GameSystem:write()
|
|||
if (self.currentSlot > 0) then
|
||||
local data = self:getData()
|
||||
|
||||
savepath = self:getSavePath(self.currentSlot, true)
|
||||
local savepath = self:getSavePath(self.currentSlot, true)
|
||||
binser.writeFile(savepath, data)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -146,7 +146,7 @@ end
|
|||
-- Handle the keyboard/manette functions
|
||||
|
||||
function GridBox:keyreleased(key, code)
|
||||
slotID = self:getWidgetSlot(self.widget.selected)
|
||||
local slotID = self:getWidgetSlot(self.widget.selected)
|
||||
local col, line = self.cursor.x, self.cursor.y
|
||||
if key == 'left' then
|
||||
self:moveCol(-1)
|
||||
|
@ -172,7 +172,7 @@ end
|
|||
function GridBox:moveCol(direction)
|
||||
local orig_x, orig_y = self:getSlotCenter(self.widget.selected)
|
||||
local distance = self.w -- on met directement à la distance max possible le système
|
||||
local nearastWidget = 0
|
||||
local nearestWidget = 0
|
||||
for i,v in ipairs(self.slots) do
|
||||
local xx, yy = self:getSlotCenter(i)
|
||||
-- On commence par vérifier si le slot est bien positionné par rapport au
|
||||
|
@ -193,7 +193,7 @@ end
|
|||
function GridBox:moveLine(direction)
|
||||
local orig_x, orig_y = self:getSlotCenter(self.widget.selected)
|
||||
local distance = self.h -- on met directement à la distance max possible le système
|
||||
local nearastWidget = 0
|
||||
local nearestWidget = 0
|
||||
for i,v in ipairs(self.slots) do
|
||||
local xx, yy = self:getSlotCenter(i)
|
||||
-- On commence par vérifier si le slot est bien positionné par rapport au
|
||||
|
|
|
@ -119,7 +119,7 @@ function BaseActor:setFilter()
|
|||
end
|
||||
|
||||
function BaseActor:getFuturePosition(dt)
|
||||
local dx, dy
|
||||
local dx, dy, dz
|
||||
dx = self.x + self.xsp * dt
|
||||
dy = self.y + self.ysp * dt
|
||||
dz = self.z + self.zsp * dt
|
||||
|
|
|
@ -61,7 +61,7 @@ function Box3D:setSizeFromOwner()
|
|||
self:setSize(self.owner.w, self.owner.h, self.owner.d)
|
||||
end
|
||||
|
||||
function Box3D:setSize()
|
||||
function Box3D:setSize(w, h, d)
|
||||
self.w = w
|
||||
self.h = h
|
||||
self.d = d
|
||||
|
|
|
@ -142,14 +142,14 @@ function BaseWorld:getActorsInRect(x, y, w, h)
|
|||
local query = {}
|
||||
local x2, y2 = x + w, y + h
|
||||
for i,v in ipairs(self.actors) do
|
||||
if (v.x >= x) and (v.x + v.w >= x1) and
|
||||
(v.y >= y) and (v.y + v.h >= y1) then
|
||||
if (v.x >= x) and (v.x + v.w <= x2) and
|
||||
(v.y >= y) and (v.y + v.h <= y2) then
|
||||
|
||||
table.insert(query, v)
|
||||
end
|
||||
end
|
||||
|
||||
return v
|
||||
return query
|
||||
end
|
||||
|
||||
|
||||
|
@ -189,7 +189,7 @@ function BaseWorld:registerBody(body)
|
|||
end
|
||||
|
||||
function BaseWorld:updateBody(body)
|
||||
return x, y, {}, 0
|
||||
return 0, 0, {}, 0
|
||||
end
|
||||
|
||||
function BaseWorld:removeBody(body)
|
||||
|
|
|
@ -179,16 +179,14 @@ function CameraSystem:attachView(id)
|
|||
love.graphics.setCanvas(view.canvas)
|
||||
love.graphics.clear()
|
||||
|
||||
if id ~= nil then
|
||||
-- Du à la manière dont fonctionne STI, on est obligé de récupérer les info
|
||||
-- de position de camera pour afficher la carte par rapport à ces infos
|
||||
tx, ty = self:getViewCoordinate(id)
|
||||
scale = self:getViewScale(id) or 1
|
||||
local tx, ty = self:getViewCoordinate(id)
|
||||
local scale = self:getViewScale(id) or 1
|
||||
tx = math.floor(tx) * -1
|
||||
ty = math.floor(ty) * -1
|
||||
|
||||
local w, h = core.screen:getDimensions()
|
||||
end
|
||||
|
||||
love.graphics.push()
|
||||
love.graphics.origin()
|
||||
|
|
|
@ -202,17 +202,17 @@ function World3D:zSortItems(items)
|
|||
end
|
||||
|
||||
local _, aY, aZ, _, aH, aD = self.bodies:getCube(itemA.mainHitbox)
|
||||
aDepth = itemA.depth
|
||||
aID = itemA.creationID
|
||||
aType = itemA.type
|
||||
local aDepth = itemA.depth
|
||||
local aID = itemA.creationID
|
||||
local aType = itemA.type
|
||||
aZ = math.ceil(aZ)
|
||||
aY = math.ceil(aY)
|
||||
|
||||
for _, itemB in ipairs(overlapping) do
|
||||
local _, bY, bZ, _, bH, bD = self.bodies:getCube(itemB.mainHitbox)
|
||||
bDepth = itemB.depth
|
||||
bID = itemB.creationID
|
||||
bType = itemB.type
|
||||
local bDepth = itemB.depth
|
||||
local bID = itemB.creationID
|
||||
local bType = itemB.type
|
||||
bZ = math.ceil(bZ)
|
||||
bY = math.ceil(bY)
|
||||
|
||||
|
@ -246,7 +246,7 @@ function World3D:zSortItems(items)
|
|||
elseif aID < bID then
|
||||
graph:add(itemB, itemA)
|
||||
else
|
||||
err("two object can't have the same ID")
|
||||
error("two object can't have the same ID")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -69,7 +69,7 @@ function Graphics.printWithSpacing(text, spacing, align, x, y, r, sx, sy, ox, oy
|
|||
|
||||
for i=1, lenght do
|
||||
local char = string.sub(text, i, i)
|
||||
pos = math.floor(x + xx - width)
|
||||
local pos = math.floor(x + xx - width)
|
||||
love.graphics.print(char, pos, y)
|
||||
xx = xx + font:getWidth(char) + spacing
|
||||
end
|
||||
|
@ -91,16 +91,16 @@ function Graphics.drawBorder(drawable, border, x, y, r, sx, sy, ox, oy, kx, ky)
|
|||
local color = love.graphics.getColor()
|
||||
local b = border or 1
|
||||
love.graphics.setColor(0, 0, 0, 0)
|
||||
love.graphics.draw(drawable, x-b, y-b, limit, align, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x , y-b, limit, align, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x+b, y-b, limit, align, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x-b, y-b, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x , y-b, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x+b, y-b, r, sx, sy, ox, oy, kx, ky)
|
||||
|
||||
love.graphics.draw(drawable, x+b, y , limit, align, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x-b, y , limit, align, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x+b, y , r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x-b, y , r, sx, sy, ox, oy, kx, ky)
|
||||
|
||||
love.graphics.draw(drawable, x-b, y+b, limit, align, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x , y+b, limit, align, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x+b, y+b, limit, align, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x-b, y+b, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x , y+b, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.draw(drawable, x+b, y+b, r, sx, sy, ox, oy, kx, ky)
|
||||
love.graphics.setColor(color)
|
||||
|
||||
love.graphics.draw(drawable, x, y, r, sx, sy, ox, oy, kx, ky)
|
||||
|
@ -114,9 +114,9 @@ function Graphics.box(x, y, w, h)
|
|||
local y = math.floor(y)
|
||||
local w = math.floor(w)
|
||||
local h = math.floor(h)
|
||||
local a = a or 1
|
||||
|
||||
local r, g, b, a = love.graphics.getColor( )
|
||||
a = a or 1
|
||||
|
||||
love.graphics.setColor(r, g, b, 0.3 * a)
|
||||
love.graphics.rectangle("fill", x, y, w, h)
|
||||
|
|
|
@ -63,7 +63,7 @@ function Math.vector(x1, y1, x2, y2)
|
|||
local vecx, vecy
|
||||
|
||||
vecx = x2 - x1
|
||||
vexy = y2 - y1
|
||||
vecy = y2 - y1
|
||||
|
||||
return vecx, vecy
|
||||
end
|
||||
|
@ -107,7 +107,7 @@ function Math.numberToString(x, length)
|
|||
local string = ""
|
||||
local x = x
|
||||
if (x >= math.pow(10, length)) then
|
||||
x = unitsNumber*10 - 1
|
||||
x = length*10 - 1
|
||||
string = string .. x
|
||||
else
|
||||
for i=1, (length-1) do
|
||||
|
|
|
@ -113,7 +113,7 @@ function widgets.Switch:new(scene, menu, keyname)
|
|||
local label = core.lang:translate("options", keyname)
|
||||
local label2 = self:getLabel()
|
||||
widgets.Switch.super.new(self, widgetmenu, font, label, label2)
|
||||
self.order = order or 0
|
||||
self.order = 0
|
||||
end
|
||||
|
||||
function widgets.Switch:modifyKey()
|
||||
|
@ -263,7 +263,7 @@ end
|
|||
|
||||
function widgets.Audio:new(scene, menu, audiotype)
|
||||
self.scene = scene
|
||||
self.audiotype = key
|
||||
self.audiotype = audiotype
|
||||
|
||||
|
||||
local widgetmenu = self.scene.menusystem.menus[menu]
|
||||
|
|
Loading…
Reference in a new issue