fixed loading finally
This commit is contained in:
parent
e08a469ad3
commit
4393d2aa87
7 changed files with 37 additions and 10 deletions
|
@ -3,8 +3,10 @@ local tileTable <const> = gfx.imagetable.new("gfx/tiles")
|
|||
local tilemap <const> = gfx.tilemap.new()
|
||||
tilemap:setImageTable(tileTable)
|
||||
|
||||
|
||||
|
||||
function addMapSave(_file)
|
||||
playdate.datastore.write({level=_file},"savegame")
|
||||
playdate.datastore.write({savedLevel=_file},"savegame")
|
||||
addMap(_file)
|
||||
end
|
||||
|
||||
|
@ -15,7 +17,7 @@ function addMap(_file)
|
|||
tilemap:setTileAtPosition(level.tiles[i].x,level.tiles[i].y,level.tiles[i].t)
|
||||
end
|
||||
|
||||
addPlayer(level.rocket.x,level.rocket.y)
|
||||
addPlayer(level.rocket.x,level.rocket.y, level.bigrocket.x, level.bigrocket.y)
|
||||
|
||||
gfx.sprite.addWallSprites(tilemap, {0,1})
|
||||
|
||||
|
|
|
@ -15,12 +15,12 @@ assert(imgBytes)
|
|||
mainmenu = {}
|
||||
function mainMenuCreation()
|
||||
mainmenu = {}
|
||||
if playdate.datastore.read("savegame") then
|
||||
map = playdate.datastore.read("savegame").level
|
||||
mainmenu[4],mainmenu[3],mainmenu[2],mainmenu[1], mainmenu[0] = "CONTINUE", "START NEW GAME", "USER LEVELS", "ABOUT THE CREATOR", "mainPlay"
|
||||
else
|
||||
mainmenu[3],mainmenu[2],mainmenu[1], mainmenu[0] = "START NEW GAME", "USER LEVELS", "ABOUT THE CREATOR", "mainNoPlay"
|
||||
end
|
||||
|
||||
if playdate.datastore.read("savegame") then
|
||||
map = playdate.datastore.read("savegame").savedLevel
|
||||
mainmenu[4], mainmenu[0] = "CONTINUE", "mainPlay"
|
||||
end
|
||||
end
|
||||
|
||||
mainMenuCreation()
|
||||
|
@ -75,7 +75,7 @@ function menuButtonPress(name)
|
|||
createMenu(m)
|
||||
|
||||
elseif name == "START NEW GAME" or name == "CONFIRM" then
|
||||
addMapSave("levels/level1.json")
|
||||
addMapSave("levels/level.json")
|
||||
|
||||
elseif name == "CONTINUE" then
|
||||
addMap(map)
|
||||
|
|
|
@ -3,6 +3,7 @@ import "CoreLibs/math"
|
|||
local velocity = {x=0,y=0}
|
||||
local lerpmnt <const> = 0.5
|
||||
local grav <const> = 0.2
|
||||
scale = 1
|
||||
|
||||
local exists = false
|
||||
local active = false
|
||||
|
@ -13,11 +14,20 @@ local sprRocket = gfx.sprite.new(imgRocket)
|
|||
sprRocket:setCollideRect(7, 7, 14, 14)
|
||||
local startpos = {x=0,y=0}
|
||||
|
||||
function addPlayer(_x,_y)
|
||||
local imgBigRocket = gfx.image.new("gfx/bigrocket")
|
||||
assert(imgBigRocket)
|
||||
local sprBigRocket = gfx.sprite.new(imgBigRocket)
|
||||
sprBigRocket:setCollideRect(8,8,48,48)
|
||||
sprBigRocket:setGroups({2})
|
||||
|
||||
function addPlayer(_x,_y,__x,__y)
|
||||
exists = true
|
||||
scale = 1
|
||||
active = false
|
||||
velocity = {x=0,y=0}
|
||||
startpos = {x= _x,y=_y}
|
||||
sprBigRocket:moveTo(__x,__y)
|
||||
sprBigRocket:add()
|
||||
sprRocket:moveTo(_x,_y)
|
||||
sprRocket:add()
|
||||
end
|
||||
|
@ -29,6 +39,11 @@ function killPlayer()
|
|||
gfx.setDrawOffset(0,0)
|
||||
end
|
||||
|
||||
local function playerWin()
|
||||
active = false
|
||||
exists = false
|
||||
end
|
||||
|
||||
local function die()
|
||||
active = false
|
||||
velocity = {x=0,y=0}
|
||||
|
@ -64,5 +79,15 @@ function updatePlayer()
|
|||
gfx.setDrawOffset(playdate.math.lerp(cx,(-sprRocket.x + 200), lerpmnt), playdate.math.lerp(cy,(-sprRocket.y + 120), lerpmnt))
|
||||
end
|
||||
|
||||
updateExit()
|
||||
|
||||
sprRocket:setScale(scale,scale)
|
||||
|
||||
sprRocket:setRotation(playdate.getCrankPosition())
|
||||
end
|
||||
|
||||
function updateExit()
|
||||
if sprBigRocket:alphaCollision(sprRocket) then
|
||||
playerWin()
|
||||
end
|
||||
end
|
Binary file not shown.
Before Width: | Height: | Size: 312 B After Width: | Height: | Size: 531 B |
File diff suppressed because one or more lines are too long
1
Source/levels/level.json
Normal file
1
Source/levels/level.json
Normal file
|
@ -0,0 +1 @@
|
|||
{"bigrocket":{"x":73.333333,"y":144.79638},"dimensions":{"x":22,"y":17},"rocket":{"x":276.27907,"y":144.651163},"tiles":[{"t":2,"x":2,"y":1},{"t":2,"x":14,"y":1},{"t":2,"x":14,"y":5},{"t":2,"x":22,"y":5},{"t":2,"x":8,"y":6},{"t":2,"x":2,"y":12},{"t":2,"x":8,"y":12},{"t":2,"x":11,"y":12},{"t":2,"x":14,"y":12},{"t":2,"x":8,"y":17},{"t":2,"x":22,"y":17},{"t":3,"x":3,"y":1},{"t":3,"x":4,"y":1},{"t":3,"x":5,"y":1},{"t":3,"x":6,"y":1},{"t":3,"x":7,"y":1},{"t":3,"x":8,"y":1},{"t":3,"x":9,"y":1},{"t":3,"x":10,"y":1},{"t":3,"x":11,"y":1},{"t":3,"x":12,"y":1},{"t":3,"x":13,"y":1},{"t":3,"x":15,"y":5},{"t":3,"x":16,"y":5},{"t":3,"x":17,"y":5},{"t":3,"x":18,"y":5},{"t":3,"x":19,"y":5},{"t":3,"x":20,"y":5},{"t":3,"x":21,"y":5},{"t":3,"x":3,"y":12},{"t":3,"x":4,"y":12},{"t":3,"x":5,"y":12},{"t":3,"x":6,"y":12},{"t":3,"x":7,"y":12},{"t":3,"x":9,"y":12},{"t":3,"x":10,"y":12},{"t":3,"x":9,"y":17},{"t":3,"x":10,"y":17},{"t":3,"x":11,"y":17},{"t":3,"x":12,"y":17},{"t":3,"x":13,"y":17},{"t":3,"x":14,"y":17},{"t":3,"x":15,"y":17},{"t":3,"x":16,"y":17},{"t":3,"x":17,"y":17},{"t":3,"x":18,"y":17},{"t":3,"x":19,"y":17},{"t":3,"x":20,"y":17},{"t":3,"x":21,"y":17},{"t":4,"x":2,"y":2},{"t":4,"x":14,"y":2},{"t":4,"x":2,"y":3},{"t":4,"x":14,"y":3},{"t":4,"x":2,"y":4},{"t":4,"x":14,"y":4},{"t":4,"x":2,"y":5},{"t":4,"x":2,"y":6},{"t":4,"x":14,"y":6},{"t":4,"x":22,"y":6},{"t":4,"x":2,"y":7},{"t":4,"x":8,"y":7},{"t":4,"x":14,"y":7},{"t":4,"x":22,"y":7},{"t":4,"x":2,"y":8},{"t":4,"x":8,"y":8},{"t":4,"x":14,"y":8},{"t":4,"x":22,"y":8},{"t":4,"x":2,"y":9},{"t":4,"x":8,"y":9},{"t":4,"x":14,"y":9},{"t":4,"x":22,"y":9},{"t":4,"x":2,"y":10},{"t":4,"x":8,"y":10},{"t":4,"x":14,"y":10},{"t":4,"x":22,"y":10},{"t":4,"x":2,"y":11},{"t":4,"x":8,"y":11},{"t":4,"x":14,"y":11},{"t":4,"x":22,"y":11},{"t":4,"x":22,"y":12},{"t":4,"x":8,"y":13},{"t":4,"x":22,"y":13},{"t":4,"x":8,"y":14},{"t":4,"x":22,"y":14},{"t":4,"x":8,"y":15},{"t":4,"x":22,"y":15},{"t":4,"x":8,"y":16},{"t":4,"x":22,"y":16}]}
|
Loading…
Reference in a new issue