diff --git a/OshimaCore/Utils/FunGameUtil.cs b/OshimaCore/Utils/FunGameUtil.cs
index 68a6798..a7e49a9 100644
--- a/OshimaCore/Utils/FunGameUtil.cs
+++ b/OshimaCore/Utils/FunGameUtil.cs
@@ -307,7 +307,7 @@ namespace Oshima.Core.Utils
// 开始空投
Msg = "";
- 空投(actionQueue);
+ 空投(actionQueue, true);
if (isWeb) result.Add("=== 空投 ===\r\n" + Msg);
double 下一次空投 = 80;
@@ -506,17 +506,22 @@ namespace Oshima.Core.Utils
if (PrintOut) Console.WriteLine(str);
}
- public static void 空投(ActionQueue queue)
+ public static void 空投(ActionQueue queue, bool first = false)
{
Item a = Items[Random.Shared.Next(Items.Count)];
- a.SetGamingQueue(queue);
+ if (first)
+ {
+ a = Items.Where(row => row.Name == "魔能法袍").FirstOrDefault() ?? a;
+ }
Item[] 这次发放的空投 = [a];
WriteLine($"社区送温暖了,现在向所有人发放 [ {a.Name} ]!!");
foreach (Character character in queue.Queue)
{
foreach (Item item in 这次发放的空投)
{
- queue.Equip(character, item.Copy(1));
+ Item realItem = item.Copy(1);
+ realItem.SetGamingQueue(queue);
+ queue.Equip(character, realItem);
}
}
WriteLine("");
diff --git a/OshimaModules/Effects/EffectID.cs b/OshimaModules/Effects/EffectID.cs
index d1d749a..d3267c8 100644
--- a/OshimaModules/Effects/EffectID.cs
+++ b/OshimaModules/Effects/EffectID.cs
@@ -3,113 +3,161 @@
public enum EffectID : long
{
///
- /// exatk
+ /// 数值攻击力,参数:exatk
///
ExATK = 8001,
///
- /// exdef
+ /// 数值物理护甲,参数:exdef
///
ExDEF = 8002,
///
- /// exstr
+ /// 数值力量,参数:exstr
///
ExSTR = 8003,
///
- /// exagi
+ /// 数值敏捷,参数:exagi
///
ExAGI = 8004,
///
- /// exint
+ /// 数值智力,参数:exint
///
ExINT = 8005,
///
- /// shtr
+ /// 数值技能硬直时间减少,参数:shtr
///
SkillHardTimeReduce = 8006,
///
- /// nahtr
+ /// 数值普攻硬直时间减少,参数:nahtr
///
NormalAttackHardTimeReduce = 8007,
///
- /// exacc
+ /// 加速系数%,参数:exacc
///
AccelerationCoefficient = 8008,
///
- /// exspd
+ /// 数值行动速度,参数:exspd
///
ExSPD = 8009,
///
- /// exac
+ /// 行动系数%,参考:exac
///
ExActionCoefficient = 8010,
///
- /// excdr
+ /// 冷却缩减%,参数:excdr
///
ExCDR = 8011,
///
- /// exhp
+ /// 数值生命值,参数:exhp
///
ExMaxHP = 8012,
///
- /// exmp
+ /// 数值魔法值,参数:exmp
///
ExMaxMP = 8013,
///
- /// excr
+ /// 暴击率%,参数:excr
///
ExCritRate = 8014,
///
- /// excrd
+ /// 暴击伤害%,参数:excrd
///
ExCritDMG = 8015,
///
- /// exer
+ /// 闪避率%,参数:exer
///
ExEvadeRate = 8016,
///
- /// exppt
+ /// 物理穿透%,参数:exppt
///
PhysicalPenetration = 8017,
///
- /// exmpt
+ /// 魔法穿透%,参数:exmpt
///
MagicalPenetration = 8018,
///
- /// expdr
+ /// 物理伤害减免%,参数:expdr
///
ExPDR = 8019,
///
- /// mdftype, mdfvalue
+ /// 魔法抗性%
+ /// 参数:
+ /// 魔法类型(对应MagicType,0为所有):mdftype
+ /// 魔法抗性%:mdfvalue
///
ExMDF = 8020,
///
- /// exhr
+ /// 数值生命回复,参数:exhr
///
ExHR = 8021,
///
- /// exmr
+ /// 数值魔法回复,参数:exmr
///
- ExMR = 8022
+ ExMR = 8022,
+
+ ///
+ /// 攻击力%,参数:exatk
+ ///
+ ExATK2 = 8023,
+
+ ///
+ /// 物理护甲%,参数:exdef
+ ///
+ ExDEF2 = 8024,
+
+ ///
+ /// 力量%,参数:exstr
+ ///
+ ExSTR2 = 8025,
+
+ ///
+ /// 敏捷%,参数:exagi
+ ///
+ ExAGI2 = 8026,
+
+ ///
+ /// 智力%,参数:exint
+ ///
+ ExINT2 = 8027,
+
+ ///
+ /// 技能硬直时间减少%,参数:shtr
+ ///
+ SkillHardTimeReduce2 = 8028,
+
+ ///
+ /// 普攻硬直时间减少%,参数:nahtr
+ ///
+ NormalAttackHardTimeReduce2 = 8029,
+
+ ///
+ /// 最大生命值%,参数:exhp
+ ///
+ ExMaxHP2 = 8030,
+
+ ///
+ /// 最大魔法值%,参数:exmp
+ ///
+ ExMaxMP2 = 8031,
}
}
diff --git a/OshimaModules/Effects/OpenEffects/ExAGI2.cs b/OshimaModules/Effects/OpenEffects/ExAGI2.cs
new file mode 100644
index 0000000..36edcb6
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/ExAGI2.cs
@@ -0,0 +1,45 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class ExAGI2 : Effect
+ {
+ public override long Id => (long)EffectID.ExAGI2;
+ public override string Name => "敏捷加成";
+ public override string Description => $"增加角色 {加成比例 * 100:0.##}% [ {实际加成:0.##} ] 点敏捷。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 加成比例 = 0;
+ private double 实际加成 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ 实际加成 = character.BaseAGI * 加成比例;
+ character.ExAGI += 实际加成;
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ character.ExAGI -= 实际加成;
+ 实际加成 = 0;
+ }
+
+ public ExAGI2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("exagi", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double exAGI))
+ {
+ 加成比例 = exAGI;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Effects/OpenEffects/ExATK2.cs b/OshimaModules/Effects/OpenEffects/ExATK2.cs
new file mode 100644
index 0000000..f3f3c94
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/ExATK2.cs
@@ -0,0 +1,45 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class ExATK2 : Effect
+ {
+ public override long Id => (long)EffectID.ExATK2;
+ public override string Name => "攻击力加成";
+ public override string Description => $"增加角色 {加成比例 * 100:0.##}% [ {实际加成:0.##} ] 点攻击力。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 加成比例 = 0;
+ private double 实际加成 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ 实际加成 = character.BaseATK * 加成比例;
+ character.ExATK2 += 实际加成;
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ character.ExATK2 -= 实际加成;
+ 实际加成 = 0;
+ }
+
+ public ExATK2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("exatk", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double exATK))
+ {
+ 加成比例 = exATK;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Effects/OpenEffects/ExDEF2.cs b/OshimaModules/Effects/OpenEffects/ExDEF2.cs
new file mode 100644
index 0000000..b15d092
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/ExDEF2.cs
@@ -0,0 +1,45 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class ExDEF2 : Effect
+ {
+ public override long Id => (long)EffectID.ExDEF2;
+ public override string Name => "物理护甲加成";
+ public override string Description => $"增加角色 {加成比例 * 100:0.##}% [ {实际加成:0.##} ] 点物理护甲。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 加成比例 = 0;
+ private double 实际加成 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ 实际加成 = character.BaseDEF * 加成比例;
+ character.ExDEF2 += 实际加成;
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ character.ExDEF2 -= 实际加成;
+ 实际加成 = 0;
+ }
+
+ public ExDEF2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("exdef", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double exDEF))
+ {
+ 加成比例 = exDEF;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Effects/OpenEffects/ExINT2.cs b/OshimaModules/Effects/OpenEffects/ExINT2.cs
new file mode 100644
index 0000000..e874046
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/ExINT2.cs
@@ -0,0 +1,45 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class ExINT2 : Effect
+ {
+ public override long Id => (long)EffectID.ExINT2;
+ public override string Name => "智力加成";
+ public override string Description => $"增加角色 {加成比例 * 100:0.##}% [ {实际加成:0.##} ] 点智力。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 加成比例 = 0;
+ private double 实际加成 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ 实际加成 = character.BaseINT * 加成比例;
+ character.ExINT += 实际加成;
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ character.ExINT -= 实际加成;
+ 实际加成 = 0;
+ }
+
+ public ExINT2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("exint", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double exINT))
+ {
+ 加成比例 = exINT;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Effects/OpenEffects/ExMDF.cs b/OshimaModules/Effects/OpenEffects/ExMDF.cs
index 9ac658b..2ba3eef 100644
--- a/OshimaModules/Effects/OpenEffects/ExMDF.cs
+++ b/OshimaModules/Effects/OpenEffects/ExMDF.cs
@@ -45,15 +45,7 @@ namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
break;
case MagicType.None:
default:
- character.MDF.None += 实际加成;
- character.MDF.Particle += 实际加成;
- character.MDF.Fleabane += 实际加成;
- character.MDF.Element += 实际加成;
- character.MDF.Shadow += 实际加成;
- character.MDF.Bright += 实际加成;
- character.MDF.PurityContemporary += 实际加成;
- character.MDF.PurityNatural += 实际加成;
- character.MDF.Starmark += 实际加成;
+ character.MDF.SetAllValue(实际加成, false);
break;
}
}
@@ -88,15 +80,7 @@ namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
break;
case MagicType.None:
default:
- character.MDF.None -= 实际加成;
- character.MDF.Particle -= 实际加成;
- character.MDF.Fleabane -= 实际加成;
- character.MDF.Element -= 实际加成;
- character.MDF.Shadow -= 实际加成;
- character.MDF.Bright -= 实际加成;
- character.MDF.PurityContemporary -= 实际加成;
- character.MDF.PurityNatural -= 实际加成;
- character.MDF.Starmark -= 实际加成;
+ character.MDF.SetAllValue(-实际加成, false);
break;
}
}
diff --git a/OshimaModules/Effects/OpenEffects/ExMaxHP2.cs b/OshimaModules/Effects/OpenEffects/ExMaxHP2.cs
new file mode 100644
index 0000000..b1b5e89
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/ExMaxHP2.cs
@@ -0,0 +1,45 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class ExMaxHP2 : Effect
+ {
+ public override long Id => (long)EffectID.ExMaxHP2;
+ public override string Name => "最大生命值加成";
+ public override string Description => $"增加角色 {加成比例 * 100:0.##}% [ {实际加成:0.##} ] 点最大生命值。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 加成比例 = 0;
+ private double 实际加成 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ 实际加成 = character.BaseHP * 加成比例;
+ character.ExHP2 += 实际加成;
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ character.ExHP2 -= 实际加成;
+ 实际加成 = 0;
+ }
+
+ public ExMaxHP2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("exhp", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double exHP))
+ {
+ 加成比例 = exHP;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Effects/OpenEffects/ExMaxMP2.cs b/OshimaModules/Effects/OpenEffects/ExMaxMP2.cs
new file mode 100644
index 0000000..aabb9aa
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/ExMaxMP2.cs
@@ -0,0 +1,45 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class ExMaxMP2 : Effect
+ {
+ public override long Id => (long)EffectID.ExMaxMP2;
+ public override string Name => "最大魔法值加成";
+ public override string Description => $"增加角色 {加成比例 * 100:0.##}% [ {实际加成:0.##} ] 点最大魔法值。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 加成比例 = 0;
+ private double 实际加成 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ 实际加成 = character.BaseMP * 加成比例;
+ character.ExMP2 += 实际加成;
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ character.ExMP2 -= 实际加成;
+ 实际加成 = 0;
+ }
+
+ public ExMaxMP2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("exmp", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double exMP))
+ {
+ 加成比例 = exMP;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Effects/OpenEffects/ExSTR.cs b/OshimaModules/Effects/OpenEffects/ExSTR.cs
index 6841151..90796a2 100644
--- a/OshimaModules/Effects/OpenEffects/ExSTR.cs
+++ b/OshimaModules/Effects/OpenEffects/ExSTR.cs
@@ -16,12 +16,12 @@ namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
public override void OnEffectGained(Character character)
{
- character.ExDEF2 += 实际加成;
+ character.ExSTR += 实际加成;
}
public override void OnEffectLost(Character character)
{
- character.ExDEF2 -= 实际加成;
+ character.ExSTR -= 实际加成;
}
public ExSTR(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
diff --git a/OshimaModules/Effects/OpenEffects/ExSTR2.cs b/OshimaModules/Effects/OpenEffects/ExSTR2.cs
new file mode 100644
index 0000000..743083c
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/ExSTR2.cs
@@ -0,0 +1,45 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class ExSTR2 : Effect
+ {
+ public override long Id => (long)EffectID.ExSTR2;
+ public override string Name => "力量加成";
+ public override string Description => $"增加角色 {加成比例 * 100:0.##}% [ {实际加成:0.##} ] 点力量。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 加成比例 = 0;
+ private double 实际加成 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ 实际加成 = character.BaseSTR * 加成比例;
+ character.ExSTR += 实际加成;
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ character.ExSTR -= 实际加成;
+ 实际加成 = 0;
+ }
+
+ public ExSTR2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("exstr", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double exSTR))
+ {
+ 加成比例 = exSTR;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Effects/OpenEffects/NormalAttackHardTimeReduce2.cs b/OshimaModules/Effects/OpenEffects/NormalAttackHardTimeReduce2.cs
new file mode 100644
index 0000000..3c49c1a
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/NormalAttackHardTimeReduce2.cs
@@ -0,0 +1,42 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class NormalAttackHardTimeReduce2 : Effect
+ {
+ public override long Id => (long)EffectID.NormalAttackHardTimeReduce2;
+ public override string Name => Skill.Name;
+ public override string Description => $"减少角色的普通攻击 {减少比例 * 100:0.##}% 硬直时间。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 减少比例 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ character.NormalAttack.HardnessTime -= character.NormalAttack.HardnessTime * 减少比例;
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ character.NormalAttack.HardnessTime += character.NormalAttack.HardnessTime * 减少比例;
+ }
+
+ public NormalAttackHardTimeReduce2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("nahtr", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double nahtr))
+ {
+ 减少比例 = nahtr;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Effects/OpenEffects/SkillHardTimeReduce2.cs b/OshimaModules/Effects/OpenEffects/SkillHardTimeReduce2.cs
new file mode 100644
index 0000000..a4b600e
--- /dev/null
+++ b/OshimaModules/Effects/OpenEffects/SkillHardTimeReduce2.cs
@@ -0,0 +1,58 @@
+using Milimoe.FunGame.Core.Entity;
+using Milimoe.FunGame.Core.Library.Constant;
+
+namespace Oshima.FunGame.OshimaModules.Effects.OpenEffects
+{
+ public class SkillHardTimeReduce2 : Effect
+ {
+ public override long Id => (long)EffectID.SkillHardTimeReduce2;
+ public override string Name => Skill.Name;
+ public override string Description => $"减少角色的所有主动技能 {减少比例 * 100:0.##}% 硬直时间。" + (!TargetSelf ? $"来自:[ {Source} ]" + (Item != null ? $" 的 [ {Item.Name} ]" : "") : "");
+ public override EffectType EffectType => EffectType.Item;
+ public override bool TargetSelf => true;
+
+ public Item? Item { get; }
+ private readonly double 减少比例 = 0;
+
+ public override void OnEffectGained(Character character)
+ {
+ foreach (Skill s in character.Skills)
+ {
+ s.HardnessTime -= s.HardnessTime * 减少比例;
+ }
+ foreach (Skill? s in character.Items.Select(i => i.Skills.Active))
+ {
+ if (s != null)
+ s.HardnessTime -= s.HardnessTime * 减少比例;
+ }
+ }
+
+ public override void OnEffectLost(Character character)
+ {
+ foreach (Skill s in character.Skills)
+ {
+ s.HardnessTime += s.HardnessTime * 减少比例;
+ }
+ foreach (Skill? s in character.Items.Select(i => i.Skills.Active))
+ {
+ if (s != null)
+ s.HardnessTime += s.HardnessTime * 减少比例;
+ }
+ }
+
+ public SkillHardTimeReduce2(Skill skill, Dictionary args, Character? source = null, Item? item = null) : base(skill, args)
+ {
+ GamingQueue = skill.GamingQueue;
+ Source = source;
+ Item = item;
+ if (Values.Count > 0)
+ {
+ string key = Values.Keys.FirstOrDefault(s => s.Equals("shtr", StringComparison.CurrentCultureIgnoreCase)) ?? "";
+ if (key.Length > 0 && double.TryParse(Values[key].ToString(), out double shtr))
+ {
+ 减少比例 = shtr;
+ }
+ }
+ }
+ }
+}
diff --git a/OshimaModules/Items/Accessory/攻击之爪.cs b/OshimaModules/Items/Accessory/攻击之爪.cs
index fb1f563..f81723e 100644
--- a/OshimaModules/Items/Accessory/攻击之爪.cs
+++ b/OshimaModules/Items/Accessory/攻击之爪.cs
@@ -11,7 +11,7 @@ namespace Oshima.FunGame.OshimaModules.Items
public override string Name => "攻击之爪 +10";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
- public 攻击之爪10(Character? character = null) : base(ItemType.Accessory, slot: EquipSlotType.Accessory)
+ public 攻击之爪10(Character? character = null) : base(ItemType.Accessory)
{
Skills.Passives.Add(new 攻击之爪技能(character, this, 10));
}
@@ -23,7 +23,7 @@ namespace Oshima.FunGame.OshimaModules.Items
public override string Name => "攻击之爪 +30";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
- public 攻击之爪30(Character? character = null) : base(ItemType.Accessory, slot: EquipSlotType.Accessory)
+ public 攻击之爪30(Character? character = null) : base(ItemType.Accessory)
{
Skills.Passives.Add(new 攻击之爪技能(character, this, 30));
}
@@ -35,7 +35,7 @@ namespace Oshima.FunGame.OshimaModules.Items
public override string Name => "攻击之爪 +50";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
- public 攻击之爪50(Character? character = null) : base(ItemType.Accessory, slot: EquipSlotType.Accessory)
+ public 攻击之爪50(Character? character = null) : base(ItemType.Accessory)
{
Skills.Passives.Add(new 攻击之爪技能(character, this, 50));
}
diff --git a/OshimaModules/Items/Weapon/独奏弓.cs b/OshimaModules/Items/Weapon/独奏弓.cs
index 84ba2c8..05f8d69 100644
--- a/OshimaModules/Items/Weapon/独奏弓.cs
+++ b/OshimaModules/Items/Weapon/独奏弓.cs
@@ -11,7 +11,7 @@ namespace Oshima.FunGame.OshimaModules.Items
public override string Name => "独奏弓";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
- public 独奏弓(Character? character = null) : base(ItemType.Weapon, slot: EquipSlotType.Weapon)
+ public 独奏弓(Character? character = null) : base(ItemType.Weapon)
{
WeaponType = WeaponType.Bow;
Skills.Passives.Add(new 独奏弓技能(character, this));
diff --git a/OshimaModules/Skills/NiuNan/智慧与力量.cs b/OshimaModules/Skills/NiuNan/智慧与力量.cs
index f87e23c..764bedf 100644
--- a/OshimaModules/Skills/NiuNan/智慧与力量.cs
+++ b/OshimaModules/Skills/NiuNan/智慧与力量.cs
@@ -33,24 +33,26 @@ namespace Oshima.FunGame.OshimaModules.Skills
private double 交换前的额外力量 = 0;
private double 实际增加闪避率 = 0.3;
private double 实际增加魔法抗性 = 0.25;
- private bool 增加过了 = false;
+ private bool 已经加过 = false;
public override void OnEffectGained(Character character)
{
- 增加过了 = true;
ResetEffect(character, true);
}
public override void OnEffectLost(Character character)
{
- 增加过了 = false;
- ResetEffect(character, false);
+ if (character.PrimaryAttribute == PrimaryAttribute.INT)
+ {
+ ResetEffect(character, false);
+ }
}
private void ResetEffect(Character character, bool isAdd)
{
if (isAdd)
{
+ 已经加过 = true;
character.ExEvadeRate += 实际增加闪避率;
character.MDF.None += 实际增加魔法抗性;
character.MDF.Particle += 实际增加魔法抗性;
@@ -64,6 +66,7 @@ namespace Oshima.FunGame.OshimaModules.Skills
}
else
{
+ 已经加过 = false;
character.ExEvadeRate -= 实际增加闪避率;
character.MDF.None -= 实际增加魔法抗性;
character.MDF.Particle -= 实际增加魔法抗性;
@@ -119,9 +122,9 @@ namespace Oshima.FunGame.OshimaModules.Skills
c.ExINT = -c.BaseINT;
c.ExSTR = 交换前的额外智力 + c.BaseINT + 交换前的额外力量;
c.Recovery(pastHP, pastMP, pastMaxHP, pastMaxMP);
- if (!增加过了)
+ if (已经加过)
{
- ResetEffect(character, true);
+ ResetEffect(character, false);
}
}
}
@@ -139,9 +142,9 @@ namespace Oshima.FunGame.OshimaModules.Skills
c.ExINT = 交换前的额外力量 + c.BaseSTR + 交换前的额外智力;
c.ExSTR = -c.BaseSTR;
c.Recovery(pastHP, pastMP, pastMaxHP, pastMaxMP);
- if (增加过了)
+ if (!已经加过)
{
- ResetEffect(character, false);
+ ResetEffect(character, true);
}
}
}
diff --git a/OshimaModules/Skills/Oshima/META马.cs b/OshimaModules/Skills/Oshima/META马.cs
index 4674c3c..b13a0e3 100644
--- a/OshimaModules/Skills/Oshima/META马.cs
+++ b/OshimaModules/Skills/Oshima/META马.cs
@@ -26,7 +26,7 @@ namespace Oshima.FunGame.OshimaModules.Skills
public override string Name => Skill.Name;
public override string Description => $"META马专属被动:力量+5,力量成长+0.5;在受到伤害时,获得的能量提升50%,每回合开始还能获得额外的 [ {EP:0.##} ] 能量值。";
public override bool TargetSelf => true;
- public static double EP => 10;
+ public static double EP => 7;
public override void AlterEPAfterGetDamage(Character character, ref double baseEP)
{
diff --git a/OshimaModules/Skills/Oshima/力量爆发.cs b/OshimaModules/Skills/Oshima/力量爆发.cs
index 278bde0..1dc50b8 100644
--- a/OshimaModules/Skills/Oshima/力量爆发.cs
+++ b/OshimaModules/Skills/Oshima/力量爆发.cs
@@ -22,12 +22,12 @@ namespace Oshima.FunGame.OshimaModules.Skills
{
public override long Id => Skill.Id;
public override string Name => "力量爆发";
- public override string Description => $"获得 150% 力量 [ {攻击力加成:0.##} ] 的攻击力加成,但每次攻击都会损失 9% 当前生命值 [ {当前生命值:0.##} ],持续 {Duration:0.##} 时间。";
+ public override string Description => $"获得 135% 力量 [ {攻击力加成:0.##} ] 的攻击力加成,但每次攻击都会损失 9% 当前生命值 [ {当前生命值:0.##} ],持续 {Duration:0.##} 时间。";
public override bool TargetSelf => true;
public override bool Durative => true;
public override double Duration => 10 + 1 * (Level - 1);
- private double 攻击力加成 => Skill.Character?.STR * 1.5 ?? 0;
+ private double 攻击力加成 => Skill.Character?.STR * 1.35 ?? 0;
private double 当前生命值 => Skill.Character?.HP * 0.09 ?? 0;
private double 实际攻击力加成 = 0;
diff --git a/OshimaModules/Skills/QWQAQW/迅捷之势.cs b/OshimaModules/Skills/QWQAQW/迅捷之势.cs
index 1488691..62d3748 100644
--- a/OshimaModules/Skills/QWQAQW/迅捷之势.cs
+++ b/OshimaModules/Skills/QWQAQW/迅捷之势.cs
@@ -39,8 +39,8 @@ namespace Oshima.FunGame.OshimaModules.Skills
character.NormalAttack.SetMagicType(true, character.MagicType);
实际物理伤害减免 = 物理伤害减免;
实际魔法抗性 = 魔法抗性;
- character.PhysicalPenetration += 实际物理伤害减免;
- character.MagicalPenetration += 实际魔法抗性;
+ character.ExPDR += 实际物理伤害减免;
+ character.MDF.SetAllValue(实际魔法抗性, false);
WriteLine($"[ {character} ] 提升了 {实际物理伤害减免 * 100:0.##}% 物理伤害减免,{实际魔法抗性 * 100:0.##}% 魔法抗性!!");
}
@@ -49,8 +49,8 @@ namespace Oshima.FunGame.OshimaModules.Skills
character.NormalAttack.SetMagicType(false, character.MagicType);
实际物理伤害减免 = 0;
实际魔法抗性 = 0;
- character.PhysicalPenetration -= 实际物理伤害减免;
- character.MagicalPenetration -= 实际魔法抗性;
+ character.ExPDR -= 实际物理伤害减免;
+ character.MDF.SetAllValue(-实际魔法抗性, false);
}
public override void AlterExpectedDamageBeforeCalculation(Character character, Character enemy, ref double damage, bool isNormalAttack, bool isMagicDamage, MagicType magicType)
diff --git a/OshimaModules/Skills/SkillID.cs b/OshimaModules/Skills/SkillID.cs
index badeb82..85be3ef 100644
--- a/OshimaModules/Skills/SkillID.cs
+++ b/OshimaModules/Skills/SkillID.cs
@@ -3,6 +3,32 @@
public enum MagicID : long
{
冰霜攻击 = 1001,
+ 火之矢 = 1002,
+ 水之矢 = 1003,
+ 石之锤 = 1004,
+ 风之轮 = 1005,
+ 心灵之霞 = 1006,
+ 次元上升 = 1007,
+ 暗物质 = 1008,
+
+ 回复术 = 1009,
+ 治愈术 = 1010,
+ 复苏术 = 1011,
+ 圣灵术 = 1012,
+ 时间加速 = 1013,
+ 时间减速 = 1014,
+ 反魔法领域 = 1015,
+ 沉默十字 = 1016,
+ 虚弱领域 = 1017,
+ 混沌烙印 = 1018,
+ 凝胶稠絮 = 1019,
+
+ 大地之墙 = 1020,
+ 盖亚之盾 = 1021,
+ 风之守护 = 1022,
+ 结晶防护 = 1023,
+ 强音之力 = 1024,
+ 神圣祝福 = 1025
}
public enum SkillID : long
diff --git a/OshimaServers/FastAutoServer.cs b/OshimaServers/FastAutoServer.cs
index 9fbfec5..8257746 100644
--- a/OshimaServers/FastAutoServer.cs
+++ b/OshimaServers/FastAutoServer.cs
@@ -516,7 +516,7 @@ namespace Oshima.FunGame.OshimaServers
这次发放的空投 = [new 攻击之爪50()];
foreach (Item item in 这次发放的空投)
{
- queue.Equip(character, EquipItemToSlot.Accessory1, item);
+ queue.Equip(character, EquipSlotType.Accessory1, item);
}
}
}
diff --git a/configs/oshima-studios/oshima.fungame.items.json b/configs/oshima-studios/oshima.fungame.items.json
new file mode 100644
index 0000000..4668e53
--- /dev/null
+++ b/configs/oshima-studios/oshima.fungame.items.json
@@ -0,0 +1,665 @@
+{
+ "黑暗之刃": {
+ "Id": 11543,
+ "Name": "黑暗之刃",
+ "Description": "增加 20 点攻击力。",
+ "BackgroundStory": "传说中的黑暗之刃,蕴含邪恶力量。",
+ "ItemType": 1,
+ "WeaponType": 1,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7001,
+ "Name": "黑暗之刃",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 20
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "烈焰长剑": {
+ "Id": 11544,
+ "Name": "烈焰长剑",
+ "Description": "增加 20 点攻击力。",
+ "BackgroundStory": "火焰中锻造的长剑,散发着炙热气息。",
+ "ItemType": 1,
+ "WeaponType": 2,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7002,
+ "Name": "烈焰长剑",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 20
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "银月弓": {
+ "Id": 11545,
+ "Name": "银月弓",
+ "Description": "增加 20 点攻击力。",
+ "BackgroundStory": "由稀有银月材料制成,精准无比。",
+ "ItemType": 1,
+ "WeaponType": 3,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7003,
+ "Name": "银月弓",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 20
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "风暴步枪": {
+ "Id": 11546,
+ "Name": "风暴步枪",
+ "Description": "增加 20 点攻击力。",
+ "BackgroundStory": "捕捉风暴之力的武器,射速惊人。",
+ "ItemType": 1,
+ "WeaponType": 5,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7004,
+ "Name": "风暴步枪",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 20
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "幽灵拳套": {
+ "Id": 11547,
+ "Name": "幽灵拳套",
+ "Description": "增加 20 点攻击力。",
+ "BackgroundStory": "无形的力量增强拳套,适合迅捷攻击。",
+ "ItemType": 1,
+ "WeaponType": 11,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7005,
+ "Name": "幽灵拳套",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 20
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "雷霆之刃": {
+ "Id": 11548,
+ "Name": "雷霆之刃",
+ "Description": "增加 40 点攻击力。",
+ "BackgroundStory": "蕴含雷霆之力的神秘之剑,斩击时带有雷电。",
+ "ItemType": 1,
+ "WeaponType": 1,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7006,
+ "Name": "雷霆之刃",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 40
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "龙骨重剑": {
+ "Id": 11549,
+ "Name": "龙骨重剑",
+ "Description": "增加 40 点攻击力。",
+ "BackgroundStory": "由远古龙骨锻造而成的巨剑,威力无比。",
+ "ItemType": 1,
+ "WeaponType": 2,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7007,
+ "Name": "龙骨重剑",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 40
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "暗影弓": {
+ "Id": 11550,
+ "Name": "暗影弓",
+ "Description": "增加 40 点攻击力。",
+ "BackgroundStory": "能够穿透黑暗的弓,适合隐匿射击。",
+ "ItemType": 1,
+ "WeaponType": 3,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7008,
+ "Name": "暗影弓",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 40
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "赤焰手枪": {
+ "Id": 11551,
+ "Name": "赤焰手枪",
+ "Description": "增加 40 点攻击力。",
+ "BackgroundStory": "能够发射赤焰的手枪,近距离威力极大。",
+ "ItemType": 1,
+ "WeaponType": 4,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7009,
+ "Name": "赤焰手枪",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 40
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "苍穹法杖": {
+ "Id": 11552,
+ "Name": "苍穹法杖",
+ "Description": "增加 40 点攻击力。",
+ "BackgroundStory": "据说能够召唤天空之力的法杖,拥有强大魔力。",
+ "ItemType": 1,
+ "WeaponType": 8,
+ "Price": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7010,
+ "Name": "苍穹法杖",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 40
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "炽炎剑": {
+ "Id": 11553,
+ "Name": "炽炎剑",
+ "Description": "增加 60 点攻击力。",
+ "BackgroundStory": "这把剑燃烧着永恒的火焰,传说可以焚尽一切。",
+ "ItemType": 1,
+ "WeaponType": 1,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7011,
+ "Name": "炽炎剑",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 60
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "狂风弓": {
+ "Id": 11554,
+ "Name": "狂风弓",
+ "Description": "增加 60 点攻击力。",
+ "BackgroundStory": "每次射击都能引发狂风,传说它由风神亲手打造。",
+ "ItemType": 1,
+ "WeaponType": 3,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7012,
+ "Name": "狂风弓",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 60
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "破晓枪": {
+ "Id": 11555,
+ "Name": "破晓枪",
+ "Description": "增加 60 点攻击力。",
+ "BackgroundStory": "在破晓时分,这把长枪能够穿透任何黑暗。",
+ "ItemType": 1,
+ "WeaponType": 9,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7013,
+ "Name": "破晓枪",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 60
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "幽冥匕首": {
+ "Id": 11556,
+ "Name": "幽冥匕首",
+ "Description": "增加 60 点攻击力。",
+ "BackgroundStory": "这对匕首闪烁着死亡的光芒,专为刺客所用。",
+ "ItemType": 1,
+ "WeaponType": 6,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7014,
+ "Name": "幽冥匕首",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 60
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "天雷杖": {
+ "Id": 11557,
+ "Name": "天雷杖",
+ "Description": "增加 60 点攻击力。",
+ "BackgroundStory": "召唤天雷的法杖,拥有毁天灭地的力量。",
+ "ItemType": 1,
+ "WeaponType": 8,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7015,
+ "Name": "天雷杖",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 60
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "飞雷剑": {
+ "Id": 11558,
+ "Name": "飞雷剑",
+ "Description": "增加 80 点攻击力。",
+ "BackgroundStory": "此剑驾驭飞雷之力,能引发猛烈的雷击。",
+ "ItemType": 1,
+ "WeaponType": 1,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7016,
+ "Name": "雷霆之刃",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 80
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "烈焰法杖": {
+ "Id": 11559,
+ "Name": "烈焰法杖",
+ "Description": "增加 80 点攻击力。",
+ "BackgroundStory": "法杖中燃烧着不灭的火焰,象征着无尽的力量。",
+ "ItemType": 1,
+ "WeaponType": 8,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7017,
+ "Name": "烈焰法杖",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 80
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "龙骨枪": {
+ "Id": 11560,
+ "Name": "龙骨枪",
+ "Description": "增加 80 点攻击力。",
+ "BackgroundStory": "由远古龙骨制成的长柄武器,坚不可摧。",
+ "ItemType": 1,
+ "WeaponType": 9,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7018,
+ "Name": "龙骨枪",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 80
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "疾风双刀": {
+ "Id": 11561,
+ "Name": "疾风双刀",
+ "Description": "增加 80 点攻击力。",
+ "BackgroundStory": "双持短刀,速度如疾风般迅捷。",
+ "ItemType": 1,
+ "WeaponType": 6,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7019,
+ "Name": "疾风双刀",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 80
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "冰晶手枪": {
+ "Id": 11562,
+ "Name": "冰晶手枪",
+ "Description": "增加 80 点攻击力。",
+ "BackgroundStory": "由冰晶打造的手枪,子弹带有极寒之力。",
+ "ItemType": 1,
+ "WeaponType": 4,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7020,
+ "Name": "冰晶手枪",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 80
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "影刃": {
+ "Id": 11563,
+ "Description": "增加 105 点攻击力。",
+ "Name": "影刃",
+ "BackgroundStory": "藏于黑暗中的锋利刀刃,只在敌人未察觉时现身。",
+ "ItemType": 1,
+ "WeaponType": 11,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7021,
+ "Name": "影刃",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 105
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "寒霜之弓": {
+ "Id": 11564,
+ "Name": "寒霜之弓",
+ "Description": "增加 105 点攻击力。",
+ "BackgroundStory": "弓弦上凝聚寒霜,箭矢能冻结一切。",
+ "ItemType": 1,
+ "WeaponType": 3,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7022,
+ "Name": "寒霜之弓",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 105
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "雷鸣战斧": {
+ "Id": 11565,
+ "Name": "雷鸣战斧",
+ "Description": "增加 105 点攻击力。",
+ "BackgroundStory": "携带雷电之力的巨斧,一击之下,雷声轰鸣。",
+ "ItemType": 1,
+ "WeaponType": 2,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7023,
+ "Name": "雷鸣战斧",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 105
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "狂怒拳套": {
+ "Id": 11566,
+ "Name": "狂怒拳套",
+ "Description": "增加 105 点攻击力。",
+ "BackgroundStory": "拳套内的力量能激发佩戴者的狂怒,造成大量伤害。",
+ "ItemType": 1,
+ "WeaponType": 10,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7024,
+ "Name": "狂怒拳套",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 105
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "星辰法器": {
+ "Id": 11567,
+ "Name": "星辰法器",
+ "Description": "增加 105 点攻击力。",
+ "BackgroundStory": "法器中蕴含着星辰之力,每一次攻击都如天外陨石降临。",
+ "ItemType": 1,
+ "WeaponType": 7,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7025,
+ "Name": "星辰法器",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8001,
+ "exatk": 105
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "圣洁之盾": {
+ "Id": 20001,
+ "Name": "圣洁之盾",
+ "Description": "受到的物理伤害减少 25%。",
+ "BackgroundStory": "传说中由圣光祝福的盾牌,能够抵挡邪恶的力量。",
+ "ItemType": 2,
+ "WeaponType": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7100,
+ "Name": "圣光护佑",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8019,
+ "expdr": 0.25
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "魔能法袍": {
+ "Id": 20005,
+ "Name": "魔能法袍",
+ "Description": "提高 20% 魔抗,增加 15 点智力。",
+ "BackgroundStory": "法袍蕴含着神秘的魔力,穿戴者能增强魔法威力。",
+ "ItemType": 2,
+ "WeaponType": 0,
+ "Skills": {
+ "Active": null,
+ "Passives": [
+ {
+ "Id": 7104,
+ "Name": "魔力增幅",
+ "SkillType": 3,
+ "Effects": [
+ {
+ "Id": 8005,
+ "exint": 15
+ },
+ {
+ "Id": 8020,
+ "mdftype": 0,
+ "mdfvalue": 0.2
+ }
+ ]
+ }
+ ]
+ }
+ }
+}
\ No newline at end of file