diff --git a/Assets/PerfectWorld/Scripts/Skills/ElementSkill.cs b/Assets/PerfectWorld/Scripts/Skills/ElementSkill.cs index 75c6b42e6b..df4309c617 100644 --- a/Assets/PerfectWorld/Scripts/Skills/ElementSkill.cs +++ b/Assets/PerfectWorld/Scripts/Skills/ElementSkill.cs @@ -625,6 +625,9 @@ namespace BrewMonster.Scripts.Skills public virtual int GetID() { return 0; } public virtual string GetName() { return null; } public virtual string GetIcon() { return null; } - public static TeamState Query(int id) { return null; } + public static TeamState Query(int id) + { + return GNET.TeamState.TryGetValue(id, out var s) ? s : null; + } } } \ No newline at end of file diff --git a/Assets/PerfectWorld/Scripts/Skills/skill.cs b/Assets/PerfectWorld/Scripts/Skills/skill.cs index 3c1fe4d2b9..9f44b7cde9 100644 --- a/Assets/PerfectWorld/Scripts/Skills/skill.cs +++ b/Assets/PerfectWorld/Scripts/Skills/skill.cs @@ -7,13 +7,21 @@ namespace BrewMonster.Scripts.Skills public static class GNET { - public static readonly Dictionary TeamState; + public static readonly Dictionary TeamState; public static readonly Dictionary VisibleState; // [中文] 首次访问 GNET 时由 CLR 调用,无需手动 Init // [English] Populated on first access to GNET; no manual Init() required. - public static TeamStateImp QueryTeamState(int id) { return TeamState[id]; } - public static VisibleStateImp QueryVisibleState(int id) { return VisibleState[id]; } + /// Same as C++ TeamStateImp::Query — returns null if id is not registered. + public static TeamStateImp QueryTeamState(int id) => + TeamState.TryGetValue(id, out var s) ? s : null; + + /// Same as C++ VisibleStateImp::Query(prof,id) — prof unused; null if id missing. + public static VisibleStateImp QueryVisibleState(int prof, int id) => + VisibleState.TryGetValue(id, out var v) ? v : null; + + public static VisibleStateImp QueryVisibleState(int id) => + VisibleState.TryGetValue(id, out var v) ? v : null; static GNET() { var team = new Dictionary(); @@ -89,51 +97,51 @@ namespace BrewMonster.Scripts.Skills visible.Add(60, new VisibleStateImp(60, "封印","复仇封印.gfx","HH_Spine")); visible.Add(61, new VisibleStateImp(61, "反击","复仇镜像.gfx","HH_Spine")); visible.Add(62, new VisibleStateImp(62, "击晕","复仇雷霆.gfx","HH_Spine")); - visible.Add(63, new VisibleStateImp(63, "反噬","复仇反噬.gfx","HH_Spine")); + visible.Add(63, new VisibleStateImp(63, "反噬","复仇反噬.gfx","HH_Spine")); visible.Add(64, new VisibleStateImp(64, "三世明王咒","三世明王咒.gfx","HH_Spine")); visible.Add(65, new VisibleStateImp(65, "金刚轮印咒","金刚轮印咒.gfx","HH_Spine")); visible.Add(66, new VisibleStateImp(66, "黑巫咒","黑巫咒.gfx","HH_Spine")); visible.Add(67, new VisibleStateImp(67, "白巫咒","白巫咒.gfx","HH_Spine")); visible.Add(68, new VisibleStateImp(68, "深度冰刺","深度冰刺.gfx","HH_右大臂")); - visible.Add(69, new VisibleStateImp(69, "玄武剑诀","玄武剑诀.gfx","HH_righthandweapon")); - visible.Add(70, new VisibleStateImp(70, "饮血剑诀","饮血剑诀.gfx","HH_righthandweapon")); - visible.Add(71, new VisibleStateImp(71, "磐龙剑诀","磐龙剑诀.gfx","HH_righthandweapon")); - visible.Add(72, new VisibleStateImp(72, "八方剑影","八方剑影.gfx","HH_Spine")); - visible.Add(73, new VisibleStateImp(73, "火神","火神.gfx","HH_righthandweapon")); - visible.Add(74, new VisibleStateImp(74, "毒种","碧云术.gfx","HH_spine")); - visible.Add(75, new VisibleStateImp(75, "回血种","回风拂柳.gfx","HH_spine")); - visible.Add(76, new VisibleStateImp(76, "增加木水物防","铁木衫.gfx","HH_spine")); - visible.Add(77, new VisibleStateImp(77, "特殊的减速","腐蔓咒.gfx","HH_spine")); - visible.Add(78, new VisibleStateImp(78, "向自己的宠物传输mp","电弧同气连枝.gfx","")); + visible.Add(69, new VisibleStateImp(69, "玄武剑诀","玄武剑诀.gfx","HH_righthandweapon")); + visible.Add(70, new VisibleStateImp(70, "饮血剑诀","饮血剑诀.gfx","HH_righthandweapon")); + visible.Add(71, new VisibleStateImp(71, "磐龙剑诀","磐龙剑诀.gfx","HH_righthandweapon")); + visible.Add(72, new VisibleStateImp(72, "八方剑影","八方剑影.gfx","HH_Spine")); + visible.Add(73, new VisibleStateImp(73, "火神","火神.gfx","HH_righthandweapon")); + visible.Add(74, new VisibleStateImp(74, "毒种","碧云术.gfx","HH_spine")); + visible.Add(75, new VisibleStateImp(75, "回血种","回风拂柳.gfx","HH_spine")); + visible.Add(76, new VisibleStateImp(76, "增加木水物防","铁木衫.gfx","HH_spine")); + visible.Add(77, new VisibleStateImp(77, "特殊的减速","腐蔓咒.gfx","HH_spine")); + visible.Add(78, new VisibleStateImp(78, "向自己的宠物传输mp","电弧同气连枝.gfx","")); visible.Add(79, new VisibleStateImp(79, "加快吟唱增加法攻","风竹秋韵.gfx","HH_spine")); - visible.Add(80, new VisibleStateImp(80, "增加物防暴击","魔神蚩尤牺牲.gfx","HH_spine")); - visible.Add(81, new VisibleStateImp(81, "增加法防法攻","金光电母牺牲.gfx","HH_spine")); - visible.Add(82, new VisibleStateImp(82, "向施放者(宠物)传输伤害","分担伤害.gfx","HH_spine")); - visible.Add(83, new VisibleStateImp(83, "吸伤害加物法防","护盾.gfx","HH_spine")); - visible.Add(84, new VisibleStateImp(84, "枯木逢春","枯木逢春.gfx","HH_spine")); + visible.Add(80, new VisibleStateImp(80, "增加物防暴击","魔神蚩尤牺牲.gfx","HH_spine")); + visible.Add(81, new VisibleStateImp(81, "增加法防法攻","金光电母牺牲.gfx","HH_spine")); + visible.Add(82, new VisibleStateImp(82, "向施放者(宠物)传输伤害","分担伤害.gfx","HH_spine")); + visible.Add(83, new VisibleStateImp(83, "吸伤害加物法防","护盾.gfx","HH_spine")); + visible.Add(84, new VisibleStateImp(84, "枯木逢春","枯木逢春.gfx","HH_spine")); visible.Add(85, new VisibleStateImp(85, "提升暴击(限制生效次数)","魅灵_灵机.gfx","HH_Spine")); visible.Add(86, new VisibleStateImp(86, "九尊剑诀","九尊剑诀.gfx","HH_righthandweapon")); visible.Add(87, new VisibleStateImp(87, "修罗道用光效","修罗道_10.gfx","HH_head")); visible.Add(88, new VisibleStateImp(88, "修罗道用光效","修罗道_50.gfx","HH_head")); visible.Add(89, new VisibleStateImp(89, "修罗道用光效","修罗道_100.gfx","HH_head")); visible.Add(90, new VisibleStateImp(90, "修罗道用光效","修罗道_300.gfx","HH_head")); - visible.Add(91, new VisibleStateImp(91, "位置回溯","法师_静谧之术_状态效果.gfx","HH_Spine")); - visible.Add(92, new VisibleStateImp(92, "生命回溯","法师_静谧之术2_状态效果.gfx","HH_Spine")); - visible.Add(93, new VisibleStateImp(93, "强制选择目标","白虎_奋战扫击_持续效果.gfx","HH_Spine")); - visible.Add(94, new VisibleStateImp(94, "吸收治疗","羽灵_天瀑符持续效果.gfx","HH_Spine")); - visible.Add(95, new VisibleStateImp(95, "受到普攻后退并清debuff","法师_法之奥义_持续效果.gfx","HH_Spine")); - visible.Add(96, new VisibleStateImp(96, "降低暴击抗性","羽灵_五感符持续效果.gfx","HH_Spine")); - visible.Add(97, new VisibleStateImp(97, "转移技能攻击诅咒","巫师_复仇之魂——涅槃_状态效果.gfx","HH_Spine")); - visible.Add(98, new VisibleStateImp(98, "受到攻击时额外对选定玩家发起攻击","刺客_魂葬印记状态效果.gfx","HH_Spine")); - visible.Add(99, new VisibleStateImp(99, "禁止被选中","巫师_冥王乐土持续效果.gfx","HH_Spine")); - visible.Add(100, new VisibleStateImp(100, "延迟土系伤害","持续土系伤害.gfx","HH_Spine")); - visible.Add(101, new VisibleStateImp(101, "昏迷,自身受到伤害加深","法师_冰晶世界持续效果.gfx","HH_Spine")); - visible.Add(102, new VisibleStateImp(102, "反弹之魂2(比例)","妖精_灵火持续.gfx","")); - visible.Add(103, new VisibleStateImp(103, "受伤害时定身","法师_灸焰_状态效果.gfx","HH_Spine")); - visible.Add(104, new VisibleStateImp(104, "受伤害时提升攻击力","妖兽_无畏_状态效果.gfx","HH_Spine")); - visible.Add(105, new VisibleStateImp(105, "死战到底","白虎_无冕之王持续效果.gfx","HH_Spine")); - visible.Add(106, new VisibleStateImp(106, "治疗偷取","魅灵_繁星_持续效果.gfx","HH_Spine")); - visible.Add(107, new VisibleStateImp(107, "死亡掉落金币","刺客_飘零持续效果.gfx","HH_Spine")); + visible.Add(91, new VisibleStateImp(91, "位置回溯","法师_静谧之术_状态效果.gfx","HH_Spine")); + visible.Add(92, new VisibleStateImp(92, "生命回溯","法师_静谧之术2_状态效果.gfx","HH_Spine")); + visible.Add(93, new VisibleStateImp(93, "强制选择目标","白虎_奋战扫击_持续效果.gfx","HH_Spine")); + visible.Add(94, new VisibleStateImp(94, "吸收治疗","羽灵_天瀑符持续效果.gfx","HH_Spine")); + visible.Add(95, new VisibleStateImp(95, "受到普攻后退并清debuff","法师_法之奥义_持续效果.gfx","HH_Spine")); + visible.Add(96, new VisibleStateImp(96, "降低暴击抗性","羽灵_五感符持续效果.gfx","HH_Spine")); + visible.Add(97, new VisibleStateImp(97, "转移技能攻击诅咒","巫师_复仇之魂——涅槃_状态效果.gfx","HH_Spine")); + visible.Add(98, new VisibleStateImp(98, "受到攻击时额外对选定玩家发起攻击","刺客_魂葬印记状态效果.gfx","HH_Spine")); + visible.Add(99, new VisibleStateImp(99, "禁止被选中","巫师_冥王乐土持续效果.gfx","HH_Spine")); + visible.Add(100, new VisibleStateImp(100, "延迟土系伤害","持续土系伤害.gfx","HH_Spine")); + visible.Add(101, new VisibleStateImp(101, "昏迷,自身受到伤害加深","法师_冰晶世界持续效果.gfx","HH_Spine")); + visible.Add(102, new VisibleStateImp(102, "反弹之魂2(比例)","妖精_灵火持续.gfx","")); + visible.Add(103, new VisibleStateImp(103, "受伤害时定身","法师_灸焰_状态效果.gfx","HH_Spine")); + visible.Add(104, new VisibleStateImp(104, "受伤害时提升攻击力","妖兽_无畏_状态效果.gfx","HH_Spine")); + visible.Add(105, new VisibleStateImp(105, "死战到底","白虎_无冕之王持续效果.gfx","HH_Spine")); + visible.Add(106, new VisibleStateImp(106, "治疗偷取","魅灵_繁星_持续效果.gfx","HH_Spine")); + visible.Add(107, new VisibleStateImp(107, "死亡掉落金币","刺客_飘零持续效果.gfx","HH_Spine")); visible.Add(108, new VisibleStateImp(108, "增加攻击距离","羽芒_回旋之翼_效果状态.gfx","HH_Spine")); visible.Add(109, new VisibleStateImp(109, "无敌5(驱除debuf持续回血昏迷)","巫师_流殇_持续冰块.gfx","")); visible.Add(110, new VisibleStateImp(110, "雷神变","羽灵_雷火堕_持续.gfx","")); @@ -166,8 +174,8 @@ namespace BrewMonster.Scripts.Skills visible.Add(139, new VisibleStateImp(139, "普攻附加伤害","普攻附加额外伤害01.gfx","HH_shou03")); visible.Add(140, new VisibleStateImp(140, "技能CD改变","夜影_影噬_状态效果01.gfx","HH_feijian")); visible.Add(141, new VisibleStateImp(141, "啸月","啸月_施放起01.gfx","HH_feijian")); - - + + team.Add(1, new TeamStateImp(1, "昏迷\r无法进行任何移动和操作", "致晕")); team.Add(2, new TeamStateImp(2, "睡眠\r沉睡状态,受攻击会恢复", "睡眠")); team.Add(3, new TeamStateImp(3, "迟滞\r降低移动速度", "迟滞")); @@ -264,6 +272,14 @@ namespace BrewMonster.Scripts.Skills team.Add(82, new TeamStateImp(82, "骑乘加速", "骑乘加速")); team.Add(83, new TeamStateImp(83, "物理攻击提高", "物理攻击力提高")); + team.Add(84, new TeamStateImp(84, "专注\r提升专注的精神可以使你的施法不被干扰。\r目标免疫封印", "专注")); + team.Add(85, new TeamStateImp(85, "亢奋\r亢奋的人是不需要睡觉的\r免疫睡眠状态", "亢奋")); + team.Add(86, new TeamStateImp(86, "自由\r只要你有一颗自由的心,\r你就不会被减速,或者定身。\r免疫移动减速和击晕", "自由")); + team.Add(87, new TeamStateImp(87, "坚强\r免役按比例掉血。\r坚强的人总不会被打垮", "坚强")); + team.Add(88, new TeamStateImp(88, "神圣\r免疫所有负面状态", "神圣")); + team.Add(89, new TeamStateImp(89, "霸体\r免疫物理伤害", "霸体")); + team.Add(90, new TeamStateImp(90, "火免\r免疫火系伤害", "火免")); + team.Add(91, new TeamStateImp(91, "水免\r免役水系伤害", "水免")); team.Add(92, new TeamStateImp(92, "金免\r免疫金系伤害", "金免")); team.Add(93, new TeamStateImp(93, "木免\r免疫木系伤害", "木免")); @@ -289,7 +305,7 @@ namespace BrewMonster.Scripts.Skills team.Add(111, new TeamStateImp(111, "狂暴\r目标防御和法术防御降低,同时攻击等级增加", "狂暴")); team.Add(112, new TeamStateImp(112, "沙暴\r命中降低,施法速度变慢", "沙暴")); - team.Add(113, new TeamStateImp(113, "乡情\r生命和真气回复速度增加,移动速度增加", "乡情")); + team.Add(113, new TeamStateImp(113, "乡情\r生命和真气回复速度增加,移动速度增加", "乡情")); team.Add(114, new TeamStateImp(114, "湮灭\r水系防御降低", "湮灭")); team.Add(115, new TeamStateImp(115, "幸运\r暴击增加", "幸运")); team.Add(116, new TeamStateImp(116, "冲击\r物理防御降低", "冲击")); @@ -349,73 +365,73 @@ namespace BrewMonster.Scripts.Skills team.Add(164, new TeamStateImp(164, "人鱼变\r变身成人鱼", "魔法盾")); team.Add(165, new TeamStateImp(165, "深度冰刺\r降低攻速,提高攻击等级", "冰冻")); team.Add(166, new TeamStateImp(166, "巫师咒\r调整攻防等级", "热血")); - team.Add(167, new TeamStateImp(167, "金刚剑印\r金系及物理系技能伤害产生加成效果", "金刚剑印")); - team.Add(168, new TeamStateImp(168, "寒潮剑印\r木系及水系技能伤害产生加成效果", "寒潮剑印")); + team.Add(167, new TeamStateImp(167, "金刚剑印\r金系及物理系技能伤害产生加成效果", "金刚剑印")); + team.Add(168, new TeamStateImp(168, "寒潮剑印\r木系及水系技能伤害产生加成效果", "寒潮剑印")); team.Add(169, new TeamStateImp(169, "焚心剑印\r土系及火系技能伤害产生加成效果", "焚心剑印")); - team.Add(170, new TeamStateImp(170, "玄武剑诀\r有效伤害有几率触发“玄武剑眼”", "玄武剑诀")); - team.Add(171, new TeamStateImp(171, "饮血剑诀\r有效伤害有几率触发“饮血剑眼”", "饮血剑诀")); - team.Add(172, new TeamStateImp(172, "磐龙剑诀\r有效伤害有几率触发“磐龙剑眼”", "磐龙剑诀")); - team.Add(173, new TeamStateImp(173, "玄武剑眼\r特定技能激活该剑眼", "玄武剑眼")); - team.Add(174, new TeamStateImp(174, "饮血剑眼\r特定技能激活该剑眼", "饮血剑眼")); - team.Add(175, new TeamStateImp(175, "磐龙剑眼\r特定技能激活该剑眼", "磐龙剑眼")); - team.Add(176, new TeamStateImp(176, "八方剑影\r对周围目标造成伤害", "八方剑影")); + team.Add(170, new TeamStateImp(170, "玄武剑诀\r有效伤害有几率触发“玄武剑眼”", "玄武剑诀")); + team.Add(171, new TeamStateImp(171, "饮血剑诀\r有效伤害有几率触发“饮血剑眼”", "饮血剑诀")); + team.Add(172, new TeamStateImp(172, "磐龙剑诀\r有效伤害有几率触发“磐龙剑眼”", "磐龙剑诀")); + team.Add(173, new TeamStateImp(173, "玄武剑眼\r特定技能激活该剑眼", "玄武剑眼")); + team.Add(174, new TeamStateImp(174, "饮血剑眼\r特定技能激活该剑眼", "饮血剑眼")); + team.Add(175, new TeamStateImp(175, "磐龙剑眼\r特定技能激活该剑眼", "磐龙剑眼")); + team.Add(176, new TeamStateImp(176, "八方剑影\r对周围目标造成伤害", "八方剑影")); team.Add(177, new TeamStateImp(177, "毒种\r血量低于50%时触发持续伤害", "碧云咒")); team.Add(178, new TeamStateImp(178, "回血种\r受到伤害触发持续回血效果", "回风拂柳")); team.Add(179, new TeamStateImp(179, "增加木水物防\r提高木防水防物防”", "铁木衫")); - team.Add(180, new TeamStateImp(180, "特殊的减速\r减速且受到勾魂摄魄攻击时伤害加深", "腐蔓咒")); + team.Add(180, new TeamStateImp(180, "特殊的减速\r减速且受到勾魂摄魄攻击时伤害加深", "腐蔓咒")); team.Add(181, new TeamStateImp(181, "增加物防暴击\r提高物理防御,暴击率", "魔神蚩尤牺牲")); - team.Add(182, new TeamStateImp(182, "增加法防法攻\r提高五行防御,法术攻击力", "金光电母牺牲")); - team.Add(183, new TeamStateImp(183, "向自己的宠物传输mp\r将本体真气传输给召唤物", "同气连枝")); + team.Add(182, new TeamStateImp(182, "增加法防法攻\r提高五行防御,法术攻击力", "金光电母牺牲")); + team.Add(183, new TeamStateImp(183, "向自己的宠物传输mp\r将本体真气传输给召唤物", "同气连枝")); team.Add(184, new TeamStateImp(184, "向施放者(宠物)传输伤害\r施法者将为状态所有者分担伤害", "分担伤害")); team.Add(185, new TeamStateImp(185, "吸伤害加物法防\r可吸收一定的伤害且护盾存在时提高防御抗", "护盾")); team.Add(186, new TeamStateImp(186, "加快吟唱增加法攻\r提高吟唱速度提高法攻", "风竹秋韵")); team.Add(187, new TeamStateImp(187, "渐增的回血\r数值渐增的持续回血", "生命之树")); team.Add(188, new TeamStateImp(188, "献祭\r献祭光环", "火神")); team.Add(189, new TeamStateImp(189, "枯木逢春\r死亡后立即复活", "枯木逢春")); - team.Add(190, new TeamStateImp(190, "特殊物品伤害触发器\r受到摄魂咒攻击伤害加强", "勾魂摄魄")); - team.Add(191, new TeamStateImp(191, "提升暴击(限制生效次数)", "暴击提升")); - team.Add(192, new TeamStateImp(192, "九尊剑诀\r有几率触发九尊剑眼", "九尊剑诀")); - team.Add(193, new TeamStateImp(193, "九尊剑眼\r被特殊攻击击中触发效果", "九尊剑眼")); - team.Add(194, new TeamStateImp(194, "武器失效", "武器失效")); - team.Add(195, new TeamStateImp(195, "增强技能对npc的伤害\r增加技能对NPC的伤害", "增强点技能对NPC的伤害")); - team.Add(196, new TeamStateImp(196, "侦测周围隐身玩家\r将周围的隐身单位添加到界面上", "侦查周围隐身的玩家")); - team.Add(197, new TeamStateImp(197, "侦测周围隐身玩家\r将周围的隐身单位添加到界面上", "侦查周围隐身的玩家")); + team.Add(190, new TeamStateImp(190, "特殊物品伤害触发器\r受到摄魂咒攻击伤害加强", "勾魂摄魄")); + team.Add(191, new TeamStateImp(191, "提升暴击(限制生效次数)", "暴击提升")); + team.Add(192, new TeamStateImp(192, "九尊剑诀\r有几率触发九尊剑眼", "九尊剑诀")); + team.Add(193, new TeamStateImp(193, "九尊剑眼\r被特殊攻击击中触发效果", "九尊剑眼")); + team.Add(194, new TeamStateImp(194, "武器失效", "武器失效")); + team.Add(195, new TeamStateImp(195, "增强技能对npc的伤害\r增加技能对NPC的伤害", "增强点技能对NPC的伤害")); + team.Add(196, new TeamStateImp(196, "侦测周围隐身玩家\r将周围的隐身单位添加到界面上", "侦查周围隐身的玩家")); + team.Add(197, new TeamStateImp(197, "侦测周围隐身玩家\r将周围的隐身单位添加到界面上", "侦查周围隐身的玩家")); team.Add(198, new TeamStateImp(198, "mp恢复加快2\r场景内mp恢复加快", "场景回蓝")); - team.Add(199, new TeamStateImp(199, "位置回溯\r若干秒后被传回标记位置", "静谧之术")); - team.Add(200, new TeamStateImp(200, "生命回溯\r若干秒后血量变回标记血量", "静谧之术2buff")); - team.Add(201, new TeamStateImp(201, "禁止飞行\r使玩家在一段时间内无法飞行", "兽灵之力buff")); - team.Add(202, new TeamStateImp(202, "强制选择目标\r使玩家在一段时间内只能选择施法者", "奋战扫击buff")); - team.Add(203, new TeamStateImp(203, "吸收治疗\r吸收一定量的治疗", "吸收治疗buff")); - team.Add(204, new TeamStateImp(204, "受到普攻后退并清debuff\r受攻击被弹开", "法之奥义")); - team.Add(205, new TeamStateImp(205, "增加爆击抗性\r受到致命一击的几率降低", "沙暴buff")); - team.Add(206, new TeamStateImp(206, "降低爆击抗性\r受到致命一击的几率提高", "羽斩buff")); + team.Add(199, new TeamStateImp(199, "位置回溯\r若干秒后被传回标记位置", "静谧之术")); + team.Add(200, new TeamStateImp(200, "生命回溯\r若干秒后血量变回标记血量", "静谧之术2buff")); + team.Add(201, new TeamStateImp(201, "禁止飞行\r使玩家在一段时间内无法飞行", "兽灵之力buff")); + team.Add(202, new TeamStateImp(202, "强制选择目标\r使玩家在一段时间内只能选择施法者", "奋战扫击buff")); + team.Add(203, new TeamStateImp(203, "吸收治疗\r吸收一定量的治疗", "吸收治疗buff")); + team.Add(204, new TeamStateImp(204, "受到普攻后退并清debuff\r受攻击被弹开", "法之奥义")); + team.Add(205, new TeamStateImp(205, "增加爆击抗性\r受到致命一击的几率降低", "沙暴buff")); + team.Add(206, new TeamStateImp(206, "降低爆击抗性\r受到致命一击的几率提高", "羽斩buff")); team.Add(207, new TeamStateImp(207, "转移技能攻击诅咒\r将攻击转移给施法者", "复仇之魂buff")); - team.Add(208, new TeamStateImp(208, "被治疗时额外给选定玩家治疗\r额外治疗", "额外治疗buff")); - team.Add(209, new TeamStateImp(209, "受到攻击时额外对选定玩家发起攻击\r伤害链接", "葬魂印记buff")); - team.Add(211, new TeamStateImp(211, "禁止被选中\r使敌人无法直视", "冥王乐土buff")); - team.Add(212, new TeamStateImp(212, "增强技能对npc的伤害2\r可以和1叠加", "迷色万花buff")); - team.Add(213, new TeamStateImp(213, "延迟土系伤害\r若干秒后造成土系伤害", "风岩葬buff")); - team.Add(214, new TeamStateImp(214, "昏迷,自身受到伤害加深\r冰冻光环效果", "冰晶世界")); - team.Add(215, new TeamStateImp(215, "反弹之魂2(比例)\r荆棘术", "灵火buff")); - team.Add(216, new TeamStateImp(216, "受伤害时定身\r受到伤害时有一定几率定身", "炙焰")); + team.Add(208, new TeamStateImp(208, "被治疗时额外给选定玩家治疗\r额外治疗", "额外治疗buff")); + team.Add(209, new TeamStateImp(209, "受到攻击时额外对选定玩家发起攻击\r伤害链接", "葬魂印记buff")); + team.Add(211, new TeamStateImp(211, "禁止被选中\r使敌人无法直视", "冥王乐土buff")); + team.Add(212, new TeamStateImp(212, "增强技能对npc的伤害2\r可以和1叠加", "迷色万花buff")); + team.Add(213, new TeamStateImp(213, "延迟土系伤害\r若干秒后造成土系伤害", "风岩葬buff")); + team.Add(214, new TeamStateImp(214, "昏迷,自身受到伤害加深\r冰冻光环效果", "冰晶世界")); + team.Add(215, new TeamStateImp(215, "反弹之魂2(比例)\r荆棘术", "灵火buff")); + team.Add(216, new TeamStateImp(216, "受伤害时定身\r受到伤害时有一定几率定身", "炙焰")); team.Add(217, new TeamStateImp(217, "受伤害时获得元气\r获得元气", "获得元气buff")); - team.Add(218, new TeamStateImp(218, "受伤害时提升攻击力\r触发实际效果图标", "无畏buff")); - team.Add(219, new TeamStateImp(219, "受伤害时提升攻击力\r愈战愈勇", "无畏buff")); - team.Add(220, new TeamStateImp(220, "死战到底\r濒死后无敌且血量上限减少99%", "虎啸buff")); - team.Add(221, new TeamStateImp(221, "治疗偷取\r治疗被转移到施法者", "流星buff")); - team.Add(222, new TeamStateImp(222, "死亡掉落金币\r在此状态下被杀死会掉落金币", "飘零buff")); - team.Add(223, new TeamStateImp(223, "增加攻击距离\r攻击距离提高", "擎天雷鸣buff")); + team.Add(218, new TeamStateImp(218, "受伤害时提升攻击力\r触发实际效果图标", "无畏buff")); + team.Add(219, new TeamStateImp(219, "受伤害时提升攻击力\r愈战愈勇", "无畏buff")); + team.Add(220, new TeamStateImp(220, "死战到底\r濒死后无敌且血量上限减少99%", "虎啸buff")); + team.Add(221, new TeamStateImp(221, "治疗偷取\r治疗被转移到施法者", "流星buff")); + team.Add(222, new TeamStateImp(222, "死亡掉落金币\r在此状态下被杀死会掉落金币", "飘零buff")); + team.Add(223, new TeamStateImp(223, "增加攻击距离\r攻击距离提高", "擎天雷鸣buff")); team.Add(224, new TeamStateImp(224, "无敌5(驱除debuf持续回血昏迷)\r放逐", "流殇buff")); - team.Add(225, new TeamStateImp(225, "雷神变\r羽灵变身", "雷火坠buff")); - team.Add(226, new TeamStateImp(226, "武侠剑刃光环\r剑刃光环图标", "霸气")); + team.Add(225, new TeamStateImp(225, "雷神变\r羽灵变身", "雷火坠buff")); + team.Add(226, new TeamStateImp(226, "武侠剑刃光环\r剑刃光环图标", "霸气")); team.Add(227, new TeamStateImp(227, "妖精共舞\r妖精共舞光效图标", "火狐之术buff")); - team.Add(229, new TeamStateImp(229, "减少近战普攻伤害\r防御优化 ", "桎梏诀")); - team.Add(230, new TeamStateImp(230, "全属性提升\r等级奖励 ", "回旋之翼")); - team.Add(231, new TeamStateImp(231, "非战斗恢复\r非战斗状态恢复hpmp", "玄武刻印buff")); + team.Add(229, new TeamStateImp(229, "减少近战普攻伤害\r防御优化 ", "桎梏诀")); + team.Add(230, new TeamStateImp(230, "全属性提升\r等级奖励 ", "回旋之翼")); + team.Add(231, new TeamStateImp(231, "非战斗恢复\r非战斗状态恢复hpmp", "玄武刻印buff")); team.Add(232, new TeamStateImp(232, "定值提升\r固定值加hpmp上限", "五感符")); team.Add(233, new TeamStateImp(233, "自身受到伤害加深(可叠加可刷新)", "旋风斩")); team.Add(234, new TeamStateImp(234, "PK无惩罚状态", "战场状态")); - team.Add(235, new TeamStateImp(235, "法术防御力提高2", "法术防御力提高")); + team.Add(235, new TeamStateImp(235, "法术防御力提高2", "法术防御力提高")); team.Add(236, new TeamStateImp(236, "战场旗帜BUFF", "旗帜BUFF")); team.Add(237, new TeamStateImp(237, "防御等级降低", "防御等级降低")); team.Add(238, new TeamStateImp(238, "增加物法攻防hp", "回旋之翼")); @@ -425,7 +441,7 @@ namespace BrewMonster.Scripts.Skills team.Add(242, new TeamStateImp(242, "增加攻击等级、防御等级各3点", "GT高级")); team.Add(243, new TeamStateImp(243, "增加攻击等级、防御等级各1点", "GT低级")); team.Add(244, new TeamStateImp(244, "伤害减免3\r受到来自于玩家的伤害减少", "固若金汤")); - team.Add(245, new TeamStateImp(245, "攻击时给自己添加状态包", "攻守兼备")); + team.Add(245, new TeamStateImp(245, "攻击时给自己添加状态包", "攻守兼备")); team.Add(246, new TeamStateImp(246, "攻击时给目标添加状态包", "乘胜追击")); team.Add(247, new TeamStateImp(247, "免疫物理伤害", "物免2")); team.Add(248, new TeamStateImp(248, "免疫金系伤害", "金免2")); @@ -755,7 +771,7 @@ namespace BrewMonster.Scripts.Skills public byte posdouble; // λ��ѡ�� // Position selection public int clslimit; // ְҵ���� // Class restriction - public int commoncooldown; // ������ȴmask bit0-4 ������ȴ0-4 bit5-9 ��Ʒ��ȴ0-4 + public int commoncooldown; // ������ȴmask bit0-4 ������ȴ0-4 bit5-9 ��Ʒ��ȴ0-4 // Common cooldown mask bit0-4 skill cooldown 0-4 bit5-9 item cooldown 0-4 public int commoncooldowntime; // ��ȴʱ�䣬��λ���� // Cooldown time in milliseconds @@ -925,7 +941,7 @@ namespace BrewMonster.Scripts.Skills public string name; public string effect; public string hh; - + public VisibleStateImp(int i, string n, string e, string h) { id = i; diff --git a/Assets/PerfectWorld/Scripts/UI/HUDPlayer.cs b/Assets/PerfectWorld/Scripts/UI/HUDPlayer.cs index c9c106874d..d3aab121da 100644 --- a/Assets/PerfectWorld/Scripts/UI/HUDPlayer.cs +++ b/Assets/PerfectWorld/Scripts/UI/HUDPlayer.cs @@ -111,9 +111,15 @@ namespace BrewMonster { if(i < iconStates.Count) { + var teamState = GNET.QueryTeamState(iconStates[i].id); + if (teamState == null) + { + buffIcons[i].gameObject.SetActive(false); + continue; + } buffIcons[i].gameObject.SetActive(true); var gameUIMan = CECUIManager.Instance.GetInGameUIMan(); - var szFile = GNET.QueryTeamState(iconStates[i].id).GetIcon(); + var szFile = teamState.GetIcon(); szFile = szFile.ToLower(); gameUIMan.SetCover(buffIcons[i], szFile, EC_GAMEUI_ICONS.ICONS_STATE); }