//MaulA ReferenceScript { Script=Jedi Source=Global ReturnState=Base Conditions { if Message "MaulOnTheRun" == 1 and if PlayerOnObject "mid" == 0 and if PlayerOnObject "mid1" == 0 and if InTriggerArea "Upper" == 0 and if PlayerInTriggerArea "Upper" == 0 } } state Base { Conditions { if Message "MaulOnTheRun" == 0 and if PlayerToLocator "Target" < 1.5 goto SafeLocator if OnGround == 1 and if InTriggerArea "Upper" == 0 and if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "mid" == 0 and if PlayerOnObject "mid1" == 0 goto GoToBigJumpLocator if PlayerOnObject "mid" == 1 goto GoToRightBox if PlayerOnObject "mid1" == 1 goto GoToLeftBox } Actions { FollowPlayer "0.75" } } state SafeLocator { Conditions { if Message "MaulOnTheRun" == 1 goto Base if PlayerToLocator "Target" > 1.5 goto Base } Actions { GoToLocator "name" "Safe" } } state GoToRightBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "mid" == 0 goto Base if OnObject "mid1" == 1 goto OnRightBox } Actions { GoToLocator "name" "right_box" } } state OnRightBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "mid" == 0 goto Base if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "mid" == 0 goto BigJumpRight if PlayerUsingForce "mid1" == 1 goto UseForceRightBox if OnObject "mid1" == 0 goto GoToRightBox } Actions { FacePlayer } } state UseForceRightBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "mid" == 0 goto Base if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "mid" == 0 goto BigJumpRight if PlayerUsingForce "mid1" == 0 goto GoToRightBox if OnObject "mid1" == 0 goto GoToRightBox } Actions { UseForce "mid" } } state BigJumpRight { Conditions { } Actions { BigJumpToLocator "name=Top_Right" "jump_factor=0.5" SetState "Base" } } state GoToLeftBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "mid1" == 0 goto Base if OnObject "mid" == 1 goto OnLeftBox } Actions { GoToLocator "name" "left_box" } } state OnLeftBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "mid1" == 0 goto Base if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "mid1" == 0 goto BigJumpLeft if PlayerUsingForce "mid" == 1 goto UseForceLeftBox if OnObject "mid" == 0 goto GoToLeftBox } Actions { FacePlayer } } state UseForceLeftBox { Conditions { if PlayerInTriggerArea "Upper" == 0 and if PlayerOnObject "mid1" == 0 goto Base if PlayerInTriggerArea "Upper" == 1 and if PlayerOnGround == 1 and if PlayerOnObject "mid1" == 0 goto BigJumpLeft if PlayerUsingForce "mid" == 0 goto GoToLeftBox if OnObject "mid" == 0 goto GoToLeftBox } Actions { UseForce "mid1" } } state BigJumpLeft { Conditions { } Actions { BigJumpToLocator "name=Top_Left" "jump_factor=0.5" SetState "Base" } } state GoToBigJumpLocator { Conditions { if PlayerInTriggerArea "Upper" == 0 goto Base } Actions { SetLocator "name=Bottom_Centre" GoToLocator SetLocator "name=Top_Centre" BigJumpToLocator SetState "Base" } }