# MenuOption

# 说明

MenuOption是一个菜单选项类,用于创建和管理菜单中的各种选项,如复选框、滑块、热键等。通常通过Menu类的方法创建和获取。

# 如何使用

Menu* mainMenu = Menu::Create("主菜单");
MenuOption* enableOption = mainMenu->AddCheckBox("启用", true);

if (enableOption->GetBoolean()) {
    // 当选项被启用时执行的代码...
}

# GetBoolean

bool GetBoolean()

获取菜单选项的布尔值。

MenuOption* useQ = mainMenu->AddCheckBox("使用Q", true);
if (useQ->GetBoolean()) {
    // 当启用"使用Q"选项时执行的代码...
}

# GetValue

int GetValue()

获取菜单选项的整数值,通常用于滑块和列表选项。

MenuOption* damageSlider = mainMenu->AddSlider("伤害预测", 50, 0, 100);
int damagePercent = damageSlider->GetValue();

# SetBoolean

void SetBoolean(bool Value)

设置菜单选项的布尔值。

MenuOption* useQ = mainMenu->AddCheckBox("使用Q", false);
// 根据条件启用选项
if (ObjectManager::Player()->GetMana() > 100) {
    useQ->SetBoolean(true);
}

# SetValue

void SetValue(int Value)

设置菜单选项的整数值。

MenuOption* damageSlider = mainMenu->AddSlider("伤害预测", 50, 0, 100);
// 根据游戏状态调整值
damageSlider->SetValue(75);

# SetMenuColor

void SetMenuColor(int color)

设置菜单选项的颜色。

MenuOption* dangerousOption = mainMenu->AddCheckBox("危险技能", true);
dangerousOption->SetMenuColor(MAKE_COLOR(255, 0, 0, 255)); // 红色

# AddToolTip

void AddToolTip(const char* ToolTip)

为菜单选项添加工具提示。

MenuOption* useQ = mainMenu->AddCheckBox("使用Q", true);
useQ->AddToolTip("启用后将自动使用Q技能");

# Permashow

void Permashow(bool enabled = true)

设置此选项是否在游戏中常驻显示。

MenuOption* comboKey = mainMenu->AddHotKey("连招按键", 0x20); // 空格键
comboKey->Permashow(); // 在游戏中常驻显示此热键状态

# 相关函数

MenuOption* AddCheckBox(const char* Name, bool Boolean)

添加一个复选框选项到菜单。

MenuOption* enableFeature = mainMenu->AddCheckBox("启用功能", true);

MenuOption* AddSlider(const char* Name, int Value, int MinValue, int MaxValue)

添加一个滑块选项到菜单。

MenuOption* rangeSlider = mainMenu->AddSlider("范围", 600, 300, 1000);

MenuOption* AddHotKey(const char* Name, int DefaultKey)

添加一个热键选项到菜单。

MenuOption* comboKey = mainMenu->AddHotKey("连招按键", 0x20); // 空格键

MenuOption* AddToggleKey(const char* Name, int DefaultKey, bool Boolean)

添加一个切换键选项到菜单。

MenuOption* farmToggle = mainMenu->AddToggleKey("农场模式", 0x41, false); // A键

MenuOption* AddStringList(const char* Name, int DefaultIdx, std::vector<const char*> const& Elements)

添加一个字符串列表选项到菜单。

std::vector<const char*> modes = { "智能", "常开", "禁用" };
MenuOption* comboMode = mainMenu->AddStringList("连招模式", 0, modes);

MenuOption* AddColorPick(const char* Name, bool Boolean, int DefaultColor)

添加一个颜色选择器选项到菜单。

MenuOption* drawColor = mainMenu->AddColorPick("绘制颜色", true, MAKE_COLOR(0, 255, 0, 255));