Untitled
unknown
plain_text
2 years ago
1.1 kB
6
Indexable
public class UI { } public class Manager { private Dictionary<UI, int> flags = new Dictionary<UI, int>(); public void TryHideByFlag(UI u) { flags[u]--; if (flags[u]< 0) { // hide ui } } public void TryShowByFlag(UI u) { flags[u]++; if (flags[u] >= 0) { flags[u] = 0; // show ui } } void OpenUI(UI u) { // 根据表里的互斥关系处理,,, List<UI> mutexUI = new List<UI>(); foreach (var ui in mutexUI) { TryHideByFlag(u); } } void CloseUI(UI u) { // 根据表里的互斥关系处理,,, List<UI> mutexUI = new List<UI>(); foreach (var ui in mutexUI) { TryShowByFlag(u); } } // 根据相机状态处理,,, void CameraState(int a) { if (a == 1) { // TryShowByFlag(xxxui); } if (a == 2) { // TryHideByFlag(xxxui); } } }
Editor is loading...