public override void OnDeath(Container c) { BelfryEncounter encounter = ShadowguardController.GetEncounter(c.Location, c.Map) as BelfryEncounter; if (encounter != null) { c.DropItem(new MagicDrakeWing()); } base.OnDeath(c); }
public override void OnDoubleClick(Mobile from) { BelfryEncounter encounter = ShadowguardController.GetEncounter(from.Location, from.Map) as BelfryEncounter; if (encounter != null && IsChildOf(from.Backpack)) { Point3D p = encounter.SpawnPoints[1]; encounter.ConvertOffset(ref p); from.MoveToWorld(p, Map.TerMur); BaseCreature.TeleportPets(from, p, from.Map); } }
public override void OnThink() { base.OnThink(); BelfryEncounter encounter = ShadowguardController.GetEncounter(this.Location, this.Map) as BelfryEncounter; if (encounter != null && this.Z == -20) { Point3D p = encounter.SpawnPoints[0]; encounter.ConvertOffset(ref p); this.MoveToWorld(p, this.Map); } }
public override void OnComponentUsed(AddonComponent c, Mobile from) { if (from.InRange(c.Location, 2) && c.ItemID == 19548) { BelfryEncounter encounter = ShadowguardController.GetEncounter(c.Location, c.Map) as BelfryEncounter; if (encounter != null && encounter.Drakes != null && encounter.Drakes.Count == 0) { int toSpawn = 2 + (encounter.PartySize() * 3); for (int i = 0; i < toSpawn; i++) { encounter.SpawnDrake(this.Location, from); Effects.PlaySound(this.Location, this.Map, 0x66C); } } } }