Esempio n. 1
0
        public static MineDrop Create(DbDropRule dbmine)
        {
            MineDrop Drop = new MineDrop();

            Drop.ItemID = dbmine.RuleValue;
#pragma warning disable CS0472 // The result of the expression is always the same since a value of this type is never equal to 'null'
            Drop.Chance = (short)((dbmine.RuleChance != null) ? dbmine.RuleChance:10);
#pragma warning restore CS0472 // The result of the expression is always the same since a value of this type is never equal to 'null'
            Drop.Type   = (short)dbmine.RuleType;
            Drop.Amount = (short)dbmine.RuleAmount;
            return(Drop);
        }
Esempio n. 2
0
        public MiningDrops(ushort MapID)
        {
            MapId = MapID;
            Ores  = new List <MineDrop>();
            Gems  = new List <MineDrop>();
            Misc  = new List <MineDrop>();

            var MineInfo = ServerDatabase.Context.DropRules.GetRulesByMonsterType(MapId);

            if (MineInfo.Count > 0)
            {
                foreach (var Drop in MineInfo)
                {
                    MineDrop ItemDrop = MineDrop.Create(Drop);
                    switch (ItemDrop.Type)
                    {
                    //Ores
                    case 1:
                        if (!Ores.Contains(ItemDrop))
                        {
                            Ores.Add(ItemDrop);
                        }
                        break;

                    //Gems
                    case 2:
                        if (!Gems.Contains(ItemDrop))
                        {
                            Gems.Add(ItemDrop);
                        }
                        break;

                    //Misc?
                    case 3:
                        if (!Misc.Contains(ItemDrop))
                        {
                            Misc.Add(ItemDrop);
                        }
                        break;
                    }
                }
            }
        }