demo recording and playback, collision table

This commit is contained in:
lustlion
2022-02-17 23:39:31 +01:00
parent fb375e352b
commit 8e9078e929
9 changed files with 1063 additions and 42 deletions

View File

@@ -1,5 +1,5 @@
function LevelLoadTiles()
math.randomseed(3)
LevelData = dofile("data/levels/"..currLevel)
--[[
@@ -638,6 +638,7 @@ function TileCreateObjects()
end
end
end
CreateCollisionTable()
end
function AnimateTiles()
@@ -660,6 +661,39 @@ function AnimateTiles()
end
end
function CreateCollisionTable()
-- init table
CollisionTable = {}
for j=0, 16*LevelGetTileHeight()-1 do
CollisionTable[j] = {}
for i=0, 16*LevelGetTileWidth()-1 do
CollisionTable[j][i] = false
end
end
for _, collision in pairs(LoadedObjects.Collisions) do
for ci=0, math.floor(collision.width)-1 do
for cj=0, math.floor(collision.height)-1 do
print(ci..","..cj)
CollisionTable[collision.from.y+cj][collision.from.x+ci] = true
end
end
end
end
function DrawColisionTable()
for j=1, #CollisionTable do
for i=1, #CollisionTable[j] do
if CollisionTable[j][i] then
love.graphics.setColor(0,1,0,1)
else
love.graphics.setColor(1,0,0,1)
end
love.graphics.points(i,j)
end
end
end
function DrawTile(tile,x,y,depth)
local Properties = TileData[tile.id]