Example #1
0
 public DungeonLootRoll(PlayerMobile m, DungeonLootAction action, int value)
     : this()
 {
     Mobile = m;
     Action = action;
     Value  = value;
 }
        private int Roll(PlayerMobile m, DungeonLootAction action)
        {
            if (!Valid || HasWinner || m == null || m.Deleted)
            {
                return(-1);
            }

            var roll = Rolls.GetValue(m);

            if (roll == null)
            {
                var value = action != DungeonLootAction.Pass ? (1 + Utility.Random(100)) : 0;

                Rolls.AddOrReplace(m, roll = new DungeonLootRoll(m, action, value));
            }

            if (Dungeon != null)
            {
                Dungeon.OnLootRoll(this, roll.Value);
            }

            return(roll.Value);
        }