Generate() публичный Метод

public Generate ( Mobile from, Container cont, bool spawning ) : void
from Mobile
cont Container
spawning bool
Результат void
Пример #1
0
        public virtual void AddLootPouch(LootPack pack)
        {
            if (Summoned)
                return;

            Container backpack = Backpack;

            if (backpack == null)
            {
                backpack = new Backpack();

                backpack.Movable = false;

                AddItem(backpack);
            }
            //find top most container
            while (backpack.FindItemByType(typeof(Backpack)) != null)
                backpack = (Container)backpack.FindItemByType(typeof(Backpack));

            Container LootBag = new Bag();
            backpack.DropItem(LootBag);

            pack.Generate(this, LootBag, m_Spawning, m_KillersLuck);

            if (LootBag.Items.Count <= 0)
                LootBag.Delete();
        }
Пример #2
0
        public virtual void AddLoot( LootPack pack )
        {
            if ( Summoned )
                return;

            Container backpack = Backpack;

            if ( backpack == null )
            {
                backpack = new Backpack();

                backpack.Movable = false;

                AddItem( backpack );
            }

            pack.Generate( this, backpack, m_Spawning, m_KillersLuck );
        }
Пример #3
0
        public virtual void AddLootGold(LootPack pack)
        {
            if (Summoned)
                return;

            Container backpack = Backpack;

            if (backpack == null)
            {
                backpack = new Backpack();

                backpack.Movable = false;

                AddItem(backpack);
            }
            //find top most container
            while (backpack.FindItemByType(typeof(Backpack)) != null)
                backpack = (Container)backpack.FindItemByType(typeof(Backpack));

            pack.Generate(this, backpack, m_Spawning, m_KillersLuck);
        }
Пример #4
0
        public virtual void AddLootBackpack(LootPack pack)
        {
            if (pack == null)
                return;

            if (Summoned)
                return;

            Container backpack = Backpack;
            if (backpack == null)
            {
                backpack = new Backpack();

                backpack.Movable = false;

                AddItem(backpack);
            }

            //find top most container
            while (backpack.FindItemByType(typeof(Backpack)) != null)
                backpack = (Container)backpack.FindItemByType(typeof(Backpack));

            Container LootBag = new Backpack();
            backpack.DropItem(LootBag);

            //base loot
            pack.Generate(this, LootBag, m_Spawning, m_KillersLuck);

            if (LootBag.Items.Count <= 0 && pack != LootPack.Undead)
            {
                LootBag.Delete();
                return;
            }

            //extras
            if (pack == LootPack.Poor)
            {
                switch (Utility.RandomMinMax(1, 2))
                {
                    case 0: AddLootBackpack(LootPack.Poor); break;
                    case 1: AddLootGold(LootPack.PoorPile); break;
                    case 2: AddLootPouch(LootPack.PoorPouch); break;
                }
            }
            else if (pack == LootPack.Meager)
            {
                switch (Utility.RandomMinMax(1,2))
                {
                    case 0: AddLootBackpack(LootPack.Meager); break;
                    case 1: AddLootGold(LootPack.MeagerPile); break;
                    case 2: AddLootPouch(LootPack.MeagerPouch); break;
                }
            }
            else if (pack == LootPack.Average)
            {
                switch (Utility.RandomMinMax(1, 2))
                {
                    case 0: AddLootBackpack(LootPack.Average); break;
                    case 1: AddLootGold(LootPack.AveragePile); break;
                    case 2: AddLootPouch(LootPack.AveragePouch); break;
                }
            }
            else if (pack == LootPack.Rich)
            {
                switch (Utility.RandomMinMax(1, 2))
                {
                    case 0: AddLootBackpack(LootPack.Rich); break;
                    case 1: AddLootGold(LootPack.RichPile); break;
                    case 2: AddLootPouch(LootPack.RichPouch); break;
                }
            }
            else if (pack == LootPack.FilthyRich)
            {
                switch (Utility.RandomMinMax(1,2))
                {
                    case 0: AddLootBackpack(LootPack.FilthyRich); break;
                    case 1: AddLootGold(LootPack.FilthyRichPile); break;
                    case 2: AddLootPouch(LootPack.FilthyRichPouch); break;
                }
            }
            else if (pack == LootPack.UltraRich)
            {
                switch (Utility.RandomMinMax(1, 2))
                {
                    case 0: AddLootBackpack(LootPack.UltraRich); break;
                    case 1: AddLootGold(LootPack.UltraRichPile); break;
                    case 2: AddLootPouch(LootPack.UltraRichPouch); break;
                }
            }
            else if (pack == LootPack.SuperBoss)
            {
                switch (Utility.RandomMinMax(1, 2))
                {
                    case 0: AddLootBackpack(LootPack.SuperBoss); break;
                    case 1: AddLootGold(LootPack.SuperBossPile); break;
                    case 2: AddLootPouch(LootPack.SuperBossPouch); break;
                }
            }
            else if (pack == LootPack.Special)
            {
                switch (Utility.RandomMinMax(1, 2))
                {
                    case 0: AddLootBackpack(LootPack.Special); break;
                    case 1: AddLootGold(LootPack.SpecialPile); break;
                    case 2: AddLootPouch(LootPack.SpecialPouch); break;
                }
            }
            else if (pack == LootPack.Undead)
            {
                LootBag.DropItem(Loot.RandomScroll(0, 64, SpellbookType.Regular));

                if (Utility.Random(3) == 3)
                    LootBag.DropItem(Loot.RandomPotion());

                switch (Utility.Random(2))
                {
                    case 0: AddLootGold(LootPack.RichPile); break;
                    case 1: AddLootPouch(LootPack.RichPouch); break;
                }
            }
        }
 public virtual void AddLoot( LootPack pack )
 {
     pack.Generate( null, this, false, 0 );
 }
        public virtual void AddLoot( LootPack pack, Container cont )
        {
            if ( Summoned )
                return;

            pack.Generate( this, cont, m_Spawning, m_KillersLuck );
        }
Пример #7
0
		public virtual void AddLoot( Mobile from, LootPack pack )
		{
			pack.Generate( null, this, false);
		}