private void _InvokePluginEvent(EFsmCheckPoints checkpoints) { for (int i = 0; i < mPlugins.Count; i++) { mPlugins[i].OnCheckPoints(checkpoints, this, mEventExtraValues); } }
public void OnCheckPoints(EFsmCheckPoints checkpoint, StateMachine fsm, Dictionary <string, object> extraValues) { switch (checkpoint) { case EFsmCheckPoints.OnExit: case EFsmCheckPoints.OnEnter: { fsm.StateData.timeSinceEnter = 0; return; } case EFsmCheckPoints.OnUpdate: { float dt = (float)extraValues["dt"]; fsm.StateData.timeSinceEnter += dt; return; } } }