Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
CommonDropWithRerolls.cs
Go to the documentation of this file.
2
4
6{
7 public int timesToRoll;
8
14
16 {
17 bool flag = false;
18 for (int i = 0; i < timesToRoll; i++)
19 {
20 flag = flag || info.player.RollLuck(chanceDenominator) < chanceNumerator;
21 }
23 if (flag)
24 {
26 result = default(ItemDropAttemptResult);
27 result.State = ItemDropAttemptResultState.Success;
28 return result;
29 }
30 result = default(ItemDropAttemptResult);
31 result.State = ItemDropAttemptResultState.FailedRandomRoll;
32 return result;
33 }
34
36 {
37 float num = (float)chanceNumerator / (float)chanceDenominator;
38 float num2 = 1f - num;
39 float num3 = 1f;
40 for (int i = 0; i < timesToRoll; i++)
41 {
42 num3 *= num2;
43 }
44 float num4 = 1f - num3;
45 float dropRate = num4 * ratesInfo.parentDroprateChance;
48 }
49}
void Add(TKey key, TValue value)
static void ReportDroprates(List< IItemDropRuleChainAttempt > ChainedRules, float personalDropRate, List< DropRateInfo > drops, DropRateInfoChainFeed ratesInfo)
Definition Chains.cs:85
static void DropItemFromNPC(NPC npc, int itemId, int stack, bool scattered=false)
Definition CommonCode.cs:9
override void ReportDroprates(List< DropRateInfo > drops, DropRateInfoChainFeed ratesInfo)
override ItemDropAttemptResult TryDroppingItem(DropAttemptInfo info)
CommonDropWithRerolls(int itemId, int chanceDenominator, int amountDroppedMinimum, int amountDroppedMaximum, int rerolls)