386 lines
18 KiB
C++
386 lines
18 KiB
C++
#ifndef _SOLAR_SLOT_ITEMOPTIONHEADER_H
|
||
#define _SOLAR_SLOT_ITEMOPTIONHEADER_H
|
||
#pragma once
|
||
|
||
//==================================================================================================
|
||
/// 物品选项处理部分通用标题
|
||
/**
|
||
@author Kim Min Wook < taiyo@webzen.co.kr >
|
||
@since 2004. 12. 29
|
||
@remark
|
||
-
|
||
@note
|
||
-
|
||
@history
|
||
- 09.09.06 | waverix | code rearrangement
|
||
*/
|
||
//==================================================================================================
|
||
|
||
// NOTE: f101221.3L, add new namespace 'ns_formula' to group calculation logic
|
||
namespace ns_formula {};
|
||
using namespace ns_formula; // to compatible custom logic
|
||
|
||
//--------------------------------------------------------------------------------------------------
|
||
// 选项相关结构体
|
||
//-------------------------------------------------------------------------
|
||
|
||
enum eENCHANTLEVEL
|
||
{
|
||
ENCHANT_LOW, //< 0 ~ 6
|
||
ENCHANT_MIDDLE, //< 7 ~ 9
|
||
ENCHANT_HIGH, //< 10 ~ 12
|
||
#ifdef _NA_003966_20111227_ADD_ENCHANT
|
||
ENCHANT_HIGHEST, // 13~15
|
||
#endif //_NA_003966_20111227_ADD_ENCHANT
|
||
ENCHANT_MAX,
|
||
};
|
||
|
||
enum eRANK
|
||
{
|
||
RANK_F = -1, //< 稀有物品等级时使用
|
||
RANK_E = 0,
|
||
RANK_D,
|
||
RANK_C,
|
||
RANK_B,
|
||
RANK_MA,
|
||
RANK_A,
|
||
RANK_PA,
|
||
RANK_MS,
|
||
RANK_S,
|
||
RANK_PS,
|
||
RANK_MAX,
|
||
};
|
||
|
||
enum eRANK_LEVEL
|
||
{
|
||
RANK_LOW = 0, //< E ~ B
|
||
RANK_MIDDLE = 1, //< -A ~ +A
|
||
RANK_HIGH = 2, //< -S ~ +S
|
||
};
|
||
|
||
// _NA_000251_20100727_SOCKET_SYSTEM
|
||
// 贾德等级(为了以后增加等级也容易添加名称,以数字形式命名)
|
||
enum eSOCKET_LEVEL
|
||
{
|
||
kZardGradeUnused = 0, // 禁用贾德等级
|
||
kZardGrade1 = 1, // 下级
|
||
kZardGrade2 = 2, // 中级
|
||
kZardGrade3 = 3, // 上级
|
||
kZardGrade4 = 4, // 最高级
|
||
kZardGradeMax,
|
||
};
|
||
|
||
enum eSOCKET
|
||
{
|
||
SOCKET_1 = 0,
|
||
SOCKET_2,
|
||
SOCKET_3,
|
||
#ifdef _NA_0_20100727_SOCKET_SYSTEM_CONVERT
|
||
SOCKET_4,
|
||
SOCKET_5,
|
||
#endif // _NA_0_20100727_SOCKET_SYSTEM_CONVERT
|
||
SOCKET_MAX,
|
||
};
|
||
|
||
enum { SOCKET_MAX_V8 = 5 };
|
||
enum { SOCKET_MAX_V7 = 3 };
|
||
|
||
|
||
// _NA_0_20100727_SOCKET_SYSTEM_CONVERT
|
||
// db 2位信息
|
||
enum eSOCKET_IDENTIFY_TYPE
|
||
{
|
||
eSOCKET_IDENTIFY_NOT_PROCESS = 0, // 非插口道具(一般道具),尚未决定(掉落等)
|
||
eSOCKET_UNIDENTIFIED_ITEM, // 未确认插口道具(1次成功)
|
||
eSOCKET_FAIL_IDENTIFY_PROCESS, // 未成为插口道具的物品(在第一次未确认插口生成过程中失败)
|
||
eSOCKET_IDENTIFIED_ITEM, // 确认插口个数的道具
|
||
};
|
||
|
||
enum sLIMITED_NUM
|
||
{
|
||
LIMITED_1 = 0,
|
||
LIMITED_2,
|
||
LIMITED_3,
|
||
LIMITED_MAX,
|
||
};
|
||
|
||
// _NA_003740_20111122_RANDOM_ITEM
|
||
// 随机物品值种类等级
|
||
struct RandomValueTypeGrade
|
||
{
|
||
enum Value
|
||
{
|
||
kGrade1 = 1,
|
||
kGrade2 = 2
|
||
};
|
||
enum Boundary
|
||
{
|
||
kMinGrade = kGrade1,
|
||
kMaxGrade = kGrade2
|
||
};
|
||
}; // RandomValueTypeGrade
|
||
|
||
// 随机物品值等级
|
||
struct RandomValueGrade
|
||
{
|
||
#ifdef _NA_003740_20210624_ADDITEMRANDOM_ITEM6
|
||
enum Value
|
||
{
|
||
kNone = 0, // 无等级
|
||
kGrade1 = 1,
|
||
kGrade2 = 2,
|
||
kGrade3 = 3,
|
||
kGrade4 = 4,
|
||
kGrade5 = 5,
|
||
kGrade6 = 6,
|
||
kGrade7 = 7
|
||
};
|
||
enum Boundary
|
||
{
|
||
kMinGrade = kGrade1,
|
||
kMaxGrade = kGrade7
|
||
};
|
||
#else
|
||
enum Value
|
||
{
|
||
kNone = 0, // 无等级
|
||
kGrade1 = 1,
|
||
kGrade2 = 2,
|
||
kGrade3 = 3,
|
||
kGrade4 = 4,
|
||
kGrade5 = 5,
|
||
kGrade6 = 6
|
||
};
|
||
enum Boundary
|
||
{
|
||
kMinGrade = kGrade1,
|
||
kMaxGrade = kGrade6
|
||
};
|
||
#endif
|
||
}; // RandomValueGrade
|
||
|
||
//--------------------------------------------------------------------------------------------------
|
||
//基本选项信息
|
||
//eATTRTYPE的许多属性中,只删除了道具中使用的。
|
||
//技能中使用所有属性。
|
||
//-------------------------------------------------------------------------------
|
||
//注意:不要打折扣。
|
||
//由于不同的调试工作,索引错误
|
||
//-------------------------------------------------------------------------------
|
||
// NOTE: [V]=value type, [R]=ratio type
|
||
//-------------------------------------------------------------------------------
|
||
const eATTR_TYPE g_ITEM_OPTION[] =
|
||
{
|
||
eATTR_TYPE_INVALID, //[ 0] 不存在(初始值)
|
||
eATTR_ATTACK_SPEED, //[ 1] 增加总攻击速度
|
||
eATTR_PHYSICAL_ATTACK_SUCCESS_RATIO, //[ 2] 全体攻击成功率增加率
|
||
eATTR_MAGICAL_FIRE_ATTACK_POWER, //[ 3] [V]元素(火)攻击力
|
||
eATTR_MAGICAL_WATER_ATTACK_POWER, //[ 4] [V]元素(水)攻击力
|
||
eATTR_MAGICAL_EARTH_ATTACK_POWER, //[ 5] [V]元素(风)攻击力
|
||
eATTR_MAGICAL_WIND_ATTACK_POWER, //[ 6] [V]元素(土)攻击力
|
||
eATTR_MAGICAL_DARKNESS_ATTACK_POWER, //[ 7] [V]元素(黑暗)攻击力
|
||
eATTR_DEL_PHYSICAL_TARGET_DEFENSE_RATIO, //[ 8] [R]攻击目标物理防御力减少率
|
||
eATTR_DEL_FIRE_TARGET_DEFENSE_RATIO, //[ 9] [R]攻击目标元素(火)防御力减少率
|
||
eATTR_DEL_WATER_TARGET_DEFENSE_RATIO, //[ 10] [R]攻击目标元素(水)防御力减少率
|
||
eATTR_DEL_EARTH_TARGET_DEFENSE_RATIO, //[ 11] [R]攻击目标元素(风)防御力减少率
|
||
eATTR_DEL_WIND_TARGET_DEFENSE_RATIO, //[ 12] [R]攻击目标元素(大地)防御力减少率
|
||
eATTR_DEL_DARKNESS_TARGET_DEFENSE_RATIO, //[ 13] [R]攻击目标元素(黑暗)防御力减少率
|
||
eATTR_MOVE_SPEED, //[ 14] 增加移动速度
|
||
eATTR_PHYSICAL_ATTACK_BLOCK_RATIO, //[ 15] [R]攻击防御率增加率
|
||
#ifdef _NA001605_EP2_ATTRIBUTES_RENEWAL_
|
||
eATTR_DEL_FIRE_DAMAGE, //[ 16] [R]EP2:元素(火)伤害减率
|
||
eATTR_DEL_WATER_DAMAGE, //[ 17] [R]EP2:对元素(水)的伤害减免率
|
||
eATTR_DEL_WIND_DAMAGE, //[ 18] [R]EP2:元素(风)伤害减率
|
||
eATTR_DEL_EARTH_DAMAGE, //[ 19] [R]EP2:对元素(大地)的伤害减免率
|
||
eATTR_DEL_DARKNESS_DAMAGE, //[ 20] [R]EP2:对元素(黑暗)的伤害减免率
|
||
#else
|
||
eATTR_MAGICAL_FIRE_DEFENSE_POWER, //[ 16] EP2:未使用,[V]魔法属性抵抗(火)
|
||
eATTR_MAGICAL_WATER_DEFENSE_POWER, //[ 17] EP2:未使用,[V]魔法属性抵抗(水)
|
||
eATTR_MAGICAL_EARTH_DEFENSE_POWER, //[ 18] EP2:未使用,[V]魔法属性抵抗(土)
|
||
eATTR_MAGICAL_WIND_DEFENSE_POWER, //[ 19] EP2:未使用,[V]魔法属性抵抗(风)
|
||
eATTR_MAGICAL_DARKNESS_DEFENSE_POWER, //[ 20] EP2:未使用,[V]魔法属性抵抗(黑暗)
|
||
#endif
|
||
eATTR_OPTION_ALL_ATTACK_POWER, //[ 21] EP2:未使用,选项整体物理攻击力,EP2:47相同
|
||
eATTR_OPTION_ALL_DEFENSE_POWER, //[ 22] EP2:未使用,选项整体物理防御力,EP2:49相同
|
||
eATTR_STR, //[ 23] 属性(力量)
|
||
eATTR_DEX, //[ 24] 属性(敏捷)
|
||
eATTR_INT, //[ 25] 属性(智力)
|
||
eATTR_VIT, //[ 26] 属性(体力)
|
||
eATTR_SPR, //[ 27] 属性(精神力)
|
||
eATTR_MAX_HP, //[ 28] 最大HP
|
||
eATTR_MAX_MP, //[ 29] 最大MP/SP
|
||
eATTR_ADD_SKILL_ATTACK_POWER, //[ 30] 技能追加攻击力
|
||
eATTR_ADD_SKILL_DAMAGE_RATIO, //[ 31] 技能伤害加成率
|
||
eATTR_INCREASE_STAT_POINT, //[ 32] 五重奏
|
||
|
||
eATTR_DECREASE_LIMIT_STAT, //[ 33] 五重奏限制数值减少
|
||
eATTR_MP_SPEND_INCREASE, //[ 34] MP消耗增减
|
||
eATTR_MAGICAL_ALL_ATTACK_POWER, //[ 35] 全部元素攻击力
|
||
#ifdef _NA001605_EP2_ATTRIBUTES_RENEWAL_
|
||
eATTR_DEL_MAGICAL_ALL_DAMAGE, //[ 36] [R]EP2:元素(所有)伤害减率
|
||
#else
|
||
eATTR_MAGICAL_ALL_DEFENSE_POWER, //[ 36] EP1:所有元素防御力
|
||
#endif
|
||
eATTR_ABSORB_HP, //[ 37] HP吸收
|
||
eATTR_ABSORB_MP, //[ 38] MP/SP吸收
|
||
eATTR_RECOVERY_HP, //[ 39] HP恢复量
|
||
eATTR_RECOVERY_MP, //[ 40] MP恢复量
|
||
eATTR_ADD_ALL_CRITICAL_RATIO, //[ 41] 整体概率
|
||
eATTR_CRITICAL_DAMAGE_CHANGE, //[ 42] 暴击伤害
|
||
eATTR_REFLECT_DAMAGE_RATIO, //[ 43] 伤害反射
|
||
eATTR_BONUS_MONEY_RATIO, //[ 44] 增加游戏币
|
||
eATTR_BONUS_EXP_RATIO, //[ 45] 增加经验值
|
||
eATTR_AREA_ATTACK_RATIO, //[ 46] 多重攻击概率
|
||
eATTR_OPTION_PHYSICAL_ATTACK_POWER, //[ 47] 物理攻击力
|
||
eATTR_OPTION_MAGICAL_ATTACK_POWER, //[ 48] EP2:未使用,魔法攻击力
|
||
eATTR_OPTION_PHYSICAL_DEFENSE_POWER, //[ 49] 物理防御力
|
||
eATTR_OPTION_MAGICAL_DEFENSE_POWER, //[ 50] EP2:未使用,魔法防御力
|
||
eATTR_DECREASE_DAMAGE, //[ 51] 伤害减少(适用时间:减少适用伤害本身.)
|
||
eATTR_RESURRECTION_RATIO, //[ 52] 死亡时自身复活的几率
|
||
eATTR_DOUBLE_DAMAGE_RATIO, //[ 53] 伤害的两倍几率
|
||
eATTR_LUCKMON_INC_DAMAGE, //[ 54] 攻击幸运怪时追加伤害
|
||
eATTR_COPOSITE_INC_RATIO, //[ 55] 组合成功率增加
|
||
eATTR_BYPASS_DEFENCE_RATIO, //[ 56] 防御无视率
|
||
eATTR_INCREASE_MIN_DAMAGE, //[ 57] 增加最小伤害
|
||
eATTR_INCREASE_MAX_DAMAGE, //[ 58] 最大伤害增加
|
||
eATTR_DECREASE_ITEMDURA_RATIO, //[ 59] 道具耐久力减少无视确认率
|
||
eATTR_RESISTANCE_BADSTATUS_RATIO, //[ 60] 技能效果无视率
|
||
eATTR_INCREASE_SKILLDURATION, //[ 61] 技能持续时间增加(Buff系列)
|
||
eATTR_DECREASE_SKILL_SKILLDURATION, //[ 62] 技能持续时间增减(Debuff系列)<f110531.6L,由“减少”改变
|
||
eATTR_OPTION_ETHER_DAMAGE_RATIO, //[ 63] 埃特韦手机伤害变化(EP2:reserve deletion)
|
||
eATTR_INCREASE_RESERVE_HP, //[ 64] 累计HP增加
|
||
eATTR_BONUS_CASTING_TIME, //[ 65] 技能选角时间增减.
|
||
eATTR_RESIST_HOLDING, //[ 66] 保持耐性
|
||
eATTR_RESIST_SLEEP, //[ 67] 抗滑性
|
||
eATTR_RESIST_POISON, //[ 68] 抗中毒性
|
||
eATTR_RESIST_KNOCKBACK, //[ 69] 击退耐性
|
||
eATTR_RESIST_DOWN, //[ 70] 击倒耐性
|
||
eATTR_RESIST_STUN, //[ 71] 抗晕厥性
|
||
eATTR_DECREASE_PVPDAMAGE, //[ 72] PVP伤害减少(适用时间:[51:伤害减少]适用时追加计算PvP限定)
|
||
eATTR_ADD_DAMAGE, //[ 73] 附加伤害(适用时间:基本伤害公式最后)
|
||
eATTR_AUTO_ITEM_PICK_UP, //[ 74] 自动拾取Item
|
||
// __NA_001244_20090417_ATTACK_RESIST
|
||
// CHANGES: f110103.4L, block contents about PvP resist attributes. ranges = [75, 92]
|
||
eATTR_BONUS_SKILL_COOL_TIME, //[ 75] [R]技能冷却时间增减(EP2)
|
||
eATTR_OPTION_ETHER_PvE_DAMAGE_RATIO, //[ 76] 埃特韦手机伤害变化(PvE)
|
||
#ifdef _NA_003966_20111227_ADD_ENCHANT
|
||
eATTR_INCREASE_ENCHANT_RATIO, // [77] 天赋成功率增加
|
||
#else
|
||
eATTR_TYPE_INVALID, // [77] eATTR_RESIST_ALLATTACK_ALLCHAR, // 77 莫登凯利所有攻击耐性.
|
||
#endif
|
||
|
||
#ifdef _20220109_ADD_ATTACKDECDAMAGE //xiaomi 添加贯穿词条
|
||
eATTR_BYPASS_DECDAMAGE, // [78] 贯穿
|
||
#else
|
||
eATTR_TYPE_INVALID,
|
||
#endif
|
||
|
||
eATTR_TYPE_INVALID, // [79] eATTR_RESIST_SKILLATTACK_BERSERKER, // 79 Busker技能攻击耐性.
|
||
eATTR_TYPE_INVALID, // [80] eATTR_RESIST_ALLATTACK_BERSERKER, // 80 Busker所有攻击耐性.
|
||
eATTR_TYPE_INVALID, // [81] eATTR_RESIST_NOMALATTACK_VALKYRIE, // 81 女武神一般攻击耐性.
|
||
eATTR_TYPE_INVALID, // [82] eATTR_RESIST_SKILLATTACK_VALKYRIE, // 82 女武神技能攻击耐性.
|
||
eATTR_TYPE_INVALID, // [83] eATTR_RESIST_ALLATTACK_VALKYRIE, // 83 女武神所有攻击耐性.
|
||
eATTR_TYPE_INVALID, // [84] eATTR_RESIST_NOMALATTACK_DRAGON, // 84 龙一般攻击耐性.
|
||
eATTR_TYPE_INVALID, // [85] eATTR_RESIST_SKILLATTACK_DRAGON, // 85 龙技能攻击耐性.
|
||
eATTR_TYPE_INVALID, // [86] eATTR_RESIST_ALLATTACK_DRAGON, // 86 龙全体攻击耐性.
|
||
eATTR_TYPE_INVALID, // [87] eATTR_RESIST_NOMALATTACK_ELEMENTALIST, // 87 艾尔利普通攻击耐性.
|
||
eATTR_TYPE_INVALID, // [88] eATTR_RESIST_SKILLATTACK_ELEMENTALIST, // 88 艾尔利技能攻击耐性.
|
||
eATTR_TYPE_INVALID, // [89] eATTR_RESIST_ALLATTACK_ELEMENTALIST, // 89 艾尔利所有攻击耐性.
|
||
eATTR_TYPE_INVALID, // [90] eATTR_RESIST_NOMALATTACK_SHADOW, // 90 碎度普通攻击耐性.
|
||
eATTR_TYPE_INVALID, // [91] eATTR_RESIST_SKILLATTACK_SHADOW, // 91 碎度技能攻击耐性.
|
||
eATTR_TYPE_INVALID, // [92] eATTR_RESIST_ALLATTACK_SHADOW, // 92 突击所有攻击耐性.
|
||
// __NA_001290_20090525_SHIELD_SYSTEM
|
||
eATTR_MAX_SD, //[ 93] 最大SD
|
||
eATTR_RECOVERY_SD, //[ 94] SD恢复量
|
||
|
||
#ifdef _NA001605_EP2_ATTRIBUTES_RENEWAL_
|
||
eATTR_DEL_MAGICAL_ALL_TARGET_DEFENSE_RATIO, //[ 95] [R]攻击目标元素(所有)防御减少率(Be从[V]改为type)
|
||
#else
|
||
eATTR_DEL_MAGICAL_TARGET_DEFENSE_RATIO, //[ 95] EP2:未使用,攻击对象魔法防御力减少
|
||
#endif
|
||
eATTR_ENEMY_CRITICAL_RATIO_CHANGE, //[ 96] 被击时目标暴击几率减少
|
||
eATTR_PREMIUMSERVICE_PCBANG, //[ 97] 网吧效果
|
||
|
||
//_NA_006680_20130426_ITEM_OPTION_ADD_AND_MODIFY
|
||
eATTR_ATTACK_DAMAGE_ABSORB_SD_RATIO, //[ 98] 加害伤害SD切换量
|
||
eATTR_ATTACK_DAMAGE_ABSORB_HP_RATIO, //[ 99] 加害伤害HP转换量
|
||
|
||
//_NA_007330_20140620_GUILD_SYSTEM_EXTENSION
|
||
eATTR_ENEMY_CRITICAL_DAMAGE_CHANGE, //[100]被击时目标的暴击伤害增减
|
||
eATTR_CRAFT_COST_RATIO, // [101] 制作费用增减
|
||
eATTR_CRAFT_PREVENT_EXTINCTION_MATERIAL_RATIO, // [102] 制作失败时防止材料消失
|
||
eATTR_ENCHANT_COST_RATIO, // [103] 成本增减
|
||
eATTR_ENCHANT_PREVENT_DESTROY_N_DOWNGRADE_ITEM_RATIO, // [104] 积分失败时,物品消失,防止下载
|
||
eATTR_RECOVER_POTION_COOLTIME_RATIO, // [105] 恢复动作冷却时间减少
|
||
eATTR_RECOVER_POTION_RECOVERY_RATIO, // [106] 恢复任务恢复量增加
|
||
eATTR_QUEST_REWARD_EXP_RATIO, // [107] 任务奖励经验增加
|
||
eATTR_MAX_DAMAGE_RATIO, // [108] 最大伤害发生几率增减
|
||
eATTR_DOMINATION_MAPOBJECT_DAMAGE_RATIO, // [109] 攻城目标伤害增减
|
||
eATTR_SHOP_REPAIR_HEIM_RATIO, // [110] 商店维修增减
|
||
eATTR_SHOP_BUY_HEIM_RATIO, // [111] 商店购买时增减
|
||
|
||
eATTR_MAX_FP, // [112] 位置Blade最大FP
|
||
eATTR_RECOVERY_FP, // [113] 位置Blade FP恢复量(攻击时)
|
||
eATTR_INCREASE_DAMAGE_RATIO, // [114] 伤害增加
|
||
//_NA_008124_20150313_AWAKENING_SYSTEM
|
||
eATTR_AWAKENING_PROBABILITY, // [115] 觉醒几率增减
|
||
|
||
//_NA_008486_20150914_TOTAL_BALANCE
|
||
eATTR_DEBUFF_DURATION, // [116]资产ㅡDebuff技术效果持续时间强化(ms)
|
||
|
||
//_NA_008540_20151027_ADD_ITEMOPTION_ELITE4
|
||
eATTR_DECREASE_DAMAGE_NPC, // [117] npc造成的伤害减少
|
||
eATTR_DECREASE_DAMAGE_BERSERKER, // [118] Busker造成的伤害减少
|
||
eATTR_DECREASE_DAMAGE_DRAGONKNIGHT, // [119] Dragon night造成的伤害减少
|
||
eATTR_DECREASE_DAMAGE_VALKYRIE, // [120] 女武神给予的伤害减少
|
||
eATTR_DECREASE_DAMAGE_ELEMENTALIST, // [121] 减少艾尔利门塔尔的伤害
|
||
eATTR_DECREASE_DAMAGE_SHADOW, // [122] 减少眼影造成的伤害
|
||
eATTR_DECREASE_DAMAGE_MYSTIC, // [123] 减少Mystic造成的伤害
|
||
eATTR_DECREASE_DAMAGE_HELLROID, // [124] helloid造成的伤害减少
|
||
eATTR_DECREASE_DAMAGE_WITCHBLADE, // [125] 位置Blade造成的伤害减少
|
||
eATTR_INCREASE_SKILL_LEVEL
|
||
#ifdef _NA_003740_20210704_SKILL_LEVLEUP_OPTION
|
||
eATTR_LEVELUP_SKILL, // [126] 技能等级提升 by:十里坡剑神 2021-07-04
|
||
#endif //_NA_003740_20210704_SKILL_LEVLEUP_OPTION
|
||
}; // (WARNING) 可使用到127。之后会形成流媒体扩张,所以要注意.
|
||
|
||
// 顺序不能改变!!!!
|
||
//--------------------------------------------------------------------------------------------------
|
||
|
||
namespace ns_formula {
|
||
;
|
||
|
||
// f101221.3L, f090906
|
||
// argumens:
|
||
// option_type : eVALUE_TYPE
|
||
extern bool CheckAttrValidity(eATTR_TYPE attr_type, int option_type, int option_value);
|
||
// ref: index of g_ITEM_OPTION
|
||
// argumens:
|
||
// option_index : the index of g_ITEM_OPTION
|
||
// option_type : eVALUE_TYPE
|
||
extern bool CheckOptionValidity(WORD option_index, int option_type, int option_value);
|
||
// NOTE: f110323.3L, this method is planned for item attribute calculation prefetching and
|
||
// restriction filter of stable item option calculations
|
||
// ref: index of g_ITEM_OPTION
|
||
extern bool CheckStatsRelatedOption(uint16_t option_index);
|
||
|
||
}; //end of namespace 'ns_formula'
|
||
|
||
//==================================================================================================
|
||
|
||
inline bool ns_formula::CheckOptionValidity(WORD option_index, int option_type, int option_value)
|
||
{
|
||
// OptionIndex有效性检查
|
||
if (bool out_of_ranges = (option_index >= _countof(g_ITEM_OPTION))) {
|
||
return false;
|
||
};
|
||
bool result = CheckAttrValidity(g_ITEM_OPTION[option_index], option_type, option_value);
|
||
return result;
|
||
}
|
||
|
||
//==================================================================================================
|
||
|
||
#endif //_SOLAR_SLOT_ITEMOPTIONHEADER_H
|
||
|
||
|