43436 {
43437 int num = -1;
43440 Tile tile = Main.tile[x, y];
43441 if (!tile.active())
43442 {
43443 return;
43444 }
43445 if ((
sItem.pick > 0 && !Main.tileAxe[tile.type] && !Main.tileHammer[tile.type]) || (
sItem.axe > 0 && Main.tileAxe[tile.type]) || (
sItem.hammer > 0 && Main.tileHammer[tile.type]))
43446 {
43448 }
43450 if (Main.tileNoFail[tile.type])
43451 {
43453 }
43454 if (Main.tileHammer[tile.type])
43455 {
43457 if (
sItem.hammer > 0)
43458 {
43461 {
43463 }
43464 if (tile.type == 26 && (
sItem.hammer < 80 || !Main.hardMode))
43465 {
43468 }
43469 AchievementsHelper.CurrentlyMining = true;
43471 {
43474 if (Main.netMode == 1)
43475 {
43476 NetMessage.SendData(17, -1, -1, null, 0, x, y);
43477 }
43478 }
43479 else
43480 {
43482 if (Main.netMode == 1)
43483 {
43484 NetMessage.SendData(17, -1, -1, null, 0, x, y, 1f);
43485 }
43486 }
43488 {
43490 }
43492 AchievementsHelper.CurrentlyMining = false;
43493 }
43494 }
43495 else if (Main.tileAxe[tile.type])
43496 {
43497 num2 = ((tile.type != 80) ? (
num2 + (
int)((float)
sItem.axe * 1.2f)) : (
num2 + (int)((float)(
sItem.axe * 3) * 1.2f)));
43498 if (Main.getGoodWorld)
43499 {
43501 }
43503 {
43504 AchievementsHelper.CurrentlyMining = true;
43506 {
43508 }
43509 if (Main.dontStarveWorld && Main.myPlayer ==
whoAmI &&
num2 > 0 && tile.type == 80)
43510 {
43512 }
43514 {
43516 {
43519 {
43521 }
43522 if (tile.type == 80)
43523 {
43526 }
43527 else
43528 {
43530 }
43531 }
43535 if (Main.netMode == 1)
43536 {
43537 NetMessage.SendData(17, -1, -1, null, 0, x, y);
43538 }
43539 if (
sItem.type == 5295 && flag)
43540 {
43542 }
43543 }
43544 else
43545 {
43547 if (Main.netMode == 1)
43548 {
43549 NetMessage.SendData(17, -1, -1, null, 0, x, y, 1f);
43550 }
43551 }
43553 {
43555 }
43557 AchievementsHelper.CurrentlyMining = false;
43558 }
43559 }
43560 else if (
sItem.pick > 0)
43561 {
43563 }
43564 if (
sItem.pick > 0)
43565 {
43567 }
43569 }
static PlayerDeathReason ByOther(int type)
static void TryCreatingMessageWithCooldown(MessageSource messageSource, Vector2 position, Vector2 velocity, int cooldownTimeInTicks)
static void Create(MessageSource source, Vector2 position, Vector2 velocity)
int AddDamage(int tileId, int damageAmount, bool updateAmount=true)
int HitObject(int x, int y, int hitType)
static bool[] CountsAsGemTree
static bool[] IsATreeTrunk
void ApplyItemTime(Item sItem)
void ClearMiningCacheAt(int x, int y, int hitTileCacheType)
bool IsBottomOfTreeTrunkNoRoots(int x, int y)
double Hurt(PlayerDeathReason damageSource, int Damage, int hitDirection, bool pvp=false, bool quiet=false, bool Crit=false, int cooldownCounter=-1, bool dodgeable=true)
void PickTile(int x, int y, int pickPower)
void ItemCheck_UseMiningTools_TryPoundingTile(Item sItem, int tileHitId, ref bool hitWall, int x, int y)