From d5e3bc615b300eb985d59b91ebd1f2f1a4d4e107 Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Fri, 26 Feb 2021 16:47:24 -0500 Subject: Added first underwater map Also spruced up the event that takes you there. Also fixed an issue where transplantParty wouldn't take the medium of the new position into consideration. Also added a constructor to the lua version of vec2i. --- res/scripts/hallucination_hot_spring.lua | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) (limited to 'res/scripts/hallucination_hot_spring.lua') diff --git a/res/scripts/hallucination_hot_spring.lua b/res/scripts/hallucination_hot_spring.lua index df4084c..4e3ca44 100644 --- a/res/scripts/hallucination_hot_spring.lua +++ b/res/scripts/hallucination_hot_spring.lua @@ -15,15 +15,20 @@ end function hallucination_hot_spring.enter_hot_spring() if gamestate.ionia_in_water then - StartCutscene(CutsceneOptions.DO_NOT_CHANGE_ANIMATION) + -- Soft cutscene start; don't show bars but do take away control + getSprite(getPlayerSprite()).controllable = false + character():halt(getPlayerSprite()) + + -- Leave the rest of the party behind and have Lucas wade into the hot spring character():breakUpParty(getPlayerSprite()) - getSprite(getPlayerSprite()).paused = false character():moveInDirection(getPlayerSprite(), Direction.UP) Delay(500) character():stopDirecting(getPlayerSprite()) - getSprite(getPlayerSprite()).paused = true SetDirection("lucas", Direction.DOWN) Delay(1000) + + -- Show the cutscene bars when he gets surprised + StartCutscene(CutsceneOptions.DO_NOT_CHANGE_ANIMATION) ShowExpression("lucas", "surprise") Delay(1000) RemoveExpression("lucas") @@ -32,6 +37,21 @@ function hallucination_hot_spring.enter_hot_spring() Delay(200) PlaySound("splash_submerge.wav") WaitForAnimation("lucas") + Delay(1000) + + -- After we fade to black, move the rest of the party offscreen. + -- We need to remove control again right after the map change because + -- ChangeMap automatically gives it back. + FadeToBlack(1000) + HideCutsceneBars() + SetPosition("kuma", -100, -100) + SetPosition("duster", -100, -100) + SetPosition("boney", -100, -100) + ChangeMap("underwater_start", "spawn", ChangeMapOptions.DO_NOT_FADE) + getSprite(getPlayerSprite()).controllable = false + Delay(500) + RemoveFadeout(1000) + getSprite(getPlayerSprite()).controllable = true end end -- cgit 1.4.1