Skip to content

RU CSharp Enums

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

Перечисления и битовые флаги

Руководство C# · Примеры UO

enum задаёт именованные целочисленные значения. Его удобно применять для состояний сценария. Битовые флаги обычно имеют значения степеней двойки и атрибут [Flags]. Преобразование числа в enum само по себе не гарантирует, что значение объявлено.

Простой пример (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 описывает ваше состояние алгоритма и не подтверждает ответ игрового сервера автоматически.

Официальная документация: Перечисления и битовые флаги — Microsoft Learn.

Clone this wiki locally