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

◆ PlaceThing_TryReplacingTiles()

bool Terraria.Player.PlaceThing_TryReplacingTiles ( bool canUse)
inlineprivate

Definition at line 37634 of file Player.cs.

37635 {
37637 if (flag)
37638 {
37639 TileObject.objectPreview.Reset();
37640 }
37641 if (controlUseItem && canUse && Main.tile[tileTargetX, tileTargetY].active() && itemAnimation > 0 && ItemTimeIsZero && flag)
37642 {
37644 if (bestPickaxe == null)
37645 {
37646 return false;
37647 }
37648 Tile tile = Main.tile[tileTargetX, tileTargetY];
37649 _ = tile.type;
37652 if (pickaxeDamage == 0)
37653 {
37654 return false;
37655 }
37656 if (!WorldGen.IsTileReplacable(tileTargetX, tileTargetY))
37657 {
37658 return false;
37659 }
37660 if (0 == 0)
37661 {
37662 if (hitReplace.AddDamage(num, pickaxeDamage) < 100)
37663 {
37664 int num2 = WorldGen.KillTile_GetTileDustAmount(fail: true, tile);
37665 for (int i = 0; i < num2; i++)
37666 {
37667 WorldGen.KillTile_MakeTileDust(tileTargetX, tileTargetY, tile);
37668 }
37669 WorldGen.KillTile_PlaySounds(tileTargetX, tileTargetY, fail: true, tile);
37670 if (HeldItem.consumable)
37671 {
37672 HeldItem.stack++;
37673 }
37674 dontConsumeWand = true;
37676 SetItemAnimation((int)((float)bestPickaxe.useTime * pickSpeed));
37677 return false;
37678 }
37680 }
37682 ushort num3 = (ushort)HeldItem.createTile;
37683 int num4 = HeldItem.placeStyle;
37684 if (UsingBiomeTorches && num3 == 4)
37685 {
37687 }
37688 if (UsingBiomeTorches && num3 == 215)
37689 {
37691 }
37692 if (WorldGen.ReplaceTile(tileTargetX, tileTargetY, num3, num4))
37693 {
37694 canUse = false;
37695 NetMessage.SendData(17, -1, -1, null, 21, tileTargetX, tileTargetY, (int)num3, num4);
37699 }
37700 }
37701 return canUse;
37702 }
int AddDamage(int tileId, int damageAmount, bool updateAmount=true)
Definition HitTile.cs:177
int HitObject(int x, int y, int hitType)
Definition HitTile.cs:141
int useAnimation
Definition Item.cs:145
int stack
Definition Item.cs:149
int createTile
Definition Item.cs:161
bool consumable
Definition Item.cs:177
int placeStyle
Definition Item.cs:165
void ApplyItemTime(Item sItem)
Definition Player.cs:3752
void SetItemAnimation(int frames)
Definition Player.cs:3769
float pickSpeed
Definition Player.cs:2049
bool ItemTimeIsZero
Definition Player.cs:3525
int[,] PlaceThing_Tiles_GetAutoAccessoryCache()
Definition Player.cs:38156
void ClearMiningCacheAt(int x, int y, int hitTileCacheType)
Definition Player.cs:50311
bool PlaceThing_ValidTileForReplacement()
Definition Player.cs:37704
bool UsingBiomeTorches
Definition Player.cs:3426
static int tileTargetY
Definition Player.cs:2085
int BiomeCampfirePlaceStyle(int style)
Definition Player.cs:38042
int GetPickaxeDamage(int x, int y, int pickPower, int hitBufferIndex, Tile tileTarget)
Definition Player.cs:50368
Item GetBestPickaxe()
Definition Player.cs:37842
static int tileTargetX
Definition Player.cs:2083
int BiomeTorchPlaceStyle(int style)
Definition Player.cs:37928
bool dontConsumeWand
Definition Player.cs:661
HitTile hitReplace
Definition Player.cs:1325
bool controlUseItem
Definition Player.cs:1391
void PlaceThing_Tiles_PlaceIt_AutoPaintAndActuate(int[,] typeCaches, int tileToCreate)
Definition Player.cs:38286

References Terraria.Item.consumable, Terraria.Item.createTile, Terraria.WorldGen.IsTileReplacable(), Terraria.WorldGen.KillTile_GetTileDustAmount(), Terraria.WorldGen.KillTile_MakeTileDust(), Terraria.WorldGen.KillTile_PlaySounds(), Terraria.TileObject.objectPreview, Terraria.Item.placeStyle, Terraria.WorldGen.ReplaceTile(), Terraria.NetMessage.SendData(), Terraria.Item.stack, Terraria.Main.tile, Terraria.Tile.type, and Terraria.Item.useAnimation.