# eEvadeData
# 说明
用于表示需要规避的技能信息的结构体,包含技能的各种属性和状态。
# 如何使用
// 检查即将命中的技能
std::vector<Evade::eEvadeData> dangerousSkills;
Evade::IsAboutToHit(dangerousSkills, ObjectManager::Player()->Position(), 250);
// 遍历所有可能命中的技能
for (const auto& skill : dangerousSkills)
{
// 获取技能信息
const char* skillName = skill.MenuName;
AIBaseClient* caster = skill.Caster;
Vector skillStart = skill.Start;
Vector skillEnd = skill.End;
// 检查技能类型
if (skill.Type == Evade::eEvadeSkillShotType::SkillshotCircle)
{
// 处理圆形技能
}
// 检查是否为危险技能
if (skill.IsDangerous && skill.IsDangerous->GetBool())
{
// 这是一个危险技能,优先规避
}
}
// 使用路径安全检查
std::vector<Vector> path = { ObjectManager::Player()->Position(), targetPosition };
bool isSafe = Evade::IsPathSafe(path, 500);
if (isSafe)
{
// 可以安全移动
}
# Properties
属性名 | 类型 | 描述 |
---|---|---|
MenuName | const char* | 技能在菜单中显示的名称 |
ChampionName | std::uint32_t | 施放技能的英雄名称的哈希值 |
Slot | eSpellSlot | 技能槽位 |
ControlType | int | 控制类型(0=无,1=硬控制,2=减速) |
Type | eEvadeSkillShotType | 技能类型(直线、圆形、锥形等) |
IsDangerous | MenuOption* | 是否为危险技能的菜单选项 |
Enabled | MenuOption* | 是否启用规避的菜单选项 |
DangerLevel | MenuOption* | 危险等级的菜单选项 |
Evade | bool | 是否需要规避 |
Damage | float | 技能伤害 |
Caster | AIBaseClient* | 技能施放者 |
Start | Vector | 技能起始位置 |
End | Vector | 技能结束位置 |
Direction | Vector | 技能方向 |