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

◆ TryRecalculatingTorchLuck()

void Terraria.Player.TryRecalculatingTorchLuck ( )
inlineprivate

Definition at line 16173 of file Player.cs.

16174 {
16175 //IL_002e: Unknown result type (might be due to invalid IL or missing references)
16176 //IL_0033: Unknown result type (might be due to invalid IL or missing references)
16177 //IL_0034: Unknown result type (might be due to invalid IL or missing references)
16178 //IL_0061: Unknown result type (might be due to invalid IL or missing references)
16179 //IL_006e: Unknown result type (might be due to invalid IL or missing references)
16180 //IL_007c: Unknown result type (might be due to invalid IL or missing references)
16181 //IL_01df: Unknown result type (might be due to invalid IL or missing references)
16183 {
16185 TorchAttack();
16186 return;
16187 }
16188 if (torchGodCooldown > 0)
16189 {
16191 }
16193 if (((double)nextTorchLuckCheckCenter.Y < Main.worldSurface * 16.0) | dead)
16194 {
16196 return;
16197 }
16198 int num = 1;
16199 int num2 = 40;
16200 int num3 = (int)nextTorchLuckCheckCenter.Y / 16 - num2;
16201 int value = (int)nextTorchLuckCheckCenter.X / 16 - num2;
16202 int value2 = (int)nextTorchLuckCheckCenter.X / 16 + num2;
16203 value = Utils.Clamp(value, 10, Main.maxTilesX - 10);
16204 value2 = Utils.Clamp(value2, 10, Main.maxTilesX - 10);
16205 for (int i = 0; i < num; i++)
16206 {
16207 int num4 = num3 + i + luckyTorchCounter * num;
16208 if (num4 < 10 || num4 > Main.maxTilesY - 10)
16209 {
16210 continue;
16211 }
16212 for (int j = value; j <= value2; j++)
16213 {
16214 Tile tile = Main.tile[j, num4];
16215 if (tile == null)
16216 {
16217 return;
16218 }
16219 if (tile.type >= TileID.Count)
16220 {
16221 if (tile.active() && TileID.Sets.Torch[tile.type])
16222 {
16223 NearbyModTorch.Add(tile.type);
16224 }
16225 }
16226 else
16227 {
16228 if (!tile.active() || tile.type != 4 || tile.frameX < 0 || tile.frameY < 0)
16229 {
16230 continue;
16231 }
16232 if (tile.frameX < 66)
16233 {
16234 nearbyTorches++;
16235 }
16236 int num5 = tile.frameY / 22;
16237 if (num5 < TorchID.Count)
16238 {
16239 nearbyTorch[num5] = true;
16240 if (num5 == 17 && (tile.liquid == 0 || tile.liquidType() != 0))
16241 {
16242 dryCoralTorch = true;
16243 }
16244 }
16245 }
16246 }
16247 if (num4 >= (int)nextTorchLuckCheckCenter.Y / 16 + num2)
16248 {
16250 return;
16251 }
16252 }
16254 }
static bool[] Torch
Whether or not this tile behaves like a torch. If you are making a torch tile, then setting this to t...
Definition TileID.cs:428
static readonly ushort Count
Definition TileID.cs:1928
static readonly short Count
Definition TorchID.cs:132
int luckyTorchCounter
Definition Player.cs:3177
bool happyFunTorchTime
Definition Player.cs:3185
void UpdateTorchLuck_ConsumeCountersAndCalculate()
Definition Player.cs:16406
int torchGodCooldown
Definition Player.cs:3189
bool[] nearbyTorch
Definition Player.cs:3173
Vector2 _nextTorchLuckCheckCenter
Definition Player.cs:3183
void TorchAttack()
Definition Player.cs:16277
bool dryCoralTorch
Definition Player.cs:3175
HashSet< int > NearbyModTorch
Definition Player.cs:4569

References Terraria.Player._nextTorchLuckCheckCenter, Terraria.Tile.active(), Terraria.ID.TileID.Count, Terraria.ID.TorchID.Count, Terraria.Player.dead, Terraria.Player.dryCoralTorch, Terraria.Tile.frameX, Terraria.Tile.frameY, Terraria.Player.happyFunTorchTime, Terraria.Tile.liquid, Terraria.Tile.liquidType(), Terraria.Player.luckyTorchCounter, Terraria.Main.maxTilesX, Terraria.Main.maxTilesY, Terraria.Player.NearbyModTorch, Terraria.Player.nearbyTorch, Terraria.Player.nearbyTorches, Terraria.Main.tile, Terraria.ID.TileID.Sets.Torch, Terraria.Player.TorchAttack(), Terraria.Player.torchGodCooldown, Terraria.Tile.type, Terraria.Player.UpdateTorchLuck_ConsumeCountersAndCalculate(), and Terraria.Main.worldSurface.

Referenced by Terraria.Player.UpdateLuckFactors().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: