public void ResetEntitasCalled(int phaseName) { if (mEntitasCallbackers != default) { mEntitasCallbacker = mEntitasCallbackers[RoleInputPhase]; if (mEntitasCallbacker != default) { mEntitasCallbacker.called = 0; } } }
public void ActiveEntitasPhase(int phaseName, bool isActive) { if (mEntitasCallbackers == default) { return; } RoleEntitasCallbacker item = mEntitasCallbackers[phaseName]; if (item != default) { item.actived = isActive; } }
public void AddEntitasCallback(int phaseName, Action callback) { RoleEntitasCallbacker item; if (mEntitasCallbackers.IsContainsKey(phaseName)) { item = mEntitasCallbackers[phaseName]; } else { item = new RoleEntitasCallbacker(); mEntitasCallbackers[phaseName] = item; } item.callbacker += callback; }
public void AdvancedInputPhase(int rolePhase, int allowCalled) { if (mEntitasCallbackers != default) { mEntitasCallbacker = mEntitasCallbackers[rolePhase]; if ((mEntitasCallbacker != default) && mEntitasCallbacker.actived) { if (allowCalled == 0) { mEntitasCallbacker.callbacker?.Invoke(); } else { if (mEntitasCallbacker.called < allowCalled) { mEntitasCallbacker.callbacker?.Invoke(); mEntitasCallbacker.called++; } } } } }
public void ExecuteBySceneComponent(ref Action sceneCompMethod, int calledMustValue = 1) { if (mEntitasCallbackers != default) { mEntitasCallbacker = mEntitasCallbackers[RoleInputPhase]; if (mEntitasCallbacker != default) { if (mEntitasCallbacker.called >= calledMustValue) { sceneCompMethod?.Invoke(); mEntitasCallbacker.called = 0; } else { sceneCompMethod?.Invoke(); } } else { sceneCompMethod?.Invoke(); } } }