protected override TimeSpan Play( int step ) { switch ( step ) { case 0: { Effects.PlaySound( Location, Map, 0x106 ); Effects.SendLocationParticles( EffectItem.Create( Location, Map, EffectItem.DefaultDuration ), 0x3735, 1, 182, 0xBE3 ); return TimeSpan.FromSeconds( 4.0 ); } case 1: { EffectItem hole = EffectItem.Create( Location, Map, TimeSpan.FromSeconds( 10.0 ) ); hole.ItemID = 0x913; Effects.PlaySound( Location, Map, 0x222 ); return TimeSpan.FromSeconds( 4.0 ); } case 2: { Effects.PlaySound( Location, Map, 0x21F ); return TimeSpan.FromSeconds( 4.0 ); } default: { EffectItem dummy = EffectItem.Create( Location, Map, TimeSpan.FromSeconds( 20.0 ) ); dummy.PublicOverheadMessage( MessageType.Regular, 0x3B2, true, "* A magical bunny leaps out of its hole, disturbed by the thorn's effect! *" ); BaseCreature spawn = new VorpalBunny(); if ( !SpawnCreature( spawn ) ) spawn.Delete(); return TimeSpan.Zero; } } }
protected override void OnTick() { i++; switch (effect) { case 1: { Item randomreg = null; switch (i) { case 4: { from.PlaySound(0x222); break; } case 8: { from.PlaySound(0x21F); break; } case 13: { from.PrivateOverheadMessage( MessageType.Regular, 0x3B2, true, "*The ground erupts with chaotic growth!*", from.NetState); from.PlaySound(0x12D); randomreg = RandomReg(); randomreg.Amount = Utility.RandomMinMax(15,22); randomreg.MoveToWorld( p, from.Map); randomreg = RandomReg(); randomreg.MoveToWorld( new Point3D( p.X-1, p.Y-1, p.Z) , from.Map ); randomreg.Amount = Utility.RandomMinMax(14,20); break; } case 15: { from.PlaySound(0x12D); randomreg = RandomReg(); randomreg.MoveToWorld( new Point3D( p.X, p.Y+1, p.Z) , from.Map ); randomreg.Amount = Utility.RandomMinMax(13,18); randomreg = RandomReg(); randomreg.MoveToWorld( new Point3D( p.X+1, p.Y-1, p.Z) , from.Map ); randomreg.Amount = Utility.RandomMinMax(16,22); break; } case 17: { from.PlaySound(0x12D); randomreg = RandomReg(); randomreg.MoveToWorld( new Point3D( p.X, p.Y-1, p.Z) , from.Map ); randomreg.Amount = Utility.RandomMinMax(16,20); randomreg = RandomReg(); randomreg.MoveToWorld( new Point3D( p.X+1, p.Y-1, p.Z) , from.Map ); randomreg.Amount = Utility.RandomMinMax(14,18); break; } case 20: { from.PlaySound(0x12D); randomreg = RandomReg(); randomreg.MoveToWorld( new Point3D( p.X+1, p.Y+1, p.Z) , from.Map ); randomreg.Amount = Utility.RandomMinMax(16,20); randomreg = RandomReg(); randomreg.MoveToWorld( new Point3D( p.X-1, p.Y, p.Z) , from.Map ); randomreg.Amount = Utility.RandomMinMax(16,20); Stop(); break; } } break; } case 2: { switch (i) { case 4: { from.PlaySound(0x222); break; } case 8: { from.PlaySound(0x21F); break; } case 9: { from.PlaySound(0x2B0); from.PrivateOverheadMessage( MessageType.Regular, 0x3B2, true, "*Strange green tendrils rise from the ground, whipping wildly!*", from.NetState); BaseCreature WV = new WhippingVine(); WV.Map = from.Map; WV.Location = p; WV.Combatant = from; break; } } break; } case 3: { switch (i) { case 4: { from.PlaySound(0x222); break; } case 8: { from.PlaySound(0x21F); break; } case 13: { from.PrivateOverheadMessage( MessageType.Regular, 0x3B2, true, "*The sand collapses, revealing a dark hole.*", from.NetState); Item SH = new SolenHiveEntrance(); SH.MoveToWorld( p, from.Map ); break; } } break; } case 4://ToDO Ice Worm { switch (i) { case 4: { from.PlaySound(0x222); break; } case 8: { from.PlaySound(0x21F); break; } case 12: { from.PrivateOverheadMessage( MessageType.Regular, 0x3B2, true, "*Slithering ice serpaents rise to the surface to investigate the disturbance!*", from.NetState); BaseCreature IW = new GiantIceWorm(); IW.Map = from.Map; IW.Location = p; IW.Combatant = from; for (int j=0; j < 3; j++) { BaseCreature IS = new IceSnake(); IS.Map = from.Map; IS.Location = p; IS.Combatant = from; } break; } } break; } case 5: { switch (i) { case 4: { Item hole = new Item(0X913); hole.MoveToWorld( p, from.Map ); hole.Movable = false; temp = hole; from.PlaySound(0x222); break; } case 8: { from.PlaySound(0x21F); break; } case 12: { from.PrivateOverheadMessage( MessageType.Regular, 0x3B2, true, "*A magical bunny leaps out of its hole, disturbed by the thorn's effect!*", from.NetState); BaseCreature VB = new VorpalBunny(); VB.Map = from.Map; VB.Location = p; VB.Combatant = from; ((Item)temp).Delete(); break; } } break; } } }
protected override void OnTick() { if ( m_Item.Deleted ) return; Mobile spawn; switch ( Utility.Random( 8 ) ) { default: case 0: spawn = new ElderGazer(); break; case 1: spawn = new Imp(); break; case 2: spawn = new OrcBrute(); break; case 3: spawn = new Phoenix(); break; case 4: spawn = new Quagmire(); break; case 5: spawn = new WhippingVine(); break; case 6: spawn = new Drake(); break; case 7: spawn = new VorpalBunny(); break; } spawn.MoveToWorld( m_Item.Location, m_Item.Map ); m_Item.Delete(); }