コード例 #1
0
        public void Target(IPoint3D p)
        {
            if (!Caster.CanSee(p))
            {
                Caster.SendLocalizedMessage(500237);                   // Target can not be seen.
            }
            else if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
            {
                SpellHelper.Turn(Caster, p);

                SpellHelper.GetSurfaceTop(ref p);

                Effects.PlaySound(p, Caster.Map, 0x64F);

                double duration = DamagingSkill(Caster) / 5;

                RingOfFire ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X, p.Y - 3, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 1, p.Y - 2, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 2, p.Y - 1, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 2, p.Y, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 2, p.Y + 1, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 1, p.Y + 2, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X, p.Y + 3, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 1, p.Y + 2, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 2, p.Y + 1, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 2, p.Y, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 2, p.Y - 1, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 1, p.Y - 2, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X, p.Y - 4, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 1, p.Y - 3, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 2, p.Y - 2, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 1, p.Y - 3, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 2, p.Y - 2, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 2, p.Y - 2, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X - 1, p.Y + 3, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X, p.Y + 4, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 1, p.Y + 3, p.Z), Caster.Map);
                ring = new RingOfFire(duration); ring.MoveToWorld(new Point3D(p.X + 2, p.Y + 2, p.Z), Caster.Map);

                Server.Misc.Research.ConsumeScroll(Caster, true, spellIndex, false);
            }

            FinishSequence();
        }
コード例 #2
0
        public Spells()
        {
            Items = new List <BaseSpell>();

            goblinWave = new GoblinWave();
            Items.Add(goblinWave);

            wolfPack = new WolfPack();
            Items.Add(wolfPack);

            siege = new Siege();
            Items.Add(siege);

            orcWave = new OrcWave();
            Items.Add(orcWave);

            trollWave = new TrollWave();
            Items.Add(trollWave);

            blackHorsemen = new BlackHorsemen();
            Items.Add(blackHorsemen);

            giant = new Giant();
            Items.Add(giant);

            dragon = new Dragon();
            Items.Add(dragon);

            spark = new Spark();
            Items.Add(spark);

            eletroCharge = new EletroCharge();
            Items.Add(eletroCharge);

            lightning = new Lightning();
            Items.Add(lightning);

            discharge = new Discharge();
            Items.Add(discharge);

            thunderShock = new ThunderShock();
            Items.Add(thunderShock);

            thunderBolt = new ThunderBolt();
            Items.Add(thunderBolt);

            lightningStorm = new LightningStorm();
            Items.Add(lightningStorm);

            thunder = new Thunder();
            Items.Add(thunder);

            mudStrike = new MudStrike();
            Items.Add(mudStrike);

            rockThrow = new RockThrow();
            Items.Add(rockThrow);

            vineWhip = new VineWhip();
            Items.Add(vineWhip);

            razorLeaf = new RazorLeaf();
            Items.Add(razorLeaf);

            seedBombs = new SeedBombs();
            Items.Add(seedBombs);

            rockBlast = new RockBlast();
            Items.Add(rockBlast);

            photosynthesis = new Photosynthesis();
            Items.Add(photosynthesis);

            earthQuake = new Earthquake();
            Items.Add(earthQuake);

            wave = new Wave();
            Items.Add(wave);

            whirlwind = new Whirlwind();
            Items.Add(whirlwind);

            icyspikes = new IcySpikes();
            Items.Add(icyspikes);

            ringoffrost = new RingOfFrost();
            Items.Add(ringoffrost);

            frozenPillar = new FrozenPillar();
            Items.Add(frozenPillar);

            frostWave = new FrostWave();
            Items.Add(frostWave);

            storm = new Storm();
            Items.Add(storm);

            blizzard = new Blizzard();
            Items.Add(blizzard);

            fireball = new Fireball();
            Items.Add(fireball);

            firewave = new Firewave();
            Items.Add(firewave);

            imoloate = new Imoloate();
            Items.Add(imoloate);

            fireblast = new FireBlast();
            Items.Add(fireblast);

            ringoffire = new RingOfFire();
            Items.Add(ringoffire);

            lavastrike = new LavaStrike();
            Items.Add(lavastrike);

            dragonBreath = new DragonBreath();
            Items.Add(dragonBreath);
        }