protected virtual void AddHelper(BaseCreature bc, bool initial) { if (initial) { if (InitialSpawn == null) { InitialSpawn = new List <BaseCreature>(); } if (!InitialSpawn.Contains(bc)) { InitialSpawn.Add(bc); } } else { if (SummonedHelpers == null) { SummonedHelpers = new List <BaseCreature>(); } if (!SummonedHelpers.Contains(bc)) { SummonedHelpers.Add(bc); } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); IsLastBoss = reader.ReadBool(); int count = reader.ReadInt(); if (count > 0) { for (int i = 0; i < count; i++) { BaseCreature summon = reader.ReadMobile() as BaseCreature; if (summon != null) { if (SummonedHelpers == null) { SummonedHelpers = new List <BaseCreature>(); } SummonedHelpers.Add(summon); } } } _NextSummon = DateTime.UtcNow; }
public int TotalSummons() { if (SummonedHelpers == null) { return(0); } return(SummonedHelpers.Where(bc => bc != null && bc.Alive).Count()); }
public int TotalSummons() { if (SummonedHelpers == null || SummonedHelpers.Count == 0) { return(0); } return(SummonedHelpers.Count(bc => bc != null && bc.Alive)); }
protected virtual void AddHelper(BaseCreature bc) { if (SummonedHelpers == null) { SummonedHelpers = new List <BaseCreature>(); } if (!SummonedHelpers.Contains(bc)) { SummonedHelpers.Add(bc); } }
public override void Serialize(GenericWriter writer) { base.Serialize(writer); writer.Write(0); writer.Write(IsLastBoss); writer.Write(SummonedHelpers == null ? 0 : SummonedHelpers.Count); if (SummonedHelpers != null) { SummonedHelpers.ForEach(m => writer.Write(m)); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); SpawnLocation = reader.ReadPoint3D(); int count = reader.ReadInt(); if (count > 0) { for (int i = 0; i < count; i++) { BaseCreature summon = reader.ReadMobile() as BaseCreature; if (summon != null) { if (SummonedHelpers == null) { SummonedHelpers = new List <BaseCreature>(); } SummonedHelpers.Add(summon); } } } count = reader.ReadInt(); if (count > 0) { for (int i = 0; i < count; i++) { BaseCreature summon = reader.ReadMobile() as BaseCreature; if (summon != null) { if (InitialSpawn == null) { InitialSpawn = new List <BaseCreature>(); } InitialSpawn.Add(summon); } } } _NextSpecial = DateTime.UtcNow; }
public override void Serialize(GenericWriter writer) { base.Serialize(writer); writer.Write(0); writer.Write(SpawnLocation); writer.Write(SummonedHelpers == null ? 0 : SummonedHelpers.Count); if (SummonedHelpers != null) { SummonedHelpers.ForEach(m => writer.Write(m)); } writer.Write(InitialSpawn == null ? 0 : InitialSpawn.Count); if (InitialSpawn != null) { InitialSpawn.ForEach(m => writer.Write(m)); } }