tModLoader v2024.03
A mod to make and play Terraria mods
SequentialRulesRule Class Reference

Runs the provided rules in order, stopping after a rule succeeds.
More...

Inherits IItemDropRule, and INestedItemDropRule.

Public Member Functions

 SequentialRulesRule (int chanceDenominator, params IItemDropRule[] rules)
 
bool CanDrop (DropAttemptInfo info)
 
void ReportDroprates (List< DropRateInfo > drops, DropRateInfoChainFeed ratesInfo)
 
ItemDropAttemptResult TryDroppingItem (DropAttemptInfo info)
 
ItemDropAttemptResult TryDroppingItem (DropAttemptInfo info, ItemDropRuleResolveAction resolveAction)
 
bool CanDrop (DropAttemptInfo info)
 
void ReportDroprates (List< DropRateInfo > drops, DropRateInfoChainFeed ratesInfo)
 
ItemDropAttemptResult TryDroppingItem (DropAttemptInfo info)
 
ItemDropAttemptResult TryDroppingItem (DropAttemptInfo info, ItemDropRuleResolveAction resolveAction)
 

Public Attributes

int chanceDenominator
 
IItemDropRule[] rules
 

Properties

List< IItemDropRuleChainAttemptChainedRules [get]
 
- Properties inherited from IItemDropRule
List< IItemDropRuleChainAttemptChainedRules [get]
 

Detailed Description

Runs the provided rules in order, stopping after a rule succeeds.

Member Function Documentation

◆ CanDrop()

bool SequentialRulesRule.CanDrop ( DropAttemptInfo  info)

Implements IItemDropRule.

◆ ReportDroprates()

void SequentialRulesRule.ReportDroprates ( List< DropRateInfo drops,
DropRateInfoChainFeed  ratesInfo 
)

Implements IItemDropRule.

◆ TryDroppingItem() [1/2]

ItemDropAttemptResult SequentialRulesRule.TryDroppingItem ( DropAttemptInfo  info)

Implements IItemDropRule.

◆ TryDroppingItem() [2/2]

ItemDropAttemptResult SequentialRulesRule.TryDroppingItem ( DropAttemptInfo  info,
ItemDropRuleResolveAction  resolveAction 
)

Implements INestedItemDropRule.

Property Documentation

◆ ChainedRules

List<IItemDropRuleChainAttempt> SequentialRulesRule.ChainedRules
get

Implements IItemDropRule.