Game Development Reference
In-Depth Information
Adding instance functions
With helper functions and the main update loop out of the way, we can modify our FSM
mapping to point to our new local functions:
FiniteStateMachine.lua :
function FiniteStateMachine.new()
local fsm = {};
...
-- The FiniteStateMachine's accessor functions.
fsm.AddState = FiniteStateMachine.AddState;
fsm.AddTransition = FiniteStateMachine.AddTransition;
fsm.ContainsState = FiniteStateMachine.ContainsState;
fsm.ContainsTransition =
FiniteStateMachine.ContainsTransition;
fsm.GetCurrentStateName =
FiniteStateMachine.GetCurrentStateName;
fsm.GetCurrentStateStatus =
FiniteStateMachine.GetCurrentStateStatus;
fsm.SetState = FiniteStateMachine.SetState;
fsm.Update = FiniteStateMachine.Update;
return fsm;
end
Search WWH ::




Custom Search