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

◆ SmartSelect_GetToolStrategy()

void Terraria.Player.SmartSelect_GetToolStrategy ( int tX,
int tY,
out int toolStrategy,
out bool wetTile )
inlineprivate

Definition at line 16047 of file Player.cs.

16048 {
16049 toolStrategy = 0;
16050 bool flag = false;
16051 wetTile = false;
16052 try
16053 {
16054 int num = 0;
16055 int num2 = 0;
16056 if (position.X / 16f >= (float)tX)
16057 {
16058 num = (int)(position.X / 16f) - tX;
16059 }
16060 if ((position.X + (float)width) / 16f <= (float)tX)
16061 {
16062 num = tX - (int)((position.X + (float)width) / 16f);
16063 }
16064 if (position.Y / 16f >= (float)tY)
16065 {
16066 num2 = (int)(position.Y / 16f) - tY;
16067 }
16068 if ((position.Y + (float)height) / 16f <= (float)tY)
16069 {
16070 num2 = tY - (int)((position.Y + (float)height) / 16f);
16071 }
16073 wetTile = Main.tile[tX, tY].liquid > 0;
16074 if (Main.tile[tX, tY].active())
16075 {
16076 int type = Main.tile[tX, tY].type;
16077 if ((type == 219 || type == 642) && num <= extractItemRange + tileRangeX && num2 <= extractItemRange + tileRangeY)
16078 {
16079 toolStrategy = 7;
16080 flag = true;
16081 }
16082 else if (type == 209 && num <= cannonRange + tileRangeX && num2 <= cannonRange + tileRangeY)
16083 {
16084 toolStrategy = 6;
16085 flag = true;
16086 }
16087 else if (Main.tileHammer[type] && num <= hammerRange + tileRangeX && num2 <= hammerRange + tileRangeY)
16088 {
16089 toolStrategy = 1;
16090 flag = true;
16091 }
16092 else if (Main.tileAxe[type] && num <= axeRange + tileRangeX && num2 <= axeRange + tileRangeY)
16093 {
16094 toolStrategy = 2;
16095 flag = true;
16096 }
16097 else if (type == 184 && num <= paintScraperRange + tileRangeX && num2 <= paintScraperRange + tileRangeY)
16098 {
16099 toolStrategy = 8;
16100 flag = true;
16101 }
16102 else if (num <= pickRange + tileRangeX && num2 <= pickRange + tileRangeY)
16103 {
16104 toolStrategy = 3;
16105 flag = true;
16106 }
16107 }
16108 else if (wetTile && wet)
16109 {
16110 toolStrategy = 4;
16111 flag = true;
16112 }
16113 }
16114 catch
16115 {
16116 }
16117 if (!flag && wet)
16118 {
16119 toolStrategy = 4;
16120 }
16121 }
bool wet
The Entity is currently in water. Projectile: Affects movement speed and some projectiles die when ...
Definition Entity.cs:57
Vector2 position
The position of this Entity in world coordinates.
Definition Entity.cs:28
int width
The width of this Entity's hitbox, in pixels.
Definition Entity.cs:46
int height
The height of this Entity's hitbox, in pixels.
Definition Entity.cs:51
void SmartSelect_GetAvailableToolRanges(out int pickRange, out int axeRange, out int hammerRange, out int cannonRange, out int extractItemRange, out int paintScraperRange)
Definition Player.cs:16123
static int tileRangeX
Definition Player.cs:2642
static int tileRangeY
Definition Player.cs:2644

References Terraria.Entity.height, Terraria.Entity.position, Terraria.Player.SmartSelect_GetAvailableToolRanges(), Terraria.Main.tile, Terraria.Main.tileAxe, Terraria.Main.tileHammer, Terraria.Player.tileRangeX, Terraria.Player.tileRangeY, Terraria.Entity.wet, and Terraria.Entity.width.

Referenced by Terraria.Player.SmartSelectLookup().

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