新的继承方法

This commit is contained in:
milimoe 2024-10-31 23:32:12 +08:00
parent 2a75147296
commit 6f64861465
Signed by: milimoe
GPG Key ID: 05D280912DA6C69E
16 changed files with 31 additions and 30 deletions

View File

@ -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++)

View File

@ -50,7 +50,7 @@ namespace Milimoe.FunGame.Testing.Skills
}
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -59,7 +59,7 @@ namespace Milimoe.FunGame.Testing.Skills
= caster.EP;
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -52,7 +52,7 @@ namespace Milimoe.FunGame.Testing.Skills
character.PhysicalPenetration -= 穿;
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -51,7 +51,7 @@ namespace Milimoe.FunGame.Testing.Skills
}
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
= ;
if (!caster.Effects.Contains(this))

View File

@ -51,7 +51,7 @@ namespace Milimoe.FunGame.Testing.Skills
}
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
IEnumerable<Effect> effects = caster.Effects.Where(e => e is );
if (effects.Any())

View File

@ -54,7 +54,7 @@ namespace Milimoe.FunGame.Testing.Skills
}
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -66,7 +66,7 @@ namespace Milimoe.FunGame.Testing.Skills
baseHardnessTime *= 0.3;
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -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<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
foreach (Character c in enemys)
foreach (Character c in targets)
{
WriteLine($"[ {caster} ] 正在毁灭 [ {c} ] 的能量!!");
double ep = c.EP;

View File

@ -37,7 +37,7 @@ namespace Milimoe.FunGame.Testing.Skills
}
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -76,7 +76,7 @@ namespace Milimoe.FunGame.Testing.Skills
baseHardnessTime *= 0.8;
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -50,7 +50,7 @@ namespace Milimoe.FunGame.Testing.Skills
return false;
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -55,7 +55,7 @@ namespace Milimoe.FunGame.Testing.Skills
character.Recovery(pastHP, pastMP, pastMaxHP, pastMaxMP);
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
RemainDuration = Duration;
if (!caster.Effects.Contains(this))

View File

@ -69,7 +69,7 @@ namespace Milimoe.FunGame.Testing.Skills
return false;
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> others)
{
if (!caster.Effects.Contains(this))
{

View File

@ -40,11 +40,11 @@ namespace Milimoe.FunGame.Testing.Skills
}
}
public override void OnSkillCasted(Character caster, List<Character> enemys, List<Character> teammates, Dictionary<string, object> others)
public override void OnSkillCasted(Character caster, List<Character> targets, Dictionary<string, object> 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);
}
}

View File

@ -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<Person[]>(jsonString, options);
Person[] people = JsonSerializer.Deserialize<Person[]>(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))
{