Book Image

Mastering Unity Scripting

By : Alan Thorn
Book Image

Mastering Unity Scripting

By: Alan Thorn

Overview of this book

Table of Contents (17 chapters)
Mastering Unity Scripting
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Finite State Machines in C# – getting started


Now that the FSM for animation is completed, we should turn our attention to an FSM in C# that governs the behavior of the enemy as well as initiates our triggers in the Mecanim graph to play the appropriate animations (walk and run) at the right time. To begin the implementation, add the following public enumeration to the top of the AI_Enemy.cs script file, as shown in the following code sample 7-1. This enumeration defines all the possible states in the FSM for the enemy, and each state is assigned its unique string hash code; that is, the IDLE state is assigned the value of 2081823275, which is the hash code for the string IDLE, and so on. This will be important later to work with Mecanim and specifically to initiate triggers. You can retrieve the hash code for a string using the StringToHash function of the Animator class, as shown here:

//Define possible states for enemy
public enum AI_ENEMY_STATE {IDLE = 2081823275,
                   ...