Spends a cost from a provider you pass in from code. Use this when your code creates the rule. To find the provider in the scene tree instead, use SpendMaterialsRuleById. The provider is any object with these methods:
get_count_by_id(id: StringName) -> int
try_remove_by_id(id: StringName, amount: int) -> int
try_add_by_id(id: StringName, amount: int) -> int var provider := MyGameProvider.new() var rule := SpendByIdRule.new({&"Gold": 100}, provider)
Source: addons/grid_placement/placement/placement_rules/template_rules/spend_by_id_rule.gd
Syntax
class SpendByIdRule extends SpendCostRuleBase