cutscenes, links, changed @ to rocket, some others
This commit is contained in:
parent
90a8044ec4
commit
e12c94f330
17 changed files with 220 additions and 35 deletions
|
@ -2,22 +2,171 @@ local gfx <const> = playdate.graphics
|
||||||
|
|
||||||
local imgBigRocket = gfx.image.new("gfx/bigrocket")
|
local imgBigRocket = gfx.image.new("gfx/bigrocket")
|
||||||
local tabBigRocket = gfx.imagetable.new("gfx/bigrocketfire")
|
local tabBigRocket = gfx.imagetable.new("gfx/bigrocketfire")
|
||||||
|
local tabSmallRocket = gfx.imagetable.new("gfx/fire")
|
||||||
assert(imgBigRocket)
|
assert(imgBigRocket)
|
||||||
assert(tabBigRocket)
|
assert(tabBigRocket)
|
||||||
|
assert(tabSmallRocket)
|
||||||
|
|
||||||
|
local shake = 0
|
||||||
|
|
||||||
local animBigRocket = gfx.animation.loop.new(200,tabBigRocket)
|
local animBigRocket = gfx.animation.loop.new(200,tabBigRocket)
|
||||||
|
local animRocket = gfx.animation.loop.new(200,tabSmallRocket)
|
||||||
|
|
||||||
local sprCutsceneBigRocket = gfx.sprite.new(tabBigRocket[1])
|
local sprCutsceneBigRocket = gfx.sprite.new(tabBigRocket[1])
|
||||||
|
|
||||||
sprCutsceneBigRocket:setRotation(90)
|
sprCutsceneBigRocket:setRotation(90)
|
||||||
sprCutsceneBigRocket:moveTo(0 - sprCutsceneBigRocket.height,120)
|
|
||||||
|
|
||||||
function beginStartCutscene()
|
-- cutscene 1
|
||||||
|
local gotoGame = false
|
||||||
|
local showFuelMeter = false
|
||||||
|
local transfer = true
|
||||||
|
local fuelshowncount = -1
|
||||||
|
|
||||||
|
local scene1Blip = playdate.sound.sampleplayer.new("sfx/cutsceneblip")
|
||||||
|
scene1Blip:setVolume(0.7)
|
||||||
|
local scene1Explosion = playdate.sound.sampleplayer.new("sfx/cutsceneexplosion")
|
||||||
|
|
||||||
|
local fuelTimer
|
||||||
|
|
||||||
|
function beginStartCutscene(_gotoGame)
|
||||||
mode = "startCutscene"
|
mode = "startCutscene"
|
||||||
|
fuelshowncount = -1
|
||||||
|
gotoGame = _gotoGame
|
||||||
|
--sprCutsceneBigRocket:moveTo(51,120)
|
||||||
|
sprCutsceneBigRocket:moveTo(-sprCutsceneBigRocket.height,120)
|
||||||
|
transfer = true
|
||||||
|
sprCutsceneBigRocket:setScale(1.5)
|
||||||
|
sprCutsceneBigRocket:add()
|
||||||
|
playdate.timer.new(1000, function()
|
||||||
|
local brAnimator = gfx.animator.new(4000, playdate.geometry.point.new(-sprCutsceneBigRocket.height,120),playdate.geometry.point.new(200,120), playdate.easingFunctions.outQuad)
|
||||||
|
sprCutsceneBigRocket:setAnimator(brAnimator)
|
||||||
|
end
|
||||||
|
)
|
||||||
|
createStars(-10)
|
||||||
end
|
end
|
||||||
|
|
||||||
function updateStartCutscene()
|
function updateStartCutscene()
|
||||||
|
playdate.timer.updateTimers()
|
||||||
gfx.clear()
|
gfx.clear()
|
||||||
|
gfx.setDrawOffset(math.random(-3,3)*shake,math.random(-3,3)*shake)
|
||||||
|
sprCutsceneBigRocket:setImage(animBigRocket:image())
|
||||||
|
|
||||||
gfx.sprite.update()
|
gfx.sprite.update()
|
||||||
|
processStars(-10,-10)
|
||||||
|
processExplosions()
|
||||||
|
|
||||||
|
if fuelshowncount == -1 and sprCutsceneBigRocket.x == 200 then
|
||||||
|
fuelshowncount = 0
|
||||||
|
fuelTimer = playdate.timer.new(500, function ()
|
||||||
|
fuelshowncount+=1
|
||||||
|
showFuelMeter = not showFuelMeter
|
||||||
|
if showFuelMeter then scene1Blip:play() end
|
||||||
|
end)
|
||||||
|
fuelTimer.repeats = true
|
||||||
|
fuelTimer:reset()
|
||||||
|
fuelTimer:start()
|
||||||
|
end
|
||||||
|
if fuelshowncount == 5 then -- when the fuel blinking is done
|
||||||
|
fuelTimer.repeats = false
|
||||||
|
fuelshowncount = 6
|
||||||
|
|
||||||
|
local dietimer = playdate.timer.new(1000, function ()
|
||||||
|
explode(200,120)
|
||||||
|
shake = 3
|
||||||
|
showFuelMeter =false
|
||||||
|
song:stop()
|
||||||
|
scene1Explosion:play()
|
||||||
|
|
||||||
|
local falltimer = playdate.timer.new(700, function ()
|
||||||
|
local a = gfx.animator.new(3000, playdate.geometry.point.new(200,120),playdate.geometry.point.new(200,240+sprCutsceneBigRocket.width),playdate.easingFunctions.inBack)
|
||||||
|
sprCutsceneBigRocket:setAnimator(a)
|
||||||
|
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
if sprCutsceneBigRocket.y == 240+sprCutsceneBigRocket.width and transfer then
|
||||||
|
transfer = false
|
||||||
|
local gametimer = playdate.timer.new(1000,function ()
|
||||||
|
|
||||||
|
|
||||||
|
if gotoGame then
|
||||||
|
map = "data/1. HOOK.json"
|
||||||
|
addMapSave("data/1. HOOK.json")
|
||||||
|
else
|
||||||
|
createMenu(mainmenu)
|
||||||
|
song:play(0)
|
||||||
|
end
|
||||||
|
applyStarSpeed(10,0)
|
||||||
|
end)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
if showFuelMeter then
|
||||||
|
gfx.setLineWidth(2)
|
||||||
|
gfx.setColor(gfx.kColorWhite)
|
||||||
|
gfx.drawRect(194,35,70,10)
|
||||||
|
gfx.drawText("FUEL",131,32)
|
||||||
|
end
|
||||||
|
|
||||||
|
if shake > 0 then shake -= .1 elseif shake < 0 then shake = 0 end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- end custscene
|
||||||
|
|
||||||
|
local imgEndPlatform = gfx.image.new("gfx/endplatform")
|
||||||
|
assert(imgEndPlatform)
|
||||||
|
local scene = 1
|
||||||
|
local platformY = -imgEndPlatform.height
|
||||||
|
local endRocketY = 0
|
||||||
|
|
||||||
|
function beginEndCutscene()
|
||||||
|
mode = "endCutscene"
|
||||||
|
song:stop()
|
||||||
|
song:load("sfx/song4")
|
||||||
|
|
||||||
|
playdate.timer.new(3200, function ()
|
||||||
|
scene = 2
|
||||||
|
end)
|
||||||
|
|
||||||
|
playdate.timer.new(9600, function ()
|
||||||
|
shake = 5
|
||||||
|
scene = 3
|
||||||
|
applyStarSpeed(0,5)
|
||||||
|
end)
|
||||||
|
|
||||||
|
playdate.timer.new(16000, function ()
|
||||||
|
applyStarSpeed(0,5)
|
||||||
|
scene = 4
|
||||||
|
shake = 3
|
||||||
|
explode(200,150)
|
||||||
|
end)
|
||||||
|
|
||||||
|
song:play()
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
function processEndCutscene()
|
||||||
|
playdate.timer.updateTimers()
|
||||||
|
gfx.clear()
|
||||||
|
gfx.setDrawOffset(math.random(-3,3)*shake,math.random(-3,3)*shake)
|
||||||
|
processStars(-10,-10)
|
||||||
|
|
||||||
|
if scene == 2 then
|
||||||
|
platformY = playdate.math.lerp(platformY,130,0.1)
|
||||||
|
endRocketY = platformY-imgBigRocket.height*1.5
|
||||||
|
imgBigRocket:drawScaled(200-imgBigRocket.width*0.75,endRocketY,1.5)
|
||||||
|
imgEndPlatform:draw(0,platformY)
|
||||||
|
elseif scene == 3 then
|
||||||
|
animBigRocket:image():drawScaled(200-imgBigRocket.width*0.75,endRocketY,1.5)
|
||||||
|
endRocketY = playdate.math.lerp(endRocketY, 120 - (imgBigRocket.width *0.75),0.1)
|
||||||
|
if platformY ~= 280 then
|
||||||
|
platformY = playdate.math.lerp(platformY,280,0.05)
|
||||||
|
imgEndPlatform:draw(0,platformY)
|
||||||
|
end
|
||||||
|
elseif scene == 4 then
|
||||||
|
animBigRocket:image():drawScaled(200-imgBigRocket.width*0.75,120-imgBigRocket.height*0.75,1.5)
|
||||||
|
end
|
||||||
|
|
||||||
|
if shake > 0 then shake -= .1 elseif shake < 0 then shake = 0 end
|
||||||
|
processExplosions()
|
||||||
end
|
end
|
|
@ -85,6 +85,11 @@ function updateNewproj()
|
||||||
gfx.drawTextInRect(playdate.keyboard.text:upper(),0,130, 210, 80,0,nil,kTextAlignment.center,createNewFont)
|
gfx.drawTextInRect(playdate.keyboard.text:upper(),0,130, 210, 80,0,nil,kTextAlignment.center,createNewFont)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function playdate.keyPressed(key)
|
||||||
|
playdate.keyboard.text = playdate.keyboard.text..key
|
||||||
|
playdate.keyboard.textChangedCallback()
|
||||||
|
end
|
||||||
|
|
||||||
function editLoadName(name)
|
function editLoadName(name)
|
||||||
song:stop()
|
song:stop()
|
||||||
mode = "editor"
|
mode = "editor"
|
||||||
|
@ -151,7 +156,7 @@ end
|
||||||
function playdate.keyboard.textChangedCallback()
|
function playdate.keyboard.textChangedCallback()
|
||||||
local newTex = playdate.keyboard.text:gsub("/", ""):gsub("\\", ""):gsub("|", ""):gsub(":", ""):gsub("*", ""):gsub("?", ""):gsub('"', ""):gsub("<", ""):gsub(">", "")
|
local newTex = playdate.keyboard.text:gsub("/", ""):gsub("\\", ""):gsub("|", ""):gsub(":", ""):gsub("*", ""):gsub("?", ""):gsub('"', ""):gsub("<", ""):gsub(">", "")
|
||||||
|
|
||||||
if #newTex > 24 then
|
if #newTex > 25 then
|
||||||
newTex = prevtext
|
newTex = prevtext
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -66,13 +66,14 @@ menuButton, error = menu:addMenuItem("game menu", function()
|
||||||
elseif mode == "editor" then
|
elseif mode == "editor" then
|
||||||
editClose()
|
editClose()
|
||||||
song:play(0)
|
song:play(0)
|
||||||
|
elseif mode == "startCutscene" or mode == "startCutsceneReplay" then
|
||||||
|
createStars()
|
||||||
end
|
end
|
||||||
|
|
||||||
if mode =="game" or mode == "play" then
|
if mode =="game" or mode == "play" then
|
||||||
killPlayer()
|
killPlayer()
|
||||||
removeMap()
|
removeMap()
|
||||||
killBlades()
|
killBlades()
|
||||||
createStars()
|
|
||||||
end
|
end
|
||||||
if mode ~= "music" then
|
if mode ~= "music" then
|
||||||
totalEnergy = 0
|
totalEnergy = 0
|
||||||
|
@ -108,6 +109,11 @@ song:play(0)
|
||||||
function playdate.update()
|
function playdate.update()
|
||||||
if mode == "menu" then
|
if mode == "menu" then
|
||||||
updateMenu()
|
updateMenu()
|
||||||
|
processExplosions()
|
||||||
|
elseif mode == "startCutscene" or mode == "startCutsceneReplay" then
|
||||||
|
updateStartCutscene()
|
||||||
|
elseif mode == "endCutscene" then
|
||||||
|
processEndCutscene()
|
||||||
elseif mode == "music" then
|
elseif mode == "music" then
|
||||||
updateBox()
|
updateBox()
|
||||||
elseif mode == "game" or mode == "play" then
|
elseif mode == "game" or mode == "play" then
|
||||||
|
|
|
@ -17,8 +17,15 @@ page = 0
|
||||||
|
|
||||||
local imgCursor = gfx.image.new("gfx/cursor")
|
local imgCursor = gfx.image.new("gfx/cursor")
|
||||||
local imgBytes = gfx.image.new("gfx/bytes")
|
local imgBytes = gfx.image.new("gfx/bytes")
|
||||||
|
local imgQRs = gfx.image.new("gfx/aboutme")
|
||||||
assert(imgCursor)
|
assert(imgCursor)
|
||||||
assert(imgBytes)
|
assert(imgBytes)
|
||||||
|
assert(imgQRs)
|
||||||
|
|
||||||
|
local sfxAccept = playdate.sound.sampleplayer.new("sfx/accept")
|
||||||
|
local sfxSelect = playdate.sound.sampleplayer.new("sfx/select")
|
||||||
|
sfxAccept:setVolume(0.5)
|
||||||
|
sfxSelect:setVolume(0.5)
|
||||||
|
|
||||||
mainmenu = {}
|
mainmenu = {}
|
||||||
function mainMenuCreation()
|
function mainMenuCreation()
|
||||||
|
@ -71,9 +78,11 @@ function updateMenu()
|
||||||
local change, aChange = playdate.getCrankChange()
|
local change, aChange = playdate.getCrankChange()
|
||||||
|
|
||||||
if playdate.buttonJustPressed(playdate.kButtonUp) then
|
if playdate.buttonJustPressed(playdate.kButtonUp) then
|
||||||
|
sfxSelect:play()
|
||||||
index -= 1
|
index -= 1
|
||||||
elseif playdate.buttonJustPressed(playdate.kButtonDown) then
|
elseif playdate.buttonJustPressed(playdate.kButtonDown) then
|
||||||
index += 1
|
index += 1
|
||||||
|
sfxSelect:play()
|
||||||
end
|
end
|
||||||
|
|
||||||
index += change * 0.01
|
index += change * 0.01
|
||||||
|
@ -100,8 +109,10 @@ function updateMenu()
|
||||||
|
|
||||||
if playdate.buttonJustPressed(playdate.kButtonA) or playdate.buttonJustPressed(playdate.kButtonRight) then
|
if playdate.buttonJustPressed(playdate.kButtonA) or playdate.buttonJustPressed(playdate.kButtonRight) then
|
||||||
menuButtonPress(menuitems[#menuitems - math.floor(index)].name,#menuitems - math.floor(index))
|
menuButtonPress(menuitems[#menuitems - math.floor(index)].name,#menuitems - math.floor(index))
|
||||||
|
sfxAccept:play()
|
||||||
elseif playdate.buttonJustPressed(playdate.kButtonB) or playdate.buttonJustPressed(playdate.kButtonLeft) then
|
elseif playdate.buttonJustPressed(playdate.kButtonB) or playdate.buttonJustPressed(playdate.kButtonLeft) then
|
||||||
menuButtonPress("BACK")
|
menuButtonPress("BACK")
|
||||||
|
sfxAccept:play()
|
||||||
end
|
end
|
||||||
|
|
||||||
imgBytes:draw(logposLerp,0)
|
imgBytes:draw(logposLerp,0)
|
||||||
|
@ -109,6 +120,10 @@ function updateMenu()
|
||||||
if dev then
|
if dev then
|
||||||
small:drawText(index, 0, 209)
|
small:drawText(index, 0, 209)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if menu == "qrs" then
|
||||||
|
imgQRs:draw(0,0)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local function dataLoad()
|
local function dataLoad()
|
||||||
|
@ -187,6 +202,8 @@ function menuButtonPress(name, index)
|
||||||
logopos = 0
|
logopos = 0
|
||||||
barpos = 0
|
barpos = 0
|
||||||
|
|
||||||
|
miniExplode(controlX - 17 --[[+ (playdate.graphics.getTextSize(name) / 2)]] ,controlY + (243 - (20 * #menuitems)))
|
||||||
|
|
||||||
if name == "START NEW GAME" and menu == "mainPlay" then
|
if name == "START NEW GAME" and menu == "mainPlay" then
|
||||||
local m = {}
|
local m = {}
|
||||||
m[0], m[1], m[2] = "newgame", "CANCEL", "CONFIRM"
|
m[0], m[1], m[2] = "newgame", "CANCEL", "CONFIRM"
|
||||||
|
@ -194,27 +211,34 @@ function menuButtonPress(name, index)
|
||||||
|
|
||||||
elseif name == "START NEW GAME" or name == "CONFIRM" then
|
elseif name == "START NEW GAME" or name == "CONFIRM" then
|
||||||
deaths = 0
|
deaths = 0
|
||||||
map = "data/1. HOOK.json"
|
beginStartCutscene(true)
|
||||||
addMapSave("data/1. HOOK.json")
|
--map = "data/1. HOOK.json"
|
||||||
|
--addMapSave("data/1. HOOK.json")
|
||||||
|
|
||||||
elseif name == "CONTINUE" then
|
elseif name == "CONTINUE" then
|
||||||
addMap(map)
|
addMap(map)
|
||||||
mode = "game"
|
mode = "game"
|
||||||
|
|
||||||
|
elseif name == "START CUTSCENE" then
|
||||||
|
beginStartCutscene(false)
|
||||||
|
elseif name == "END CUTSCENE" then
|
||||||
|
beginEndCutscene()
|
||||||
|
|
||||||
elseif name == "EXTRAS" then
|
elseif name == "EXTRAS" then
|
||||||
if menu == "musicbox" then
|
|
||||||
song:load("sfx/song1")
|
|
||||||
song:play(0)
|
|
||||||
end
|
|
||||||
local m = {}
|
local m = {}
|
||||||
--barpos = 160
|
--barpos = 160
|
||||||
--logopos = -112
|
--logopos = -112
|
||||||
m[0],m[1], m[2], m[3], m[4], m[5], m[6] = "extras", "BACK", "MUSIC BOX", "ABOUT THE DEV", "END CUTSCENE", "START CUTSCENE", "LEVEL SELECT"
|
m[0],m[1], m[2], m[3], m[4], m[5], m[6] = "extras", "BACK", "MUSIC BOX", "LINKS", "END CUTSCENE", "START CUTSCENE", "LEVEL SELECT"
|
||||||
if playdate.file.exists("bonusLevels.rocketbytes") then
|
if playdate.file.exists("bonusLevels.rocketbytes") then
|
||||||
m[6] = "EXTRA LEVELS"
|
m[6] = "EXTRA LEVELS"
|
||||||
end
|
end
|
||||||
createMenu(m)
|
createMenu(m)
|
||||||
|
elseif name == "LINKS" then
|
||||||
|
local m = {}
|
||||||
|
m[0],m[1] = "qrs", "BACK"
|
||||||
|
createMenu(m)
|
||||||
|
logopos = -112
|
||||||
|
barpos = 160
|
||||||
elseif name == "USER LEVELS" then
|
elseif name == "USER LEVELS" then
|
||||||
page = 0
|
page = 0
|
||||||
customLoad()
|
customLoad()
|
||||||
|
@ -236,7 +260,7 @@ function menuButtonPress(name, index)
|
||||||
elseif name == "BACK" or name == "CANCEL" then
|
elseif name == "BACK" or name == "CANCEL" then
|
||||||
if menu == "musicbox" then
|
if menu == "musicbox" then
|
||||||
local m = {}
|
local m = {}
|
||||||
m[0],m[1], m[2], m[3], m[4], m[5] = "extras", "BACK", "MUSIC BOX", "END CUTSCENE", "START CUTSCENE", "LEVEL SELECT"
|
m[0],m[1], m[2], m[3], m[4], m[5], m[6] = "extras", "BACK", "MUSIC BOX", "LINKS", "END CUTSCENE", "START CUTSCENE", "LEVEL SELECT"
|
||||||
if playdate.file.exists("bonusLevels.rocketbytes") then
|
if playdate.file.exists("bonusLevels.rocketbytes") then
|
||||||
m[6] = "EXTRA LEVELS"
|
m[6] = "EXTRA LEVELS"
|
||||||
end
|
end
|
||||||
|
@ -246,11 +270,12 @@ function menuButtonPress(name, index)
|
||||||
local m = {}
|
local m = {}
|
||||||
--barpos = 160
|
--barpos = 160
|
||||||
--logopos = -112
|
--logopos = -112
|
||||||
m[0],m[1], m[2], m[3], m[4], m[5] = "extras", "BACK", "MUSIC BOX", "END CUTSCENE", "START CUTSCENE", "LEVEL SELECT"
|
m[0],m[1], m[2], m[3], m[4], m[5], m[6] = "extras", "BACK", "MUSIC BOX", "LINKS", "END CUTSCENE", "START CUTSCENE", "LEVEL SELECT"
|
||||||
if playdate.file.exists("bonusLevels.rocketbytes") then
|
|
||||||
m[6] = "EXTRA LEVELS"
|
|
||||||
end
|
|
||||||
createMenu(m)
|
createMenu(m)
|
||||||
|
elseif menu == "qrs" or menu == "data" then
|
||||||
|
local m = {}
|
||||||
|
m[0],m[1], m[2], m[3], m[4], m[5], m[6] = "extras", "BACK", "MUSIC BOX", "LINKS", "END CUTSCENE", "START CUTSCENE", "LEVEL SELECT"
|
||||||
|
createMenu(m)
|
||||||
else
|
else
|
||||||
createMenu(mainmenu)
|
createMenu(mainmenu)
|
||||||
end
|
end
|
||||||
|
|
|
@ -81,4 +81,6 @@ function updateBox()
|
||||||
createMenu(songlist)
|
createMenu(songlist)
|
||||||
song:stop()
|
song:stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
processExplosions()
|
||||||
end
|
end
|
|
@ -72,13 +72,13 @@ function processStars(_x,_y)
|
||||||
if star.x < _x then
|
if star.x < _x then
|
||||||
star.x += 420
|
star.x += 420
|
||||||
elseif star.x > _x + 420 then
|
elseif star.x > _x + 420 then
|
||||||
star.x = _x
|
star.x -= 420
|
||||||
end
|
end
|
||||||
|
|
||||||
if star.y < _y then
|
if star.y < _y then
|
||||||
star.y += 260
|
star.y += 260
|
||||||
elseif star.y > _y + 260 then
|
elseif star.y > _y + 260 then
|
||||||
star.y = _y
|
star.y -= 260
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -102,4 +102,12 @@ function processExplosions()
|
||||||
break
|
break
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function applyStarSpeed(_x,_y)
|
||||||
|
for star = 1, #stars do
|
||||||
|
star = stars[star]
|
||||||
|
star.dx+=_x
|
||||||
|
star.dy+=_y
|
||||||
|
end
|
||||||
end
|
end
|
|
@ -40,7 +40,6 @@ local function die()
|
||||||
sprRocket:moveTo(startpos.x, startpos.y)
|
sprRocket:moveTo(startpos.x, startpos.y)
|
||||||
miniExplode(startpos.x,startpos.y)
|
miniExplode(startpos.x,startpos.y)
|
||||||
sfxDie:play()
|
sfxDie:play()
|
||||||
createStars()
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function addPlayer(_x,_y,__x,__y)
|
function addPlayer(_x,_y,__x,__y)
|
||||||
|
@ -57,7 +56,6 @@ function addPlayer(_x,_y,__x,__y)
|
||||||
sprRocket:moveTo(_x,_y)
|
sprRocket:moveTo(_x,_y)
|
||||||
sprRocket:add()
|
sprRocket:add()
|
||||||
sprRocket:setVisible(true)
|
sprRocket:setVisible(true)
|
||||||
createStars()
|
|
||||||
resetButton = playdate.getSystemMenu():addMenuItem("respawn", function()
|
resetButton = playdate.getSystemMenu():addMenuItem("respawn", function()
|
||||||
die()
|
die()
|
||||||
end)
|
end)
|
||||||
|
@ -117,7 +115,6 @@ local function playerWin()
|
||||||
createMenu(mainmenu)
|
createMenu(mainmenu)
|
||||||
end
|
end
|
||||||
|
|
||||||
createStars()
|
|
||||||
end)
|
end)
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -26,10 +26,6 @@ function loadBlades(_blades)
|
||||||
b.saw:setCollideRect(0,0,16,16)
|
b.saw:setCollideRect(0,0,16,16)
|
||||||
b.saw:add()
|
b.saw:add()
|
||||||
|
|
||||||
local a = gfx.animator.new(b.speed*1000, b.start, b.ends)
|
|
||||||
|
|
||||||
b.saw:setAnimator(a)
|
|
||||||
|
|
||||||
b.t1 = gfx.sprite.new(imgTarget)
|
b.t1 = gfx.sprite.new(imgTarget)
|
||||||
b.t1:moveTo(b.start)
|
b.t1:moveTo(b.start)
|
||||||
b.t2 = gfx.sprite.new(imgTarget)
|
b.t2 = gfx.sprite.new(imgTarget)
|
||||||
|
@ -134,10 +130,7 @@ function updateSaws()
|
||||||
|
|
||||||
if pos == b.start then
|
if pos == b.start then
|
||||||
local a = gfx.animator.new(b.speed*1000, b.start, b.ends)
|
local a = gfx.animator.new(b.speed*1000, b.start, b.ends)
|
||||||
|
a.reverses = true
|
||||||
b.saw:setAnimator(a)
|
|
||||||
elseif pos == b.ends then
|
|
||||||
local a = gfx.animator.new(b.speed*1000, b.ends, b.start)
|
|
||||||
|
|
||||||
b.saw:setAnimator(a)
|
b.saw:setAnimator(a)
|
||||||
end
|
end
|
||||||
|
|
BIN
Source/gfx/aboutme.png
Normal file
BIN
Source/gfx/aboutme.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
|
@ -1,6 +1,6 @@
|
||||||
--metrics={"baseline":26,"xHeight":2,"capHeight":2,"pairs":{},"left":[],"right":[]}
|
--metrics={"baseline":26,"xHeight":2,"capHeight":2,"pairs":{},"left":[],"right":[]}
|
||||||
datalen=4300
|
datalen=4404
|
||||||
data=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
|
data=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
|
||||||
width=14
|
width=14
|
||||||
height=18
|
height=18
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--metrics={"baseline":26,"xHeight":2,"capHeight":2,"pairs":{},"left":[],"right":[]}
|
--metrics={"baseline":26,"xHeight":2,"capHeight":2,"pairs":{},"left":[],"right":[]}
|
||||||
datalen=4360
|
datalen=4412
|
||||||
data=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
|
data=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
|
||||||
width=14
|
width=14
|
||||||
height=18
|
height=18
|
||||||
|
|
||||||
|
|
BIN
Source/gfx/endplatform.png
Normal file
BIN
Source/gfx/endplatform.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 754 B |
BIN
Source/sfx/accept.wav
Normal file
BIN
Source/sfx/accept.wav
Normal file
Binary file not shown.
BIN
Source/sfx/cutsceneblip.wav
Normal file
BIN
Source/sfx/cutsceneblip.wav
Normal file
Binary file not shown.
BIN
Source/sfx/cutsceneexplosion.wav
Normal file
BIN
Source/sfx/cutsceneexplosion.wav
Normal file
Binary file not shown.
BIN
Source/sfx/select.wav
Normal file
BIN
Source/sfx/select.wav
Normal file
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue