Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ TryGettingLootFor()

bool Terraria.GameContent.LootSimulation.LootSimulator.TryGettingLootFor ( int npcNetId,
int timesMultiplier,
out string outputText )
inlineprivate

Definition at line 85 of file LootSimulator.cs.

86 {
87 SimulatorInfo simulatorInfo = new SimulatorInfo();
88 NPC nPC = new NPC();
89 nPC.SetDefaults(npcNetId);
90 simulatorInfo.npcVictim = nPC;
91 LootSimulationItemCounter lootSimulationItemCounter = (simulatorInfo.itemCounter = new LootSimulationItemCounter());
92 foreach (ISimulationConditionSetter neededTestCondition in _neededTestConditions)
93 {
95 int num = neededTestCondition.GetTimesToRunMultiplier(simulatorInfo) * timesMultiplier;
96 for (int i = 0; i < num; i++)
97 {
98 nPC.NPCLoot();
99 }
100 lootSimulationItemCounter.IncreaseTimesAttempted(num, simulatorInfo.runningExpertMode);
103 }
105 string text = lootSimulationItemCounter.PrintCollectedItems(expert: false);
106 string text2 = lootSimulationItemCounter.PrintCollectedItems(expert: true);
107 string name = NPCID.Search.GetName(npcNetId);
108 string text3 = $"FindEntryByNPCID(NPCID.{name})";
109 if (text.Length > 0)
110 {
111 text3 = $"{text3}\n.AddDropsNormalMode({text})";
112 }
113 if (text2.Length > 0)
114 {
115 text3 = $"{text3}\n.AddDropsExpertMode({text2})";
116 }
117 text3 += ";";
119 if (text.Length <= 0)
120 {
121 return text2.Length > 0;
122 }
123 return true;
124 }
List< ISimulationConditionSetter > _neededTestConditions
static readonly IdDictionary Search
Definition NPCID.cs:11746

References Terraria.GameContent.LootSimulation.LootSimulator._excludedItemIds, Terraria.GameContent.LootSimulation.LootSimulator._neededTestConditions, Terraria.ID.NPCID.Search, and Terraria.GameContent.LootSimulation.LootSimulator.SetCleanSlateWorldConditions().

Referenced by Terraria.GameContent.LootSimulation.LootSimulator.Run().