diff --git a/Library/Main.cs b/Library/Main.cs index 94ac83e..ed496af 100644 --- a/Library/Main.cs +++ b/Library/Main.cs @@ -12,8 +12,9 @@ ItemModule im = new(); im.Load(); FunGameSimulation.InitCharacter(); +FunGameSimulation.StartGame(true, false, true); -Stopwatch stopwatch = new Stopwatch(); +Stopwatch stopwatch = new(); stopwatch.Start(); for (int i = 0; i < 300; i++) diff --git a/Library/Skills/ColdBlue/嗜血本能.cs b/Library/Skills/ColdBlue/嗜血本能.cs index 48e7ff0..4c97e06 100644 --- a/Library/Skills/ColdBlue/嗜血本能.cs +++ b/Library/Skills/ColdBlue/嗜血本能.cs @@ -50,7 +50,7 @@ namespace Milimoe.FunGame.Testing.Skills } } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/MagicalGirl/绝对领域.cs b/Library/Skills/MagicalGirl/绝对领域.cs index 0713e42..ca21027 100644 --- a/Library/Skills/MagicalGirl/绝对领域.cs +++ b/Library/Skills/MagicalGirl/绝对领域.cs @@ -59,7 +59,7 @@ namespace Milimoe.FunGame.Testing.Skills 释放时的能量值 = caster.EP; } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/Mayor/精准打击.cs b/Library/Skills/Mayor/精准打击.cs index 608e62f..e2cb069 100644 --- a/Library/Skills/Mayor/精准打击.cs +++ b/Library/Skills/Mayor/精准打击.cs @@ -52,7 +52,7 @@ namespace Milimoe.FunGame.Testing.Skills character.PhysicalPenetration -= 实际物理穿透提升; } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/NanGanyu/三重叠加.cs b/Library/Skills/NanGanyu/三重叠加.cs index 6a049dd..40fa7a6 100644 --- a/Library/Skills/NanGanyu/三重叠加.cs +++ b/Library/Skills/NanGanyu/三重叠加.cs @@ -51,7 +51,7 @@ namespace Milimoe.FunGame.Testing.Skills } } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { 剩余持续次数 = 技能持续次数; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/NiuNan/变幻之心.cs b/Library/Skills/NiuNan/变幻之心.cs index f200aa4..4337220 100644 --- a/Library/Skills/NiuNan/变幻之心.cs +++ b/Library/Skills/NiuNan/变幻之心.cs @@ -51,7 +51,7 @@ namespace Milimoe.FunGame.Testing.Skills } } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { IEnumerable effects = caster.Effects.Where(e => e is 智慧与力量特效); if (effects.Any()) diff --git a/Library/Skills/Oshima/力量爆发.cs b/Library/Skills/Oshima/力量爆发.cs index 554b723..758841b 100644 --- a/Library/Skills/Oshima/力量爆发.cs +++ b/Library/Skills/Oshima/力量爆发.cs @@ -54,7 +54,7 @@ namespace Milimoe.FunGame.Testing.Skills } } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/QWQAQW/迅捷之势.cs b/Library/Skills/QWQAQW/迅捷之势.cs index db314ee..3772154 100644 --- a/Library/Skills/QWQAQW/迅捷之势.cs +++ b/Library/Skills/QWQAQW/迅捷之势.cs @@ -66,7 +66,7 @@ namespace Milimoe.FunGame.Testing.Skills baseHardnessTime *= 0.3; } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/QingXiang/能量毁灭.cs b/Library/Skills/QingXiang/能量毁灭.cs index 825af9e..132056c 100644 --- a/Library/Skills/QingXiang/能量毁灭.cs +++ b/Library/Skills/QingXiang/能量毁灭.cs @@ -32,9 +32,9 @@ namespace Milimoe.FunGame.Testing.Skills private double 智力伤害 => 智力系数 * Skill.Character?.INT ?? 0; private double 能量系数 => 1.05 * Level; - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { - foreach (Character c in enemys) + foreach (Character c in targets) { WriteLine($"[ {caster} ] 正在毁灭 [ {c} ] 的能量!!"); double ep = c.EP; diff --git a/Library/Skills/QuDuoduo/血之狂欢.cs b/Library/Skills/QuDuoduo/血之狂欢.cs index 1cf8ac5..2604291 100644 --- a/Library/Skills/QuDuoduo/血之狂欢.cs +++ b/Library/Skills/QuDuoduo/血之狂欢.cs @@ -37,7 +37,7 @@ namespace Milimoe.FunGame.Testing.Skills } } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/XinYin/天赐之力.cs b/Library/Skills/XinYin/天赐之力.cs index 385fbf8..b236b71 100644 --- a/Library/Skills/XinYin/天赐之力.cs +++ b/Library/Skills/XinYin/天赐之力.cs @@ -76,7 +76,7 @@ namespace Milimoe.FunGame.Testing.Skills baseHardnessTime *= 0.8; } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/Yang/魔法涌流.cs b/Library/Skills/Yang/魔法涌流.cs index fdea7ef..b0384db 100644 --- a/Library/Skills/Yang/魔法涌流.cs +++ b/Library/Skills/Yang/魔法涌流.cs @@ -50,7 +50,7 @@ namespace Milimoe.FunGame.Testing.Skills return false; } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/dddovo/平衡强化.cs b/Library/Skills/dddovo/平衡强化.cs index ddff3a0..ea5a420 100644 --- a/Library/Skills/dddovo/平衡强化.cs +++ b/Library/Skills/dddovo/平衡强化.cs @@ -55,7 +55,7 @@ namespace Milimoe.FunGame.Testing.Skills character.Recovery(pastHP, pastMP, pastMaxHP, pastMaxMP); } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { RemainDuration = Duration; if (!caster.Effects.Contains(this)) diff --git a/Library/Skills/战技/疾风步.cs b/Library/Skills/战技/疾风步.cs index da999af..761eefd 100644 --- a/Library/Skills/战技/疾风步.cs +++ b/Library/Skills/战技/疾风步.cs @@ -69,7 +69,7 @@ namespace Milimoe.FunGame.Testing.Skills return false; } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { if (!caster.Effects.Contains(this)) { diff --git a/Library/Skills/魔法/冰霜攻击.cs b/Library/Skills/魔法/冰霜攻击.cs index 998c69b..545a261 100644 --- a/Library/Skills/魔法/冰霜攻击.cs +++ b/Library/Skills/魔法/冰霜攻击.cs @@ -40,11 +40,11 @@ namespace Milimoe.FunGame.Testing.Skills } } - public override void OnSkillCasted(Character caster, List enemys, List teammates, Dictionary others) + public override void OnSkillCasted(Character caster, List targets, Dictionary others) { - if (enemys.Count > 0) + if (targets.Count > 0) { - Character enemy = enemys[new Random().Next(enemys.Count)]; + Character enemy = targets[0]; DamageToEnemy(caster, enemy, true, MagicType, Damage); } } diff --git a/Library/Solutions/DataSet.cs b/Library/Solutions/DataSet.cs index 5f7beda..05cddf7 100644 --- a/Library/Solutions/DataSet.cs +++ b/Library/Solutions/DataSet.cs @@ -4,9 +4,9 @@ using System.Text.Json.Serialization; namespace DataSetJsonConverter { - class Program + public class DataSetTest { - static void Main(string[] args) + public DataSetTest() { Person p1 = new(1, "YES", DateTime.Now); Person p2 = new(2, "NO", DateTime.Now); @@ -23,7 +23,7 @@ namespace DataSetJsonConverter jsonString = "[" + jsonString.Replace("}{", "},{") + "]"; - var people = JsonSerializer.Deserialize(jsonString, options); + Person[] people = JsonSerializer.Deserialize(jsonString, options) ?? []; foreach (var person in people) { @@ -45,13 +45,13 @@ namespace DataSetJsonConverter { if (reader.TokenType == JsonTokenType.PropertyName) { - string propertyName = reader.GetString(); + string propertyName = reader.GetString() ?? ""; switch (propertyName) { case "TableName": reader.Read(); - string tableName = reader.GetString(); + string tableName = reader.GetString() ?? ""; dataTable = new DataTable(tableName); dataSet.Tables.Add(dataTable); break; @@ -197,7 +197,7 @@ namespace DataSetJsonConverter { if (reader.TokenType == JsonTokenType.PropertyName) { - string propertyName = reader.GetString(); + string propertyName = reader.GetString() ?? ""; switch (propertyName) { @@ -208,7 +208,7 @@ namespace DataSetJsonConverter case "DataType": reader.Read(); - Type dataType = Type.GetType(reader.GetString()); + Type dataType = Type.GetType(reader.GetString() ?? "") ?? typeof(string); column.DataType = dataType; break; } @@ -258,11 +258,11 @@ namespace DataSetJsonConverter break; case "System.Char": - values[index] = reader.GetString()[0]; + values[index] = (reader.GetString() ?? "")[0]; break; case "System.DateTime": - string dateString = reader.GetString(); + string dateString = reader.GetString() ?? ""; if (DateTime.TryParseExact(dateString, _format, null, System.Globalization.DateTimeStyles.None, out DateTime result)) { values[index] = result; @@ -278,7 +278,7 @@ namespace DataSetJsonConverter break; case "System.Guid": - values[index] = Guid.Parse(reader.GetString()); + values[index] = Guid.Parse(reader.GetString() ?? ""); break; case "System.Int16": @@ -302,7 +302,7 @@ namespace DataSetJsonConverter break; case "System.String": - values[index] = reader.GetString(); + values[index] = reader.GetString() ?? ""; break; case "System.UInt16": @@ -336,7 +336,7 @@ namespace DataSetJsonConverter throw new JsonException(); } - string dateString = reader.GetString(); + string dateString = reader.GetString() ?? ""; if (DateTime.TryParseExact(dateString, _format, null, System.Globalization.DateTimeStyles.None, out DateTime result)) {