Rocket-Bytes/Source/Map.lua

37 lines
1 KiB
Lua
Raw Normal View History

local gfx <const> = playdate.graphics
2022-04-19 21:31:46 +00:00
local tileTable <const> = gfx.imagetable.new("gfx/tiles")
local tilemap <const> = gfx.tilemap.new()
tilemap:setImageTable(tileTable)
2022-05-07 20:31:34 +00:00
local tiles = {}
2022-04-23 23:54:00 +00:00
function addMapSave(_file)
2022-05-07 20:31:34 +00:00
playdate.datastore.write({savedLevel=_file,savedDeaths=deaths},"savegame")
addMap(_file, false)
mode = "game"
end
2022-05-07 20:31:34 +00:00
function addMap(_file, rs)
if rs then deaths = 0 end
if #tiles > 0 then
for i = 1, #tiles, 1 do
tiles[i]:remove()
end
end
2022-04-19 21:31:46 +00:00
local level = json.decodeFile(_file)
2022-05-07 20:31:34 +00:00
2022-04-23 06:54:45 +00:00
tilemap:setSize(level.dimensions.x,level.dimensions.y)
2022-04-19 21:31:46 +00:00
for i = 1, #level.tiles, 1 do
tilemap:setTileAtPosition(level.tiles[i].x,level.tiles[i].y,level.tiles[i].t)
end
2022-04-24 05:03:32 +00:00
if level.saws then loadBlades(level.saws) end
2022-04-27 02:40:39 +00:00
if level.rotators then loadSpins(level.rotators) end
2022-04-23 23:54:00 +00:00
addPlayer(level.rocket.x,level.rocket.y, level.bigrocket.x, level.bigrocket.y)
2022-04-23 06:54:45 +00:00
2022-05-07 20:31:34 +00:00
tiles = gfx.sprite.addWallSprites(tilemap, {0,1})
2022-04-19 21:31:46 +00:00
end
function drawTiles()
tilemap:draw(0,0)
end