public virtual void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float num      = (float)_dropsXoutOfY / (float)_dropsOutOfY;
            float dropRate = num * ratesInfo.parentDroprateChance;

            drops.Add(new DropRateInfo(_itemId, _amtDroppedMinimum, _amtDroppedMaximum, dropRate, ratesInfo.conditions));
            Chains.ReportDroprates(ChainedRules, num, drops, ratesInfo);
        }
Exemple #2
0
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float personalDropRate = _parameters.GetPersonalDropRate();
            float dropRate         = personalDropRate * ratesInfo.parentDroprateChance;

            drops.Add(new DropRateInfo(_itemId, _parameters.MinimumItemDropsCount * (_parameters.MinimumStackPerChunkBase + _parameters.BonusMinDropsPerChunkPerPlayer), _parameters.MaximumItemDropsCount * (_parameters.MaximumStackPerChunkBase + _parameters.BonusMaxDropsPerChunkPerPlayer), dropRate, ratesInfo.conditions));
            Chains.ReportDroprates(ChainedRules, personalDropRate, drops, ratesInfo);
        }
Exemple #3
0
        public virtual void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float personalDropRate = (float)this._dropsXoutOfY / (float)this._dropsOutOfY;
            float dropRate         = personalDropRate * ratesInfo.parentDroprateChance;

            drops.Add(new DropRateInfo(this._itemId, this._amtDroppedMinimum, this._amtDroppedMaximum, dropRate, ratesInfo.conditions));
            Chains.ReportDroprates(this.ChainedRules, personalDropRate, drops, ratesInfo);
        }
Exemple #4
0
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            ratesInfo.AddCondition(_dummyCondition);
            float num      = 0.0004f;
            float dropRate = num * ratesInfo.parentDroprateChance;

            drops.Add(new DropRateInfo(556, 1, 1, dropRate, ratesInfo.conditions));
            drops.Add(new DropRateInfo(544, 1, 1, dropRate, ratesInfo.conditions));
            drops.Add(new DropRateInfo(557, 1, 1, dropRate, ratesInfo.conditions));
            Chains.ReportDroprates(ChainedRules, num, drops, ratesInfo);
        }
Exemple #5
0
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float personalDropRate = (float)this._xoutOfY / (float)this._outOfY;
            float dropRate         = 1f / (float)this._dropIds.Length * (personalDropRate * ratesInfo.parentDroprateChance);

            for (int index = 0; index < this._dropIds.Length; ++index)
            {
                drops.Add(new DropRateInfo(this._dropIds[index], 1, 1, dropRate, ratesInfo.conditions));
            }
            Chains.ReportDroprates(this.ChainedRules, personalDropRate, drops, ratesInfo);
        }
        public override void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            DropRateInfoChainFeed ratesInfo2 = ratesInfo.With(1f);

            ratesInfo2.AddCondition(_condition);
            float num      = (float)_dropsXoutOfY / (float)_dropsOutOfY;
            float dropRate = num * ratesInfo2.parentDroprateChance;

            drops.Add(new DropRateInfo(_itemId, _amtDroppedMinimum, _amtDroppedMaximum, dropRate, ratesInfo2.conditions));
            Chains.ReportDroprates(base.ChainedRules, num, drops, ratesInfo2);
        }
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            ratesInfo.AddCondition((IItemDropRuleCondition)this._dummyCondition);
            float personalDropRate = 0.0004f;
            float dropRate         = personalDropRate * ratesInfo.parentDroprateChance;

            drops.Add(new DropRateInfo(556, 1, 1, dropRate, ratesInfo.conditions));
            drops.Add(new DropRateInfo(544, 1, 1, dropRate, ratesInfo.conditions));
            drops.Add(new DropRateInfo(557, 1, 1, dropRate, ratesInfo.conditions));
            Chains.ReportDroprates(this.ChainedRules, personalDropRate, drops, ratesInfo);
        }
Exemple #8
0
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float personalDropRate = 1f / (float)this._outOfY;
            float multiplier       = 1f / (float)this._options.Length * (personalDropRate * ratesInfo.parentDroprateChance);

            for (int index = 0; index < this._options.Length; ++index)
            {
                this._options[index].ReportDroprates(drops, ratesInfo.With(multiplier));
            }
            Chains.ReportDroprates(this.ChainedRules, personalDropRate, drops, ratesInfo);
        }
Exemple #9
0
        public override void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            DropRateInfoChainFeed ratesInfo1 = ratesInfo.With(1f);

            ratesInfo1.AddCondition(this._condition);
            float personalDropRate = (float)this._dropsXoutOfY / (float)this._dropsOutOfY;
            float dropRate         = personalDropRate * ratesInfo1.parentDroprateChance;

            drops.Add(new DropRateInfo(this._itemId, this._amtDroppedMinimum, this._amtDroppedMaximum, dropRate, ratesInfo1.conditions));
            Chains.ReportDroprates(this.ChainedRules, personalDropRate, drops, ratesInfo1);
        }
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float num        = 1f / (float)_outOfY;
            float num2       = num * ratesInfo.parentDroprateChance;
            float multiplier = 1f / (float)_options.Length * num2;

            for (int i = 0; i < _options.Length; i++)
            {
                _options[i].ReportDroprates(drops, ratesInfo.With(multiplier));
            }
            Chains.ReportDroprates(ChainedRules, num, drops, ratesInfo);
        }
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float num      = (float)_xoutOfY / (float)_outOfY;
            float num2     = num * ratesInfo.parentDroprateChance;
            float dropRate = 1f / (float)_dropIds.Length * num2;

            for (int i = 0; i < _dropIds.Length; i++)
            {
                drops.Add(new DropRateInfo(_dropIds[i], 1, 1, dropRate, ratesInfo.conditions));
            }
            Chains.ReportDroprates(ChainedRules, num, drops, ratesInfo);
        }
Exemple #12
0
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            DropRateInfoChainFeed ratesInfo1 = ratesInfo.With(1f);

            ratesInfo1.AddCondition((IItemDropRuleCondition) new Conditions.IsExpert());
            this._ruleForExpertMode.ReportDroprates(drops, ratesInfo1);
            DropRateInfoChainFeed ratesInfo2 = ratesInfo.With(1f);

            ratesInfo2.AddCondition((IItemDropRuleCondition) new Conditions.NotExpert());
            this._ruleForNormalMode.ReportDroprates(drops, ratesInfo2);
            Chains.ReportDroprates(this.ChainedRules, 1f, drops, ratesInfo);
        }
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            DropRateInfoChainFeed ratesInfo1 = ratesInfo.With(1f);

            ratesInfo1.AddCondition((IItemDropRuleCondition) new Conditions.IsMasterMode());
            this._ruleForMasterMode.ReportDroprates(drops, ratesInfo1);
            DropRateInfoChainFeed ratesInfo2 = ratesInfo.With(1f);

            ratesInfo2.AddCondition((IItemDropRuleCondition) new Conditions.NotMasterMode());
            this._ruleForDefault.ReportDroprates(drops, ratesInfo2);
            Chains.ReportDroprates(this.ChainedRules, 1f, drops, ratesInfo);
        }
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            DropRateInfoChainFeed ratesInfo2 = ratesInfo.With(1f);

            ratesInfo2.AddCondition(new Conditions.IsMasterMode());
            _ruleForMasterMode.ReportDroprates(drops, ratesInfo2);
            DropRateInfoChainFeed ratesInfo3 = ratesInfo.With(1f);

            ratesInfo3.AddCondition(new Conditions.NotMasterMode());
            _ruleForDefault.ReportDroprates(drops, ratesInfo3);
            Chains.ReportDroprates(ChainedRules, 1f, drops, ratesInfo);
        }
        public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            DropRateInfoChainFeed ratesInfo2 = ratesInfo.With(1f);

            ratesInfo2.AddCondition(new Conditions.IsExpert());
            _ruleForExpertMode.ReportDroprates(drops, ratesInfo2);
            DropRateInfoChainFeed ratesInfo3 = ratesInfo.With(1f);

            ratesInfo3.AddCondition(new Conditions.NotExpert());
            _ruleForNormalMode.ReportDroprates(drops, ratesInfo3);
            Chains.ReportDroprates(ChainedRules, 1f, drops, ratesInfo);
        }
Exemple #16
0
        public override void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float num1 = 1f - (float)this._dropsXoutOfY / (float)this._dropsOutOfY;
            float num2 = 1f;

            for (int index = 0; index < this._timesToRoll; ++index)
            {
                num2 *= num1;
            }
            float personalDropRate = 1f - num2;
            float dropRate         = personalDropRate * ratesInfo.parentDroprateChance;

            drops.Add(new DropRateInfo(this._itemId, this._amtDroppedMinimum, this._amtDroppedMaximum, dropRate, ratesInfo.conditions));
            Chains.ReportDroprates(this.ChainedRules, personalDropRate, drops, ratesInfo);
        }
        public override void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
        {
            float num  = (float)_dropsXoutOfY / (float)_dropsOutOfY;
            float num2 = 1f - num;
            float num3 = 1f;

            for (int i = 0; i < _timesToRoll; i++)
            {
                num3 *= num2;
            }
            float num4     = 1f - num3;
            float dropRate = num4 * ratesInfo.parentDroprateChance;

            drops.Add(new DropRateInfo(_itemId, _amtDroppedMinimum, _amtDroppedMaximum, dropRate, ratesInfo.conditions));
            Chains.ReportDroprates(base.ChainedRules, num4, drops, ratesInfo);
        }
Exemple #18
0
 public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
 {
     Chains.ReportDroprates(this.ChainedRules, 1f, drops, ratesInfo);
 }
Exemple #19
0
 public void ReportDroprates(List <DropRateInfo> drops, DropRateInfoChainFeed ratesInfo)
 {
     ratesInfo.AddCondition(this._condition);
     Chains.ReportDroprates(this.ChainedRules, 1f, drops, ratesInfo);
 }