Adventure Creator  1.79.1
An adventure game toolkit for Unity, by Chris Burton, ICEBOX Studios 2013-2022
AC.AnimEngine Class Reference
Inheritance diagram for AC.AnimEngine:
AC.AnimEngine_Legacy AC.AnimEngine_Mecanim AC.AnimEngine_Sprites2DToolkit AC.AnimEngine_SpritesUnity AC.AnimEngine_SpritesUnityComplex

Public Member Functions

virtual void Declare (AC.Char _character)
 Initialises the engine. More...
 
virtual void CharSettingsGUI ()
 
virtual void CharExpressionsGUI ()
 
virtual PlayerData SavePlayerData (PlayerData playerData, Player player)
 
virtual void LoadPlayerData (PlayerData playerData, Player player)
 
virtual NPCData SaveNPCData (NPCData npcData, NPC npc)
 
virtual void LoadNPCData (NPCData npcData, NPC npc)
 
virtual void ActionCharAnimGUI (ActionCharAnim action, List< ActionParameter > parameters=null)
 
virtual void ActionCharAnimAssignValues (ActionCharAnim action, List< ActionParameter > parameters)
 
virtual float ActionCharAnimRun (ActionCharAnim action)
 
virtual void ActionCharAnimSkip (ActionCharAnim action)
 
virtual void ActionSpeechGUI (ActionSpeech action, Char speaker)
 
virtual void ActionSpeechRun (ActionSpeech action)
 
virtual void ActionSpeechSkip (ActionSpeech action)
 
virtual void ActionAnimGUI (ActionAnim action, List< ActionParameter > parameters)
 
virtual string ActionAnimLabel (ActionAnim action)
 
virtual void ActionAnimAssignValues (ActionAnim action, List< ActionParameter > parameters)
 
virtual float ActionAnimRun (ActionAnim action)
 
virtual void ActionAnimSkip (ActionAnim action)
 
virtual void ActionCharRenderGUI (ActionCharRender action, List< ActionParameter > parameters)
 
virtual void ActionCharRenderGUI (ActionCharRender action)
 
virtual float ActionCharRenderRun (ActionCharRender action)
 
virtual void PlayIdle ()
 
virtual void PlayWalk ()
 
virtual void PlayRun ()
 
virtual void PlayTalk ()
 
virtual void PlayVertical ()
 
virtual void PlayJump ()
 
virtual void PlayTurnLeft ()
 
virtual void PlayTurnRight ()
 
virtual void TurnHead (Vector2 angles)
 Rotates a character's head. More...
 
virtual void OnSetExpression ()
 Called whenever the character's Expression is changed. It can be read with CurrentExpression. More...
 
virtual bool RequiresRememberAnimator (ActionCharAnim action)
 
virtual bool RequiresRememberAnimator (ActionAnim action)
 
virtual void AddSaveScript (Action _action, GameObject _gameObject)
 Adds any relevent Remember scripts onto a GameObject referenced by an animation-based Action. More...
 

Public Attributes

TurningStyle turningStyle = TurningStyle.Script
 
bool isSpriteBased = false
 

Protected Attributes

AC.Char character
 

Properties

bool updateHeadAlways [get, protected set]
 
virtual bool IKEnabled [get]
 

Detailed Description

A base class for all Animation Engines. Subclasses of this script contain functions to perform standard character animations (e.g "Idle", "Walk", etc) and are called as appropriately by Player / NPC. It also contains code that alter each of the various animation Actions (e.g. ActionAnim). To create a new animation engine to control an NPC or Player, create a new subclass of this script and set the character's animationEngine to AnimationEngine.Custom. Then set the character's customAnimationClass string to match the name of the new subclass.

Member Function Documentation

◆ AddSaveScript()

virtual void AC.AnimEngine.AddSaveScript ( Action  _action,
GameObject  _gameObject 
)
virtual

Adds any relevent Remember scripts onto a GameObject referenced by an animation-based Action.

Parameters
_actionThe Action referencing the GameObject
_gameObjectThe GameObject being referenced

Reimplemented in AC.AnimEngine_Mecanim, and AC.AnimEngine_SpritesUnityComplex.

◆ Declare()

virtual void AC.AnimEngine.Declare ( AC.Char  _character)
virtual

Initialises the engine.

Parameters
_characterThe Player/NPC that this instance is controlling.

Reimplemented in AC.AnimEngine_SpritesUnity, AC.AnimEngine_SpritesUnityComplex, AC.AnimEngine_Mecanim, and AC.AnimEngine_Sprites2DToolkit.

◆ OnSetExpression()

virtual void AC.AnimEngine.OnSetExpression ( )
virtual

Called whenever the character's Expression is changed. It can be read with CurrentExpression.

Reimplemented in AC.AnimEngine_Legacy, and AC.AnimEngine_Mecanim.

◆ PlayIdle()

virtual void AC.AnimEngine.PlayIdle ( )
virtual

◆ PlayJump()

virtual void AC.AnimEngine.PlayJump ( )
virtual

Plays the character's 'Jump' animation.

Reimplemented in AC.AnimEngine_Mecanim, AC.AnimEngine_Legacy, and AC.AnimEngine_SpritesUnityComplex.

◆ PlayRun()

virtual void AC.AnimEngine.PlayRun ( )
virtual

◆ PlayTalk()

virtual void AC.AnimEngine.PlayTalk ( )
virtual

◆ PlayTurnLeft()

virtual void AC.AnimEngine.PlayTurnLeft ( )
virtual

Plays the character's 'Spot-turn left' animation.

Reimplemented in AC.AnimEngine_Legacy, and AC.AnimEngine_SpritesUnityComplex.

◆ PlayTurnRight()

virtual void AC.AnimEngine.PlayTurnRight ( )
virtual

Plays the character's 'Spot-turn right' animation.

Reimplemented in AC.AnimEngine_Legacy, and AC.AnimEngine_SpritesUnityComplex.

◆ PlayVertical()

virtual void AC.AnimEngine.PlayVertical ( )
virtual

Called every frame to animate the character based on height change. The character's height change can be found with GetHeightChange ().

Reimplemented in AC.AnimEngine_Mecanim, and AC.AnimEngine_SpritesUnityComplex.

◆ PlayWalk()

virtual void AC.AnimEngine.PlayWalk ( )
virtual

◆ TurnHead()

virtual void AC.AnimEngine.TurnHead ( Vector2  angles)
virtual

Rotates a character's head.

Parameters
anglesThe new angles to rotate the head to

Reimplemented in AC.AnimEngine_Legacy, AC.AnimEngine_Mecanim, AC.AnimEngine_SpritesUnityComplex, and AC.AnimEngine_SpritesUnity.

Member Data Documentation

◆ isSpriteBased

bool AC.AnimEngine.isSpriteBased = false

If True, then the engine is sprite-based, and character's will rely on their spriteChild for animation

◆ turningStyle

TurningStyle AC.AnimEngine.turningStyle = TurningStyle.Script

How character turning is handled (Linear, RootMotion, Script)

Property Documentation

◆ updateHeadAlways

bool AC.AnimEngine.updateHeadAlways
getprotected set

If True, then the TurnHead method will be called every frame regardless of whether or not the head is looking at something