Terraria v1.4.4.9
Terraria 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 17286 of file Player.cs.

17287 {
17288 toolStrategy = 0;
17289 bool flag = false;
17290 wetTile = false;
17291 try
17292 {
17293 int num = 0;
17294 int num2 = 0;
17295 if (position.X / 16f >= (float)tX)
17296 {
17297 num = (int)(position.X / 16f) - tX;
17298 }
17299 if ((position.X + (float)width) / 16f <= (float)tX)
17300 {
17301 num = tX - (int)((position.X + (float)width) / 16f);
17302 }
17303 if (position.Y / 16f >= (float)tY)
17304 {
17305 num2 = (int)(position.Y / 16f) - tY;
17306 }
17307 if ((position.Y + (float)height) / 16f <= (float)tY)
17308 {
17309 num2 = tY - (int)((position.Y + (float)height) / 16f);
17310 }
17312 wetTile = Main.tile[tX, tY].liquid > 0;
17313 if (Main.tile[tX, tY].active())
17314 {
17315 int type = Main.tile[tX, tY].type;
17316 if ((type == 219 || type == 642) && num <= extractItemRange + tileRangeX && num2 <= extractItemRange + tileRangeY)
17317 {
17318 toolStrategy = 7;
17319 flag = true;
17320 }
17321 else if (type == 209 && num <= cannonRange + tileRangeX && num2 <= cannonRange + tileRangeY)
17322 {
17323 toolStrategy = 6;
17324 flag = true;
17325 }
17326 else if (Main.tileHammer[type] && num <= hammerRange + tileRangeX && num2 <= hammerRange + tileRangeY)
17327 {
17328 toolStrategy = 1;
17329 flag = true;
17330 }
17331 else if (Main.tileAxe[type] && num <= axeRange + tileRangeX && num2 <= axeRange + tileRangeY)
17332 {
17333 toolStrategy = 2;
17334 flag = true;
17335 }
17336 else if (type == 184 && num <= paintScraperRange + tileRangeX && num2 <= paintScraperRange + tileRangeY)
17337 {
17338 toolStrategy = 8;
17339 flag = true;
17340 }
17341 else if (num <= pickRange + tileRangeX && num2 <= pickRange + tileRangeY)
17342 {
17343 toolStrategy = 3;
17344 flag = true;
17345 }
17346 }
17347 else if (wetTile && wet)
17348 {
17349 toolStrategy = 4;
17350 flag = true;
17351 }
17352 }
17353 catch
17354 {
17355 }
17356 if (!flag && wet)
17357 {
17358 toolStrategy = 4;
17359 }
17360 }
Vector2 position
Definition Entity.cs:14
void SmartSelect_GetAvailableToolRanges(out int pickRange, out int axeRange, out int hammerRange, out int cannonRange, out int extractItemRange, out int paintScraperRange)
Definition Player.cs:17362
static int tileRangeX
Definition Player.cs:2075
static int tileRangeY
Definition Player.cs:2077

References Terraria.Main.tile, Terraria.Main.tileAxe, Terraria.Main.tileHammer, and System.type.