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

◆ ItemCheck_UseMiningTools()

void Terraria.Player.ItemCheck_UseMiningTools ( Item sItem)
inlineprivate

Definition at line 43374 of file Player.cs.

43375 {
43376 SpecialToolUsageSettings specialToolUsageSettings = default(SpecialToolUsageSettings);
43377 if (sItem.type == 4711)
43378 {
43379 SpecialToolUsageSettings specialToolUsageSettings2 = default(SpecialToolUsageSettings);
43380 specialToolUsageSettings2.IsAValidTool = true;
43381 specialToolUsageSettings2.UsageAction = UseShovel;
43383 }
43384 if (sItem.pick <= 0 && sItem.axe <= 0 && sItem.hammer <= 0 && !specialToolUsageSettings.IsAValidTool)
43385 {
43386 return;
43387 }
43388 bool flag = IsTargetTileInItemRange(sItem);
43389 if (noBuilding)
43390 {
43391 flag = false;
43392 }
43393 if (flag && specialToolUsageSettings.UsageCondition != null)
43394 {
43395 flag = specialToolUsageSettings.UsageCondition(this, sItem, tileTargetX, tileTargetY);
43396 }
43397 if (toolTime == 0 && itemAnimation > 0 && controlUseItem)
43398 {
43399 Tile tile = Main.tile[tileTargetX, tileTargetY];
43400 if (!tile.active() || IsTilePoundable(tile))
43401 {
43402 poundRelease = false;
43403 }
43404 }
43405 if (!flag)
43406 {
43407 return;
43408 }
43409 if (!Main.GamepadDisableCursorItemIcon)
43410 {
43411 cursorItemIconEnabled = true;
43412 Main.ItemIconCacheUpdate(sItem.type);
43413 }
43414 bool canHitWalls = false;
43415 if (toolTime == 0 && itemAnimation > 0 && controlUseItem)
43416 {
43417 if (specialToolUsageSettings.UsageAction != null)
43418 {
43420 return;
43421 }
43423 }
43424 if (releaseUseItem)
43425 {
43426 poundRelease = true;
43427 }
43428 if (toolTime == 0 && itemAnimation > 0 && controlUseItem && canHitWalls)
43429 {
43432 }
43433 }
bool poundRelease
Definition Player.cs:1185
void UseShovel(Player user, Item item, int sX, int sY)
Definition Player.cs:43348
bool cursorItemIconEnabled
Definition Player.cs:1489
bool releaseUseItem
Definition Player.cs:1413
static void ItemCheck_UseMiningTools_TryFindingWallToHammer(out int wX, out int wY)
Definition Player.cs:43612
static int tileTargetY
Definition Player.cs:2085
bool noBuilding
Definition Player.cs:799
bool IsTilePoundable(Tile targetTile)
Definition Player.cs:43339
static int tileTargetX
Definition Player.cs:2083
void ItemCheck_UseMiningTools_TryHittingWall(Item sItem, int wX, int wY)
Definition Player.cs:43688
bool IsTargetTileInItemRange(Item sItem)
Definition Player.cs:44086
void ItemCheck_UseMiningTools_ActuallyUseMiningTool(Item sItem, out bool canHitWalls, int x, int y)
Definition Player.cs:43435
bool controlUseItem
Definition Player.cs:1391

References Terraria.Tile.active(), Terraria.Main.GamepadDisableCursorItemIcon, Terraria.Main.ItemIconCacheUpdate(), and Terraria.Main.tile.