SymOntoClay is game AI experimental open source engine.


  Warning logo Purely experimental and very unstable project developed by only one person
Please read the page before starting

BaseBehavior Class

Namespace: SymOntoClay.UnityAsset.BaseBehaviors
Assembly: Assembly-CSharp

Contains base recommended behavior.

Methods

AddStopFact(IMonitorLogger)

Adds fact that the NPC has stopped itself. This method can be called both in main and in usual (not main) thread.

AddWalkingFact(IMonitorLogger)

Adds fact that the NPC has started walking. This method can be called both in main and in usual (not main) thread.

AddRunningFact(IMonitorLogger)

Adds fact that the NPC has started running. This method can be called both in main and in usual (not main) thread.

AddHoldFact(IMonitorLogger,String)

Adds fact that the NPC holds something in his hands. This method can be called both in main and in usual (not main) thread.

RemoveHoldFact(IMonitorLogger)

Removes fact that the NPC holds something in his hands. This method can be called both in main and in usual (not main) thread.

StartRepeatingWalkingStepsSoundInMainThread(IMonitorLogger)

Starts pushing sound facts that the NPS is walking. This method should be called only in main thread.

StartRepeatingWalkingStepsSoundInUsualThread(IMonitorLogger)

Starts pushing sound facts that the NPS is walking. This method should be called only in usual (not main) thread.

StartRepeatingRunningStepsSoundInMainThread(IMonitorLogger)

Starts pushing sound facts that the NPS is running. This method should be called only in main thread.

StartRepeatingRunningStepsSoundInUsualThread(IMonitorLogger)

Starts pushing sound facts that the NPS is running. This method should be called only in usual (not main) thread.

StopRepeatingStepsSoundInMainThread(IMonitorLogger)

Stops pushing sound facts that the NPS is walking or running. This method should be called only in main thread.

StopRepeatingStepsSoundInUsualThread(IMonitorLogger)

Stops pushing sound facts that the NPS is walking or running. This method should be called only in usual (not main) thread.

StartRepeatingShotSoundInMainThread(IMonitorLogger)

Starts pushing sound facts that something is shooting. This method should be called only in main thread.

StartRepeatingShotSoundInUsualThread(IMonitorLogger)

Starts pushing sound facts that something is shooting. This method should be called only in usual (not main) thread.

StopRepeatingShotSoundInMainThread()

Stops pushing sound facts that something is shooting. This method should be called only in main thread.

StopRepeatingShotSoundInUsualThread()

Stops pushing sound facts that something is shooting. This method should be called only in usual (not main) thread.

AddHeShootsFact(IMonitorLogger)

Adds fact that the NPC shoots. This method can be called both in main and in usual (not main) thread.

RemoveHeShootsFact(IMonitorLogger)

Removes fact that the NPC shoots. This method can be called both in main and in usual (not main) thread.

AddHeIsReadyForShootFact(IMonitorLogger)

Adds fact that the NPC is ready for shooting. This method can be called both in main and in usual (not main) thread.

RemoveHeIsReadyForShootFact(IMonitorLogger)

Removes fact that the NPC is ready for shooting. This method can be called both in main and in usual (not main) thread.

RemoveAllShootFacts(IMonitorLogger)

Removes all facts related to shooting.

ProcessDeath(IMonitorLogger)

Proceses death for NPC. This method can be called both in main and in usual (not main) thread.

GetMethodId()

Returns integer id which is unique for the component. It can be helpful for debugging host methods.

RunInMainThread(Action)
RunInMainThread(Func<>)
RunInMainThread(Action)

Executes handler in main thread context.

RunInMainThread<TResult>(Func<>)

Executes handler in main thread context.

CanBeTakenBy(IMonitorLogger,IEntity)

Checks that It can be taken by the NPC.

AddToManualControl(IMonitorLogger,IGameObjectBehavior,DeviceOfBiped)

Adds a game object into manual controlled area of the NPC.

AddToManualControl(IMonitorLogger,IGameObjectBehavior,IList<DeviceOfBiped>)

Adds a game object into manual controlled area of the NPC.

RemoveFromManualControl(IMonitorLogger,IGameObjectBehavior)

Removes a game object from manual controlled area of an NPC.

AddToBackpack(IMonitorLogger,IGameObject)

Adds a game object into backpack.

RemoveFromBackpack(IMonitorLogger,IGameObject)

Removes game object from backpack.

GetRotationToPositionInUsualThread(IMonitorLogger,Vector3)

Creates a rotation with the specified forward and upwards directions. It is a wrapper on Quaternion.LookRotation. This method should be called only in usual (not main) thread.

GetRotationToPositionInUsualThread(IMonitorLogger,Vector3)

Creates a rotation with the specified forward and upwards directions. It is a wrapper on Quaternion.LookRotation. This method should be called only in usual (not main) thread.

GetRotationToPositionInMainThread(IMonitorLogger,Vector3)

Creates a rotation with the specified forward and upwards directions. It is a wrapper on Quaternion.LookRotation. This method should be called only in main thread.

GetRotationToPositionInMainThread(IMonitorLogger,Vector3)

Creates a rotation with the specified forward and upwards directions. It is a wrapper on Quaternion.LookRotation. This method should be called only in main thread.