//RetakeG ReferenceScript { Script=FreePlayDefend Source=Global ReturnState=Base Conditions { if InTriggerArea "Ignore_Baddies" == 0 and if PlayerOnObject "small_box_05" == 0 and if PlayerOnObject "small_box_06" == 0 and if InTriggerArea "Upper" == 0 and if PlayerInTriggerArea "Upper" == 0 } } state Base { Conditions { if OnGround == 1 and if InTriggerArea "Upper" == 0 and if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "small_box_05" == 0 and if PlayerOnObject "small_box_06" == 0 goto GoToBigJumpLocator if PlayerOnObject "small_box_05" == 1 goto GoToRightBox if PlayerOnObject "small_box_06" == 1 goto GoToLeftBox } Actions { FollowPlayer "0.75" } } state GoToRightBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "small_box_05" == 0 goto Base if OnObject "small_box_06" == 1 goto OnRightBox } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" GoToLocator "name" "right_box" } } state OnRightBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "small_box_05" == 0 goto Base if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "small_box_05" == 0 goto BigJumpRight if PlayerUsingForce "small_box_06" == 1 goto UseForceRightBox if OnObject "small_box_06" == 0 goto GoToRightBox } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" FacePlayer } } state UseForceRightBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "small_box_05" == 0 goto Base if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "small_box_05" == 0 goto BigJumpRight if PlayerUsingForce "small_box_06" == 0 goto GoToRightBox if OnObject "small_box_06" == 0 goto GoToRightBox } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" UseForce "small_box_05" } } state BigJumpRight { Conditions { } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" BigJumpToLocator "name=Top_Right" "jump_factor=0.5" SetState "Base" } } state GoToLeftBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "small_box_06" == 0 goto Base if OnObject "small_box_05" == 1 goto OnLeftBox } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" GoToLocator "name" "left_box" } } state OnLeftBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "small_box_06" == 0 goto Base if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "small_box_06" == 0 goto BigJumpLeft if PlayerUsingForce "small_box_05" == 1 goto UseForceLeftBox if OnObject "small_box_05" == 0 goto GoToLeftBox } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" FacePlayer } } state UseForceLeftBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "small_box_06" == 0 goto Base if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "small_box_06" == 0 goto BigJumpLeft if PlayerUsingForce "small_box_05" == 0 goto OnLeftBox if OnObject "small_box_05" == 0 goto GoToLeftBox } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" UseForce "small_box_06" } } state BigJumpLeft { Conditions { } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" BigJumpToLocator "name=Top_Left" "jump_factor=0.5" SetState "Base" } } state GoToBigJumpLocator { Conditions { if PlayerInTriggerArea "Upper" == 0 goto Base } Actions { CycleCharacter "time=0.5" "Catagory=Jedi" SetLocator "name=Bottom_Centre" GoToLocator SetLocator "name=Top_Centre" BigJumpToLocator SetState "Base" } }