ZH TW CSharp Enums - LIHACHTETAN/ClassicUO-Bad-Newbie-CSharp-Scripts-IDE GitHub Wiki
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
枚舉和位標誌
enum 指定命名整數值。用於場景狀態很方便。位元標誌通常具有兩個值的冪和一個[Flags]屬性。將數字轉換為枚舉本身並不能保證該值已被聲明。
簡單範例 (Example.cs)
請將此範例另存為 Example.cs,並與本頁其他範例分開執行。
Example.cs:
// PROJECT-EXAMPLE
State state = State.Ready;
System.Console.WriteLine(state);
enum State { Idle, Ready }
結果:
Ready
enum ScriptMode { Idle, Searching, Completed }
ScriptMode mode = ScriptMode.Searching;
UO.Print(mode.ToString());
[Flags]
enum Checks { None = 0, Health = 1, Weight = 2, Target = 4 }
Checks enabled = Checks.Health | Checks.Weight;
bool checkHealth = (enabled & Checks.Health) != 0;
UO.Print($"Enabled={enabled}, health={checkHealth}");
對於接口,使用清晰的狀態名稱。 Completed值描述了您的演算法狀態,不會自動確認遊戲伺服器的回應。