/// <summary> /// 执行更新 /// </summary> /// <param name="deltaTime"></param> protected virtual void DoUpdate(float deltaTime) { AbstractController top = Peek <AbstractController>(); if (top != null) { top.ControllerStack = this; if (top != selectedController) { if (selectedController != null) { OnControllerUnselect(selectedController); } OnControllerSelect(top); } OnControllerUpdate(top, deltaTime); } else if (selectedController != null) { OnControllerUnselect(selectedController); } selectedController = top; }
/// <summary> /// 控制器取消选中 /// </summary> /// <param name="controller"></param> protected virtual void OnControllerUnselect(AbstractController controller) { controller.OnControllerUnselect(); }
/// <summary> /// 控制器更新 /// </summary> /// <param name="controller"></param> /// <param name="deltaTime"></param> protected virtual void OnControllerUpdate(AbstractController controller, float deltaTime) { controller.OnControllerUpdate(deltaTime); }