コード例 #1
0
                private protected override void DeepCopyTo(Event evnt)
                {
                    var treasure = (Treasure)evnt;

                    treasure.ItemLots = (int[])ItemLots.Clone();
                }
コード例 #2
0
        private void InitRowLists()
        {
            enemyDropTableRows    = new List <PARAM.Row>();
            treasureItemLotsRows  = new List <PARAM.Row>();
            shopItemRows          = new List <PARAM.Row>();
            keyItemLotRows        = new List <PARAM.Row>();
            weaponDatabase        = new List <PARAM.Row>();
            accesoryDatabase      = new List <PARAM.Row>();
            armorDatabase         = new List <PARAM.Row>();
            bossItemsRows         = new List <PARAM.Row>();
            startingEquipmentRows = new List <PARAM.Row>();
            soulsDatabase         = new List <PARAM.Row>();

            Enemies = new List <Enemy>();

            foreach (var item in Parms["EquipParamWeapon"].Rows)
            {
                weaponDatabase.Add(item);
            }

            foreach (var item in Parms["EquipParamProtector"].Rows)
            {
                armorDatabase.Add(item);
            }

            foreach (var item in Parms["EquipParamAccessory"].Rows)
            {
                accesoryDatabase.Add(item);
            }

            foreach (var item in Parms["ShopLineupParam"].Rows)
            {
                //Exclude spell vendors
                if (Convert.ToInt64(item["shopType"].Value) != 2 && Convert.ToInt64(item["shopType"].Value) != 3)
                {
                    shopItemRows.Add(item);

                    if (IDBanks.boldwinShopItemIds.Contains(item.ID))
                    {
                        GetShopKeeper("Boldwin").Items.Add(new ShopLot(item, GetShopKeeper("Boldwin")));
                    }
                    if (IDBanks.dreglingShopItemIds.Contains(item.ID))
                    {
                        GetShopKeeper("Dregling").Items.Add(new ShopLot(item, GetShopKeeper("Dregling")));
                    }
                    if (IDBanks.filthyManShopItemIds.Contains(item.ID))
                    {
                        GetShopKeeper("Filthy Man").Items.Add(new ShopLot(item, GetShopKeeper("Filthy Man")));
                    }
                    if (IDBanks.mistressShopItemIds.Contains(item.ID))
                    {
                        GetShopKeeper("Mistress").Items.Add(new ShopLot(item, GetShopKeeper("Mistress")));
                    }
                    if (IDBanks.BligeShopItemIds.Contains(item.ID))
                    {
                        GetShopKeeper("Blige").Items.Add(new ShopLot(item, GetShopKeeper("Blige")));
                    }
                    if (IDBanks.filthyWomanShopItemIds.Contains(item.ID))
                    {
                        GetShopKeeper("Filthy Woman").Items.Add(new ShopLot(item, GetShopKeeper("Filthy Woman")));
                    }
                    if (IDBanks.patchesShopItemIds.Contains(item.ID))
                    {
                        GetShopKeeper("Patches").Items.Add(new ShopLot(item, GetShopKeeper("Patches")));
                    }
                }
            }

            foreach (var item in Parms["ItemLotParam"].Rows)
            {
                ItemLots.Add(new ItemLot(item));

                //Nexus treasurelots
                if (IDBanks.treasureItemLotsNexus.Contains(item.ID))
                {
                    GetLevel(WorldID.NEXUS, 0).ItemLots.Add(new ItemLot(item));
                }

                //Boletaria treasureLots
                if (IDBanks.treasureItemLotsBoletarianPalace.Contains(item.ID))
                {
                    GetLevel(WorldID.BOLETARIA, 0).ItemLots.Add(new ItemLot(item));
                }

                if (IDBanks.treasureItemLots.Contains(item.ID))
                {
                    treasureItemLotsRows.Add(item);
                }

                if (IDBanks.enemyDropTableLotIds.Contains(item.ID))
                {
                    enemyDropTableRows.Add(item);
                }

                if (IDBanks.keyItems.Contains(item.ID))
                {
                    keyItemLotRows.Add(item);
                }

                if (IDBanks.bossItems.Contains(item.ID))
                {
                    bossItemsRows.Add(item);
                    soulsDatabase.Add(item);
                    BossSouls.Add(new ItemLot(item));
                }

                if (IDBanks.soulsIds.Contains(item.ID))
                {
                    soulsDatabase.Add(item);
                }
            }
        }