/* Spino Flee Behaviour // */ machine SpinoFlee { default state Start { action SetAutoMovementBlend(true) action SetSpeedModifier(1.0) action SetRunMode(true) transition AcquireTarget("aggressor") { action StartLook("LookTarget", 1.0) action SendEnclosureEvent("escape_predator") goto FoundTarget } } state FoundTarget { transition IsTargetVehicle() { call AttackVehicle Start } action AvoidTarget(40.0, true) transition InTargetProximity(39.0, true) == false { action SetWander() goto Wander } } state Wander { transition HasArrived() { action SetWander() goto Wander } transition InTargetProximity(38.0, true) { goto FoundTarget } } ;------------------------ Exit States Begin ---------------------- exitstart state CleanUp { action StopLook() transition { goto CleanUpEnd } } exitend state CleanUpEnd { } ;------------------------ Exit States End ---------------------- }