feat: add Effect model
This commit is contained in:
parent
132fb649cb
commit
749f827264
2 changed files with 55 additions and 0 deletions
41
Models/Effect.cs
Normal file
41
Models/Effect.cs
Normal file
|
@ -0,0 +1,41 @@
|
|||
using System.Collections.Generic;
|
||||
|
||||
namespace ZenithInfo.Models
|
||||
{
|
||||
public class Effect
|
||||
{
|
||||
public required string Name { get; set; }
|
||||
public Enums.ModuleEffectTypes Type { get; set; }
|
||||
public double Duration { get; set; }
|
||||
public double ApplyDelta { get; set; }
|
||||
public Enums.IsBuffed IsBuff { get; set; }
|
||||
public bool ClearApplyOnDispel { get; set; }
|
||||
|
||||
public required ApplyEffect Apply { get; set; }
|
||||
public required TickEffect Tick { get; set; }
|
||||
public required DispelEffect Dispel { get; set; }
|
||||
public required List<string> DisplayEffect { get; set; }
|
||||
|
||||
public class ApplyEffect
|
||||
{
|
||||
public required Dictionary<string, double> Stats { get; set; }
|
||||
private object? Other { get; set; }
|
||||
public required List<string> Flags { get; set; }
|
||||
|
||||
public bool HasOther()
|
||||
{
|
||||
return Other != null;
|
||||
}
|
||||
}
|
||||
|
||||
public class TickEffect
|
||||
{
|
||||
public required Dictionary<string, double> Stats { get; set; }
|
||||
}
|
||||
|
||||
public class DispelEffect
|
||||
{
|
||||
public required Dictionary<string, double> Stats { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
|
@ -67,5 +67,19 @@ namespace ZenithInfo.Models
|
|||
{ TurretTypes.Railgun, DamageTypes.Hull },
|
||||
{ TurretTypes.PulseLaser, DamageTypes.Shield },
|
||||
};
|
||||
|
||||
public enum ModuleEffectTypes
|
||||
{
|
||||
Duration,
|
||||
Persistent,
|
||||
AoE,
|
||||
}
|
||||
|
||||
public enum IsBuffed
|
||||
{
|
||||
True,
|
||||
False,
|
||||
Self,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue