| | |
| | | for (int i = immediatelyActionList.Count - 1; i >= 0; i--) |
| | | { |
| | | var action = immediatelyActionList[i]; |
| | | if (action.IsFinished()) |
| | | { |
| | | removeIndexList.Add(i); |
| | | } |
| | | else |
| | | if (!action.IsFinished()) |
| | | { |
| | | action.Run(); |
| | | continue; |
| | | } |
| | | |
| | | removeIndexList.Add(i); |
| | | } |
| | | |
| | | for (int i = removeIndexList.Count - 1; i >= 0; i--) |
| | |
| | | |
| | | public void HaveRest() |
| | | { |
| | | for (int i = 0; i < immediatelyActionList.Count; i++) |
| | | { |
| | | immediatelyActionList[i].ForceFinish(); |
| | | } |
| | | |
| | | immediatelyActionList.Clear(); |
| | | |
| | | if (currentRecordAction != null) |
| | | { |
| | | currentRecordAction.ForceFinish(); |
| | | } |
| | | currentRecordAction = null; |
| | | recordActionQueue.Clear(); |
| | | |
| | | while (recordActionQueue.Count > 0) |
| | | { |
| | | recordActionQueue.Dequeue().ForceFinish(); |
| | | } |
| | | } |
| | | |
| | | public void Release() |