public static void SetFlag(int idx, int flagValue, bool bEvent = true) { if (bEvent && FlagManager.OnSetFlag != null) { FlagManager.OnSetFlag(idx, flagValue); } if (FlagManager.OnSetFlagEveryT != null) { FlagManager.OnSetFlagEveryT(idx, flagValue); } if (FlagManager.flags.ContainsKey(idx)) { FlagManager.flags[idx] = flagValue; } else { FlagManager.flags.Add(idx, flagValue); } if (bEvent && FlagManager.AfterSetFlag != null) { FlagManager.AfterSetFlag(idx, flagValue); } }