コード例 #1
0
        public void MatureTroll()
        {
            Creature c = Obj as Creature;

            if (c != null && !c.IsDead)
            {
                var prms = new List <object>()
                {
                    2000882, c.WorldPosition.X, c.WorldPosition.Y, c.WorldPosition.Z, c.Heading
                };                                                                                                             // Adult Troll
                c.EvtInterface.AddEvent(SpawnAdds, 1000, 1, prms);
                c.PlayEffect(2185);
                c.EvtInterface.AddEvent(c.Destroy, 1500, 1);
            }
        }
コード例 #2
0
        public void SetVisible(string name = "")
        {
            Creature c = Obj as Creature;

            c.Model1 = c.Spawn.Proto.Model1; // Invisi-dude

            if (name != "")
            {
                c.Name = name;
            }

            c.PlayEffect(2185);

            foreach (Player player in c.PlayersInRange.ToList())
            {
                c.SendMeTo(player);
            }
        }
コード例 #3
0
        public bool CheckHP(Object Obj, object instigator)
        {
            Creature c = this.Obj as Creature; // We are casting the script initiator as a Creature

            if (Stage < 0 && !c.IsDead)
            {
                Stage = 0; // Setting control value to 0
            }

            if (c.Health < c.TotalHealth * 0.3 && Stage < 4 && !c.IsDead)  // At 20% HP he fails to summon anything
            {
                ApplyIronSkin();

                DismountNPC();

                SquigForm(1);

                c.Say("I almost 'ad ya!", SystemData.ChatLogFilters.CHATLOGFILTERS_MONSTER_SAY);

                c.PlayEffect(2185); // Mount puff effect

                Stage = 4;
            }
            else if (c.Health < c.TotalHealth * 0.4 && Stage < 3 && !c.IsDead)
            {
                var prms = new List <object>()
                {
                    2000866, 929787, 930312, 27020, Obj.Heading
                };                                                                             // Spikestabbin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000866, 930761, 931907, 27026, Obj.Heading
                };                                                                         // Spikestabbin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000866, 929366, 932515, 27062, Obj.Heading
                };                                                                         // Spikestabbin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000866, 928632, 931686, 26987, Obj.Heading
                };                                                                         // Spikestabbin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000866, 928715, 930710, 27000, Obj.Heading
                };                                                                         // Spikestabbin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                ApplyIronSkin();

                MountNPC(c, 136);
                c.EvtInterface.AddEvent(DismountNPC, 30 * 10000, 1);

                c.Say("Spikestabba' Squigs, get out 'ere!", SystemData.ChatLogFilters.CHATLOGFILTERS_MONSTER_SAY);

                c.PlayEffect(1359); // Skull Effect
                c.PlayEffect(2185); // Mount puff effect

                Stage = 3;
            }
            else if (c.Health < c.TotalHealth * 0.6 && Stage < 2 && !c.IsDead)
            {
                var prms = new List <object>()
                {
                    2000865, 929787, 930312, 27020, Obj.Heading
                };                                                                             // Stinkspewin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000865, 930761, 931907, 27026, Obj.Heading
                };                                                                         // Stinkspewin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000865, 929366, 932515, 27062, Obj.Heading
                };                                                                         // Stinkspewin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000865, 928632, 931686, 26987, Obj.Heading
                };                                                                         // Stinkspewin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000865, 928715, 930710, 27000, Obj.Heading
                };                                                                         // Stinkspewin'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                ApplyIronSkin();

                MountNPC(c, 136);
                c.EvtInterface.AddEvent(DismountNPC, 30 * 10000, 1);

                c.Say("Stinkspewin' Squigs, get out 'ere!", SystemData.ChatLogFilters.CHATLOGFILTERS_MONSTER_SAY);

                c.PlayEffect(1359); // Skull Effect
                c.PlayEffect(2185); // Mount puff effect

                Stage = 2;
            }
            else if (c.Health < c.TotalHealth * 0.90 && Stage < 1 && !c.IsDead)
            {
                var prms = new List <object>()
                {
                    2000864, 929787, 930312, 27020, Obj.Heading
                };                                                                             // Skewering'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000864, 930761, 931907, 27026, Obj.Heading
                };                                                                         // Skewering'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000864, 929366, 932515, 27062, Obj.Heading
                };                                                                         // Skewering'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000864, 928632, 931686, 26987, Obj.Heading
                };                                                                         // Skewering'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                prms = new List <object>()
                {
                    2000864, 928715, 930710, 27000, Obj.Heading
                };                                                                         // Skewering'Squigs
                c.EvtInterface.AddEvent(SpawnAdds, 100, 1, prms);

                ApplyIronSkin();
                MountNPC(c, 136); // Squig Mount
                c.EvtInterface.AddEvent(DismountNPC, 30 * 10000, 1);

                c.Say("Skewerin' Squigs, get out 'ere!", SystemData.ChatLogFilters.CHATLOGFILTERS_MONSTER_SAY);

                c.PlayEffect(1359); // Skull Effect
                c.PlayEffect(2185); // Mount puff effect

                Stage = 1;
            }

            return(false);
        }