hallucination_hot_spring = {} function hallucination_hot_spring.init() if randomChance(3.0/4.0) then DestroyNamedSprite("water_ionia") gamestate.ionia_in_water = false else gamestate.ionia_in_water = true end end function hallucination_hot_spring.off_right() ChangeMap("hallucination_cliff", "fromLeft") end function hallucination_hot_spring.enter_hot_spring() gamestate.went_in_hot_spring = true if gamestate.ionia_in_water then -- Soft cutscene start; don't show bars but do take away control DisablePlayerControl() character():halt(getPlayerSprite()) -- Leave the rest of the party behind and have Lucas wade into the hot spring character():breakUpParty(getPlayerSprite()) character():moveInDirection(getPlayerSprite(), Direction.UP) Delay(500) character():stopDirecting(getPlayerSprite()) 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") Delay(2000) SetAnimation("lucas", "submerge!") 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) DisablePlayerControl() Delay(500) RemoveFadeout(1000) EnablePlayerControl() end end function hallucination_hot_spring.testing_lucas_resurface() SetAnimation("lucas", "drown") Delay(3000) SetAnimation("lucas", "resurface!") PlaySound("splash_resurface.wav") WaitForAnimation("lucas") end