示例#1
0
 public PrepareDamageEvent(CharacterTemplate origin, CharacterTemplate target, BaseActionTemplate action, HitData hit)
 {
     Entries = GenericPools.New <List <DamageEntry> >();
     Origin  = origin;
     Target  = target;
     Action  = action;
     Hit     = hit;
 }
示例#2
0
 public PrepareDamageEvent(ImpactEvent impact)
 {
     Entries = GenericPools.New <List <DamageEntry> >();
     Origin  = impact.Origin;
     Target  = impact.Target;
     Action  = impact.Action;
     Hit     = impact.Hit;
 }
示例#3
0
 public PrepareDamageEvent(ImpactEvent impact, CharacterTemplate origin, CharacterTemplate target)
 {
     Entries = GenericPools.New <List <DamageEntry> >();
     Impact  = impact;
     Origin  = origin;
     Target  = target;
     Action  = impact.Action;
 }
示例#4
0
 public void Clear()
 {
     GenericPools.Store(Entries);
     Entries = null;
 }
示例#5
0
 public DamageSystem()
 {
     World.Get <RulesSystem>().AddHandler <TakeDamageEvent>(this);
     World.Get <RulesSystem>().AddHandler <PrepareDamageEvent>(this);
     GenericPools.Register <List <DamageEntry> >(5, l => l.Clear());
 }