public override void OnDeath(Container c) { Mobile m = this.FindMostRecentDamager(false); PlayerMobile pm = null; if (m is PlayerMobile) { pm = m as PlayerMobile; } else if (m is BaseCreature) { BaseCreature bc = m as BaseCreature; if (bc.Controlled == true) { pm = bc.ControlMaster as PlayerMobile; } } if (pm != null) { AlfredsRat newrat = new AlfredsRat(); Point3D nrpos = this.Location; newrat.Home = this.Home; newrat.RangeHome = this.RangeHome; nrpos.X += Utility.Random(this.RangeHome) - 2 * this.RangeHome; nrpos.Y += Utility.Random(this.RangeHome) - 2 * this.RangeHome; newrat.MoveToWorld(nrpos, Map.Trammel); pm.Say("You can't believe, another rat just appeared"); } base.OnDeath(c); }
public override void MoveToWorld(Point3D newLocation, Map map) { base.MoveToWorld(newLocation, map); /* Create the rabbits */ Point3D pt = newLocation, ratpos = new Point3D(); int i; for (i = 0; i < 5; i++) { ratpos.X = pt.X + Utility.Random(6) - 3; ratpos.Y = pt.Y + Utility.Random(6) - 3; ratpos.Z = pt.Z; AlfredsRat ar = new AlfredsRat(); ar.Home = pt; ar.RangeHome = 4; ar.MoveToWorld(ratpos, Map.Trammel); } Brian b = new Brian(); pt.X += 6; b.MoveToWorld(pt, Map.Trammel); Charly c = new Charly(); pt.X += 6; c.MoveToWorld(pt, Map.Trammel); David d = new David(); pt.X += 6; d.MoveToWorld(pt, Map.Trammel); }