mirror of
https://github.com/milimoe/FunGame-Testing.git
synced 2025-04-23 04:39:34 +08:00
实装魔法/能量消耗减少 添加其他统计
This commit is contained in:
parent
2ad3844d10
commit
aa8ef765e8
@ -16,7 +16,7 @@ namespace FunGame.Testing.Characters
|
|||||||
c.NickName = "大島シヤ";
|
c.NickName = "大島シヤ";
|
||||||
c.PrimaryAttribute = PrimaryAttribute.STR;
|
c.PrimaryAttribute = PrimaryAttribute.STR;
|
||||||
c.InitialATK = 25;
|
c.InitialATK = 25;
|
||||||
c.InitialHP = 145;
|
c.InitialHP = 85;
|
||||||
c.InitialMP = 10;
|
c.InitialMP = 10;
|
||||||
c.InitialSTR = 35;
|
c.InitialSTR = 35;
|
||||||
c.STRGrowth = 3.5;
|
c.STRGrowth = 3.5;
|
||||||
@ -216,7 +216,7 @@ namespace FunGame.Testing.Characters
|
|||||||
c.NickName = "LUOLI66";
|
c.NickName = "LUOLI66";
|
||||||
c.PrimaryAttribute = PrimaryAttribute.INT;
|
c.PrimaryAttribute = PrimaryAttribute.INT;
|
||||||
c.InitialATK = 18;
|
c.InitialATK = 18;
|
||||||
c.InitialHP = 85;
|
c.InitialHP = 125;
|
||||||
c.InitialMP = 45;
|
c.InitialMP = 45;
|
||||||
c.InitialSTR = 0;
|
c.InitialSTR = 0;
|
||||||
c.STRGrowth = 0;
|
c.STRGrowth = 0;
|
||||||
@ -241,7 +241,7 @@ namespace FunGame.Testing.Characters
|
|||||||
c.NickName = "冷蓝";
|
c.NickName = "冷蓝";
|
||||||
c.PrimaryAttribute = PrimaryAttribute.STR;
|
c.PrimaryAttribute = PrimaryAttribute.STR;
|
||||||
c.InitialATK = 28;
|
c.InitialATK = 28;
|
||||||
c.InitialHP = 135;
|
c.InitialHP = 95;
|
||||||
c.InitialMP = 25;
|
c.InitialMP = 25;
|
||||||
c.InitialSTR = 22;
|
c.InitialSTR = 22;
|
||||||
c.STRGrowth = 1.9;
|
c.STRGrowth = 1.9;
|
||||||
|
35
Library/Effects/ItemEffects/冷却缩减加成.cs
Normal file
35
Library/Effects/ItemEffects/冷却缩减加成.cs
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
using Milimoe.FunGame.Core.Entity;
|
||||||
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
|
|
||||||
|
namespace FunGame.Testing.Effects
|
||||||
|
{
|
||||||
|
public class 冷却缩减加成 : Effect
|
||||||
|
{
|
||||||
|
public override long Id => Skill.Id;
|
||||||
|
public override string Name => Skill.Name;
|
||||||
|
public override string Description => $"增加角色 {实际冷却缩减加成 * 100:0.##}% 冷却缩减。" + (!TargetSelf ? $"来自:[ {Source} ] 的 [ {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.ExCDR += 实际冷却缩减加成;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnEffectLost(Character character)
|
||||||
|
{
|
||||||
|
character.ExCDR -= 实际冷却缩减加成;
|
||||||
|
}
|
||||||
|
|
||||||
|
public 冷却缩减加成(Skill skill, Character? source, Item item, double exCdr) : base(skill)
|
||||||
|
{
|
||||||
|
ActionQueue = skill.ActionQueue;
|
||||||
|
Source = source;
|
||||||
|
Item = item;
|
||||||
|
实际冷却缩减加成 = exCdr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
52
Library/Effects/ItemEffects/技能硬直时间减少.cs
Normal file
52
Library/Effects/ItemEffects/技能硬直时间减少.cs
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
using Milimoe.FunGame.Core.Api.Utility;
|
||||||
|
using Milimoe.FunGame.Core.Entity;
|
||||||
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
|
|
||||||
|
namespace FunGame.Testing.Effects
|
||||||
|
{
|
||||||
|
public class 技能硬直时间减少 : Effect
|
||||||
|
{
|
||||||
|
public override long Id => Skill.Id;
|
||||||
|
public override string Name => Skill.Name;
|
||||||
|
public override string Description => $"减少角色的所有主动技能 {实际硬直时间减少} 硬直时间。" + (!TargetSelf ? $"来自:[ {Source} ] 的 [ {Item.Name} ]" : "");
|
||||||
|
public override EffectType EffectType => EffectType.Item;
|
||||||
|
public override bool TargetSelf => true;
|
||||||
|
|
||||||
|
public Item Item { get; }
|
||||||
|
private readonly double 实际硬直时间减少 = 2;
|
||||||
|
|
||||||
|
public override void OnEffectGained(Character character)
|
||||||
|
{
|
||||||
|
foreach (Skill s in character.Skills)
|
||||||
|
{
|
||||||
|
s.HardnessTime = Calculation.Round2Digits(s.HardnessTime - 实际硬直时间减少);
|
||||||
|
}
|
||||||
|
foreach (Skill? s in character.Items.Select(i => i.Skills.Active))
|
||||||
|
{
|
||||||
|
if (s != null)
|
||||||
|
s.HardnessTime = Calculation.Round2Digits(s.HardnessTime - 实际硬直时间减少);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnEffectLost(Character character)
|
||||||
|
{
|
||||||
|
foreach (Skill s in character.Skills)
|
||||||
|
{
|
||||||
|
s.HardnessTime = Calculation.Round2Digits(s.HardnessTime + 实际硬直时间减少);
|
||||||
|
}
|
||||||
|
foreach (Skill? s in character.Items.Select(i => i.Skills.Active))
|
||||||
|
{
|
||||||
|
if (s != null)
|
||||||
|
s.HardnessTime = Calculation.Round2Digits(s.HardnessTime + 实际硬直时间减少);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public 技能硬直时间减少(Skill skill, Character? source, Item item, double reduce) : base(skill)
|
||||||
|
{
|
||||||
|
ActionQueue = skill.ActionQueue;
|
||||||
|
Source = source;
|
||||||
|
Item = item;
|
||||||
|
实际硬直时间减少 = reduce;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
35
Library/Effects/ItemEffects/攻击力加成.cs
Normal file
35
Library/Effects/ItemEffects/攻击力加成.cs
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
using Milimoe.FunGame.Core.Entity;
|
||||||
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
|
|
||||||
|
namespace FunGame.Testing.Effects
|
||||||
|
{
|
||||||
|
public class 攻击力加成 : Effect
|
||||||
|
{
|
||||||
|
public override long Id => Skill.Id;
|
||||||
|
public override string Name => Skill.Name;
|
||||||
|
public override string Description => $"增加角色 {实际攻击力加成} 点攻击力。" + (!TargetSelf ? $"来自:[ {Source} ] 的 [ {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.ExATK2 += 实际攻击力加成;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnEffectLost(Character character)
|
||||||
|
{
|
||||||
|
character.ExATK2 -= 实际攻击力加成;
|
||||||
|
}
|
||||||
|
|
||||||
|
public 攻击力加成(Skill skill, Character? source, Item item, double exATK) : base(skill)
|
||||||
|
{
|
||||||
|
ActionQueue = skill.ActionQueue;
|
||||||
|
Source = source;
|
||||||
|
Item = item;
|
||||||
|
实际攻击力加成 = exATK;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
36
Library/Effects/ItemEffects/普攻硬直时间减少.cs
Normal file
36
Library/Effects/ItemEffects/普攻硬直时间减少.cs
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
using Milimoe.FunGame.Core.Api.Utility;
|
||||||
|
using Milimoe.FunGame.Core.Entity;
|
||||||
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
|
|
||||||
|
namespace FunGame.Testing.Effects
|
||||||
|
{
|
||||||
|
public class 普攻硬直时间减少 : Effect
|
||||||
|
{
|
||||||
|
public override long Id => Skill.Id;
|
||||||
|
public override string Name => Skill.Name;
|
||||||
|
public override string Description => $"减少角色的普通攻击 {实际硬直时间减少} 硬直时间。" + (!TargetSelf ? $"来自:[ {Source} ] 的 [ {Item.Name} ]" : "");
|
||||||
|
public override EffectType EffectType => EffectType.Item;
|
||||||
|
public override bool TargetSelf => true;
|
||||||
|
|
||||||
|
public Item Item { get; }
|
||||||
|
private readonly double 实际硬直时间减少 = 2;
|
||||||
|
|
||||||
|
public override void OnEffectGained(Character character)
|
||||||
|
{
|
||||||
|
character.NormalAttack.HardnessTime = Calculation.Round2Digits(character.NormalAttack.HardnessTime - 实际硬直时间减少); ;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnEffectLost(Character character)
|
||||||
|
{
|
||||||
|
character.NormalAttack.HardnessTime = Calculation.Round2Digits(character.NormalAttack.HardnessTime + 实际硬直时间减少); ;
|
||||||
|
}
|
||||||
|
|
||||||
|
public 普攻硬直时间减少(Skill skill, Character? source, Item item, double reduce) : base(skill)
|
||||||
|
{
|
||||||
|
ActionQueue = skill.ActionQueue;
|
||||||
|
Source = source;
|
||||||
|
Item = item;
|
||||||
|
实际硬直时间减少 = reduce;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
35
Library/Effects/ItemEffects/物理护甲加成.cs
Normal file
35
Library/Effects/ItemEffects/物理护甲加成.cs
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
using Milimoe.FunGame.Core.Entity;
|
||||||
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
|
|
||||||
|
namespace FunGame.Testing.Effects
|
||||||
|
{
|
||||||
|
public class 物理护甲加成 : Effect
|
||||||
|
{
|
||||||
|
public override long Id => Skill.Id;
|
||||||
|
public override string Name => Skill.Name;
|
||||||
|
public override string Description => $"增加角色 {实际物理护甲加成} 点物理护甲。" + (!TargetSelf ? $"来自:[ {Source} ] 的 [ {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.ExDEF2 += 实际物理护甲加成;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnEffectLost(Character character)
|
||||||
|
{
|
||||||
|
character.ExDEF2 -= 实际物理护甲加成;
|
||||||
|
}
|
||||||
|
|
||||||
|
public 物理护甲加成(Skill skill, Character? source, Item item, double exDef) : base(skill)
|
||||||
|
{
|
||||||
|
ActionQueue = skill.ActionQueue;
|
||||||
|
Source = source;
|
||||||
|
Item = item;
|
||||||
|
实际物理护甲加成 = exDef;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -14,4 +14,11 @@
|
|||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<Folder Include="Items\Armor\" />
|
||||||
|
<Folder Include="Items\Consumable\" />
|
||||||
|
<Folder Include="Items\MagicCardPack\" />
|
||||||
|
<Folder Include="Items\Shoes\" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
using Milimoe.FunGame.Core.Entity;
|
using FunGame.Testing.Effects;
|
||||||
|
using Milimoe.FunGame.Core.Entity;
|
||||||
using Milimoe.FunGame.Core.Library.Constant;
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
|
|
||||||
namespace FunGame.Testing.Items
|
namespace FunGame.Testing.Items
|
||||||
@ -48,7 +49,7 @@ namespace FunGame.Testing.Items
|
|||||||
{
|
{
|
||||||
Level = 1;
|
Level = 1;
|
||||||
Item = item;
|
Item = item;
|
||||||
Effects.Add(new 攻击之爪特效(this, character, item, exATK));
|
Effects.Add(new 攻击力加成(this, character, item, exATK));
|
||||||
}
|
}
|
||||||
|
|
||||||
public override IEnumerable<Effect> AddInactiveEffectToCharacter()
|
public override IEnumerable<Effect> AddInactiveEffectToCharacter()
|
||||||
@ -56,34 +57,4 @@ namespace FunGame.Testing.Items
|
|||||||
return Effects;
|
return Effects;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class 攻击之爪特效 : Effect
|
|
||||||
{
|
|
||||||
public override long Id => Skill.Id;
|
|
||||||
public override string Name => Skill.Name;
|
|
||||||
public override string Description => $"增加角色 {攻击力加成} 点攻击力。" + (!TargetSelf ? $"来自:[ {Source} ] 的 [ {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.ExATK2 += 攻击力加成;
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void OnEffectLost(Character character)
|
|
||||||
{
|
|
||||||
character.ExATK2 -= 攻击力加成;
|
|
||||||
}
|
|
||||||
|
|
||||||
public 攻击之爪特效(Skill skill, Character? source, Item item, double exATK) : base(skill)
|
|
||||||
{
|
|
||||||
ActionQueue = skill.ActionQueue;
|
|
||||||
Source = source;
|
|
||||||
Item = item;
|
|
||||||
攻击力加成 = exATK;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
43
Library/Items/Weapon/独奏弓.cs
Normal file
43
Library/Items/Weapon/独奏弓.cs
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
using FunGame.Testing.Effects;
|
||||||
|
using Milimoe.FunGame.Core.Entity;
|
||||||
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
|
|
||||||
|
namespace FunGame.Testing.Items
|
||||||
|
{
|
||||||
|
public class 独奏弓 : Item
|
||||||
|
{
|
||||||
|
public override long Id => 11001;
|
||||||
|
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)
|
||||||
|
{
|
||||||
|
WeaponType = WeaponType.Bow;
|
||||||
|
Skills.Passives.Add(new 独奏弓技能(character, this));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class 独奏弓技能 : Skill
|
||||||
|
{
|
||||||
|
public override long Id => 5002;
|
||||||
|
public override string Name => "独奏弓";
|
||||||
|
public override string Description => $"增加角色 {攻击力加成} 点攻击力,减少普通攻击 {硬直时间减少} 硬直时间。";
|
||||||
|
public Item Item { get; }
|
||||||
|
|
||||||
|
private readonly double 攻击力加成 = 80;
|
||||||
|
private readonly double 硬直时间减少 = 2;
|
||||||
|
|
||||||
|
public 独奏弓技能(Character? character, Item item) : base(SkillType.Passive, character)
|
||||||
|
{
|
||||||
|
Level = 1;
|
||||||
|
Item = item;
|
||||||
|
Effects.Add(new 攻击力加成(this, character, item, 攻击力加成));
|
||||||
|
Effects.Add(new 普攻硬直时间减少(this, character, item, 硬直时间减少));
|
||||||
|
}
|
||||||
|
|
||||||
|
public override IEnumerable<Effect> AddInactiveEffectToCharacter()
|
||||||
|
{
|
||||||
|
return Effects;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -12,7 +12,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 42 - 1 * (Level - 1);
|
public override double CD => 42 - 1 * (Level - 1);
|
||||||
public override double HardnessTime => 12;
|
public override double HardnessTime { get; set; } = 12;
|
||||||
|
|
||||||
public 嗜血本能(Character character) : base(SkillType.SuperSkill, character)
|
public 嗜血本能(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 40 - 1 * (Level - 1);
|
public override double CD => 40 - 1 * (Level - 1);
|
||||||
public override double HardnessTime => 8;
|
public override double HardnessTime { get; set; } = 8;
|
||||||
|
|
||||||
public 精准打击(Character character) : base(SkillType.SuperSkill, character)
|
public 精准打击(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -10,7 +10,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 35 - 2 * (Level - 1);
|
public override double CD => 35 - 2 * (Level - 1);
|
||||||
public override double HardnessTime => 10;
|
public override double HardnessTime { get; set; } = 10;
|
||||||
|
|
||||||
public 三重叠加(Character character) : base(SkillType.SuperSkill, character)
|
public 三重叠加(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 30;
|
public override double CD => 30;
|
||||||
public override double HardnessTime => 10;
|
public override double HardnessTime { get; set; } = 10;
|
||||||
|
|
||||||
public 变幻之心(Character character) : base(SkillType.SuperSkill, character)
|
public 变幻之心(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 55;
|
public override double CD => 55;
|
||||||
public override double HardnessTime => 0;
|
public override double HardnessTime { get; set; } = 0;
|
||||||
|
|
||||||
public 力量爆发(Character character) : base(SkillType.SuperSkill, character)
|
public 力量爆发(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -26,7 +26,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override long Id => Skill.Id;
|
public override long Id => Skill.Id;
|
||||||
public override string Name => Skill.Name;
|
public override string Name => Skill.Name;
|
||||||
public override string Description => $"生命值高于 30% 时,受到额外的 [ {高于30额外伤害下限}~{高于30额外伤害上限}% ] 伤害,但是获得 [ 累计所受伤害的 {高于30的加成下限}~{高于30的加成上限}% ] 伤害加成;生命值低于等于 30% 时,不会受到额外的伤害,仅能获得 [ 累计受到的伤害 {低于30的加成下限}~{低于30的加成上限}% ] 伤害加成。" +
|
public override string Description => $"生命值高于 30% 时,受到额外的 [ {高于30额外伤害下限}~{高于30额外伤害上限}% ] 伤害,但是获得 [ 累计所受伤害的 {高于30的加成下限}~{高于30的加成上限}% ] 伤害加成;生命值低于等于 30% 时,不会受到额外的伤害,仅能获得 [ 累计受到的伤害 {低于30的加成下限}~{低于30的加成上限}% ] 伤害加成。" +
|
||||||
$"在没有受到任何伤害的时候,将获得 {常规伤害加成 * 100:0.##}% 伤害加成。" + (累计受到的伤害 > 0 ? $"(当前伤害加成:{伤害加成(累计受到的伤害) * 100:0.##}%)" : "");
|
$"在没有受到任何伤害的时候,将获得 {常规伤害加成 * 100:0.##}% 伤害加成。" + (累计受到的伤害 > 0 ? $"(当前累计受到伤害:{累计受到的伤害})" : "");
|
||||||
public override bool TargetSelf => true;
|
public override bool TargetSelf => true;
|
||||||
|
|
||||||
private double 累计受到的伤害 = 0;
|
private double 累计受到的伤害 = 0;
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 60 - 2 * (Level - 1);
|
public override double CD => 60 - 2 * (Level - 1);
|
||||||
public override double HardnessTime => 15;
|
public override double HardnessTime { get; set; } = 15;
|
||||||
|
|
||||||
public 迅捷之势(Character character) : base(SkillType.SuperSkill, character)
|
public 迅捷之势(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 55 - 3 * (Level - 1);
|
public override double CD => 55 - 3 * (Level - 1);
|
||||||
public override double HardnessTime => 25;
|
public override double HardnessTime { get; set; } = 25;
|
||||||
|
|
||||||
public 能量毁灭(Character character) : base(SkillType.SuperSkill, character)
|
public 能量毁灭(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
@ -30,7 +30,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
|
|
||||||
private double 智力系数 => Calculation.Round4Digits(0.55 * Level);
|
private double 智力系数 => Calculation.Round4Digits(0.55 * Level);
|
||||||
private double 智力伤害 => Calculation.Round2Digits(智力系数 * Skill.Character?.INT ?? 0);
|
private double 智力伤害 => Calculation.Round2Digits(智力系数 * Skill.Character?.INT ?? 0);
|
||||||
private readonly double 能量系数 = Calculation.Round4Digits(4.5);
|
private double 能量系数 => Calculation.Round4Digits(0.75 * Level);
|
||||||
|
|
||||||
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
|
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
|
||||||
{
|
{
|
||||||
|
@ -12,7 +12,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 45;
|
public override double CD => 45;
|
||||||
public override double HardnessTime => 7;
|
public override double HardnessTime { get; set; } = 7;
|
||||||
|
|
||||||
public 血之狂欢(Character character) : base(SkillType.SuperSkill, character)
|
public 血之狂欢(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 60;
|
public override double CD => 60;
|
||||||
public override double HardnessTime => 15;
|
public override double HardnessTime { get; set; } = 15;
|
||||||
|
|
||||||
public 天赐之力(Character character) : base(SkillType.SuperSkill, character)
|
public 天赐之力(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 35;
|
public override double CD => 35;
|
||||||
public override double HardnessTime => 10;
|
public override double HardnessTime { get; set; } = 10;
|
||||||
|
|
||||||
public 魔法涌流(Character character) : base(SkillType.SuperSkill, character)
|
public 魔法涌流(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -9,9 +9,9 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override long Id => 2001;
|
public override long Id => 2001;
|
||||||
public override string Name => "疾风步";
|
public override string Name => "疾风步";
|
||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 35;
|
public override double EPCost => 60;
|
||||||
public override double CD => 35;
|
public override double CD => 35;
|
||||||
public override double HardnessTime => 5;
|
public override double HardnessTime { get; set; } = 5;
|
||||||
|
|
||||||
public 疾风步(Character character) : base(SkillType.Skill, character)
|
public 疾风步(Character character) : base(SkillType.Skill, character)
|
||||||
{
|
{
|
||||||
|
@ -10,7 +10,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => 100;
|
public override double EPCost => 100;
|
||||||
public override double CD => 55 - (1 * (Level - 1));
|
public override double CD => 55 - (1 * (Level - 1));
|
||||||
public override double HardnessTime => 12;
|
public override double HardnessTime { get; set; } = 12;
|
||||||
|
|
||||||
public 平衡强化(Character character) : base(SkillType.SuperSkill, character)
|
public 平衡强化(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double EPCost => Math.Max(100, Character?.EP ?? 100);
|
public override double EPCost => Math.Max(100, Character?.EP ?? 100);
|
||||||
public override double CD => 32 + (1 * (Level - 1));
|
public override double CD => 32 + (1 * (Level - 1));
|
||||||
public override double HardnessTime => 12;
|
public override double HardnessTime { get; set; } = 12;
|
||||||
|
|
||||||
public 绝对领域(Character character) : base(SkillType.SuperSkill, character)
|
public 绝对领域(Character character) : base(SkillType.SuperSkill, character)
|
||||||
{
|
{
|
||||||
|
@ -9,11 +9,10 @@ namespace Milimoe.FunGame.Testing.Skills
|
|||||||
public override long Id => 2001;
|
public override long Id => 2001;
|
||||||
public override string Name => "冰霜攻击";
|
public override string Name => "冰霜攻击";
|
||||||
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
|
||||||
public override double MPCost => BaseMPCost + (50 * (Level - 1));
|
public override double MPCost => 30 + (50 * (Level - 1));
|
||||||
public override double CD => 20;
|
public override double CD => 20;
|
||||||
public override double CastTime => 6;
|
public override double CastTime => 6;
|
||||||
public override double HardnessTime => 3;
|
public override double HardnessTime { get; set; } = 3;
|
||||||
protected override double BaseMPCost => 30;
|
|
||||||
|
|
||||||
public 冰霜攻击(Character character) : base(SkillType.Magic, character)
|
public 冰霜攻击(Character character) : base(SkillType.Magic, character)
|
||||||
{
|
{
|
||||||
|
@ -104,9 +104,9 @@ namespace Milimoe.FunGame.Testing.Tests
|
|||||||
character9, character10, character11, character12
|
character9, character10, character11, character12
|
||||||
];
|
];
|
||||||
|
|
||||||
int clevel = 25;
|
int clevel = 60;
|
||||||
int slevel = 3;
|
int slevel = 6;
|
||||||
int mlevel = 4;
|
int mlevel = 8;
|
||||||
|
|
||||||
// 升级和赋能
|
// 升级和赋能
|
||||||
for (int index = 0; index < characters.Count; index++)
|
for (int index = 0; index < characters.Count; index++)
|
||||||
@ -395,16 +395,16 @@ namespace Milimoe.FunGame.Testing.Tests
|
|||||||
// 赛后统计
|
// 赛后统计
|
||||||
WriteLine("==== 伤害排行榜 TOP6 ====");
|
WriteLine("==== 伤害排行榜 TOP6 ====");
|
||||||
Msg = "==== 伤害排行榜 TOP6 ====\r\n";
|
Msg = "==== 伤害排行榜 TOP6 ====\r\n";
|
||||||
// 显示前四的角色统计
|
|
||||||
int count = 1;
|
int count = 1;
|
||||||
foreach (Character character in actionQueue.CharacterStatistics.OrderByDescending(d => d.Value.TotalDamage).Select(d => d.Key))
|
foreach (Character character in actionQueue.CharacterStatistics.OrderByDescending(d => d.Value.TotalDamage).Select(d => d.Key))
|
||||||
{
|
{
|
||||||
StringBuilder builder = new();
|
StringBuilder builder = new();
|
||||||
CharacterStatistics stats = actionQueue.CharacterStatistics[character];
|
CharacterStatistics stats = actionQueue.CharacterStatistics[character];
|
||||||
builder.AppendLine($"{count}. [ {character.ToStringWithLevel()} ]");
|
builder.AppendLine($"{count}. [ {character.ToStringWithLevel()} ] ({stats.Kills} / {stats.Assists})");
|
||||||
builder.AppendLine($"存活时长:{stats.LiveTime} / 存活回合数:{stats.LiveRound} / 行动回合数:{stats.ActionTurn}");
|
builder.AppendLine($"存活时长:{stats.LiveTime} / 存活回合数:{stats.LiveRound} / 行动回合数:{stats.ActionTurn}");
|
||||||
builder.AppendLine($"总计伤害:{stats.TotalDamage} / 每秒伤害:{stats.DamagePerSecond} / 每回合伤害:{stats.DamagePerTurn}");
|
builder.AppendLine($"总计伤害:{stats.TotalDamage} / 总计物理伤害:{stats.TotalPhysicalDamage} / 总计魔法伤害:{stats.TotalMagicDamage}");
|
||||||
builder.Append($"总计物理伤害:{stats.TotalPhysicalDamage} / 总计魔法伤害:{stats.TotalMagicDamage}");
|
builder.AppendLine($"总承受伤害:{stats.TotalTakenDamage} / 总承受物理伤害:{stats.TotalTakenPhysicalDamage} / 总承受魔法伤害:{stats.TotalTakenMagicDamage}");
|
||||||
|
builder.Append($"每秒伤害:{stats.DamagePerSecond} / 每回合伤害:{stats.DamagePerTurn}");
|
||||||
if (count++ <= 6)
|
if (count++ <= 6)
|
||||||
{
|
{
|
||||||
WriteLine(builder.ToString());
|
WriteLine(builder.ToString());
|
||||||
|
Loading…
x
Reference in New Issue
Block a user