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

◆ SmartCursorLookup()

static void Terraria.GameContent.SmartCursorHelper.SmartCursorLookup ( Player player)
inlinestatic

Definition at line 54 of file SmartCursorHelper.cs.

55 {
56 Main.SmartCursorShowing = false;
57 if (!Main.SmartCursorIsUsed)
58 {
59 return;
60 }
61 SmartCursorUsageInfo smartCursorUsageInfo = new SmartCursorUsageInfo
62 {
63 player = player,
64 item = player.inventory[player.selectedItem],
65 mouse = Main.MouseWorld,
66 position = player.position,
67 Center = player.Center
68 };
69 _ = player.gravDir;
70 int tileTargetX = Player.tileTargetX;
71 int tileTargetY = Player.tileTargetY;
72 int tileRangeX = Player.tileRangeX;
73 int tileRangeY = Player.tileRangeY;
74 smartCursorUsageInfo.screenTargetX = Utils.Clamp(tileTargetX, 10, Main.maxTilesX - 10);
75 smartCursorUsageInfo.screenTargetY = Utils.Clamp(tileTargetY, 10, Main.maxTilesY - 10);
76 if (Main.tile[smartCursorUsageInfo.screenTargetX, smartCursorUsageInfo.screenTargetY] == null)
77 {
78 return;
79 }
82 int tileBoost = smartCursorUsageInfo.item.tileBoost;
83 smartCursorUsageInfo.reachableStartX = (int)(player.position.X / 16f) - tileRangeX - tileBoost + 1;
84 smartCursorUsageInfo.reachableEndX = (int)((player.position.X + (float)player.width) / 16f) + tileRangeX + tileBoost - 1;
85 smartCursorUsageInfo.reachableStartY = (int)(player.position.Y / 16f) - tileRangeY - tileBoost + 1;
86 smartCursorUsageInfo.reachableEndY = (int)((player.position.Y + (float)player.height) / 16f) + tileRangeY + tileBoost - 2;
87 smartCursorUsageInfo.reachableStartX = Utils.Clamp(smartCursorUsageInfo.reachableStartX, 10, Main.maxTilesX - 10);
88 smartCursorUsageInfo.reachableEndX = Utils.Clamp(smartCursorUsageInfo.reachableEndX, 10, Main.maxTilesX - 10);
89 smartCursorUsageInfo.reachableStartY = Utils.Clamp(smartCursorUsageInfo.reachableStartY, 10, Main.maxTilesY - 10);
90 smartCursorUsageInfo.reachableEndY = Utils.Clamp(smartCursorUsageInfo.reachableEndY, 10, Main.maxTilesY - 10);
91 if (!num || smartCursorUsageInfo.screenTargetX < smartCursorUsageInfo.reachableStartX || smartCursorUsageInfo.screenTargetX > smartCursorUsageInfo.reachableEndX || smartCursorUsageInfo.screenTargetY < smartCursorUsageInfo.reachableStartY || smartCursorUsageInfo.screenTargetY > smartCursorUsageInfo.reachableEndY)
92 {
93 _grappleTargets.Clear();
94 int[] grappling = player.grappling;
95 int grapCount = player.grapCount;
96 for (int i = 0; i < grapCount; i++)
97 {
98 Projectile obj = Main.projectile[grappling[i]];
99 int item = (int)obj.Center.X / 16;
100 int item2 = (int)obj.Center.Y / 16;
102 }
103 int fX = -1;
104 int fY = -1;
105 if (!Player.SmartCursorSettings.SmartAxeAfterPickaxe)
106 {
108 }
112 if (Player.SmartCursorSettings.SmartAxeAfterPickaxe)
113 {
115 }
143 if (fX != -1 && fY != -1)
144 {
145 Main.SmartCursorX = (Player.tileTargetX = fX);
146 Main.SmartCursorY = (Player.tileTargetY = fY);
147 Main.SmartCursorShowing = true;
148 }
149 _grappleTargets.Clear();
150 }
151 }
static void Step_PaintRoller(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Boulders(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Pigronata(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_BlocksLines(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void TryFindingPaintInplayerInventory(SmartCursorUsageInfo providedInfo, out int paintLookup, out int coatingLookup)
static void Step_LawnMower(SmartCursorUsageInfo providedInfo, ref int fX, ref int fY)
static void Step_Acorns(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_ColoredWrenches(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_MinecartTracks(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Torch(SmartCursorUsageInfo providedInfo, ref int fX, ref int fY)
static void Step_MulticolorWrench(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_GrassSeeds(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_StaffOfRegrowth(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Pickaxe_MineShinies(SmartCursorUsageInfo providedInfo, ref int fX, ref int fY)
static void Step_BlocksFilling(SmartCursorUsageInfo providedInfo, ref int fX, ref int fY)
static void Step_WireCutter(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Actuators(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_ForceCursorToAnyMinableThing(SmartCursorUsageInfo providedInfo, ref int fX, ref int fY)
static List< Tuple< int, int > > _grappleTargets
static void Step_EmptyBuckets(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Walls(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Hammers(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_PaintScrapper(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_ClayPots(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Axe(SmartCursorUsageInfo providedInfo, ref int fX, ref int fY)
static void Step_PaintBrush(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static bool IsHoveringOverAnInteractibleTileThatBlocksSmartCursor(SmartCursorUsageInfo providedInfo)
static void Step_AlchemySeeds(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_ActuationRod(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Platforms(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_GemCorns(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_PumpkinSeeds(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_PlanterBox(SmartCursorUsageInfo providedInfo, ref int focusedX, ref int focusedY)
static void Step_Pickaxe_MineSolids(Player player, SmartCursorUsageInfo providedInfo, List< Tuple< int, int > > grappleTargets, ref int focusedX, ref int focusedY)

References Terraria.GameContent.SmartCursorHelper._grappleTargets, Terraria.Player.grapCount, Terraria.Player.grappling, Terraria.Player.gravDir, Terraria.Entity.height, Terraria.Player.inventory, Terraria.GameContent.SmartCursorHelper.IsHoveringOverAnInteractibleTileThatBlocksSmartCursor(), System.item, Terraria.Main.maxTilesX, Terraria.Main.maxTilesY, Terraria.Main.MouseWorld, System.obj, Terraria.Entity.position, Terraria.Main.projectile, Terraria.Player.selectedItem, Terraria.Player.SmartCursorSettings.SmartAxeAfterPickaxe, Terraria.Main.SmartCursorIsUsed, Terraria.GameContent.SmartCursorHelper.Step_Acorns(), Terraria.GameContent.SmartCursorHelper.Step_ActuationRod(), Terraria.GameContent.SmartCursorHelper.Step_Actuators(), Terraria.GameContent.SmartCursorHelper.Step_AlchemySeeds(), Terraria.GameContent.SmartCursorHelper.Step_Axe(), Terraria.GameContent.SmartCursorHelper.Step_BlocksFilling(), Terraria.GameContent.SmartCursorHelper.Step_BlocksLines(), Terraria.GameContent.SmartCursorHelper.Step_Boulders(), Terraria.GameContent.SmartCursorHelper.Step_ClayPots(), Terraria.GameContent.SmartCursorHelper.Step_ColoredWrenches(), Terraria.GameContent.SmartCursorHelper.Step_EmptyBuckets(), Terraria.GameContent.SmartCursorHelper.Step_ForceCursorToAnyMinableThing(), Terraria.GameContent.SmartCursorHelper.Step_GemCorns(), Terraria.GameContent.SmartCursorHelper.Step_GrassSeeds(), Terraria.GameContent.SmartCursorHelper.Step_Hammers(), Terraria.GameContent.SmartCursorHelper.Step_LawnMower(), Terraria.GameContent.SmartCursorHelper.Step_MinecartTracks(), Terraria.GameContent.SmartCursorHelper.Step_MulticolorWrench(), Terraria.GameContent.SmartCursorHelper.Step_PaintBrush(), Terraria.GameContent.SmartCursorHelper.Step_PaintRoller(), Terraria.GameContent.SmartCursorHelper.Step_PaintScrapper(), Terraria.GameContent.SmartCursorHelper.Step_Pickaxe_MineShinies(), Terraria.GameContent.SmartCursorHelper.Step_Pickaxe_MineSolids(), Terraria.GameContent.SmartCursorHelper.Step_Pigronata(), Terraria.GameContent.SmartCursorHelper.Step_PlanterBox(), Terraria.GameContent.SmartCursorHelper.Step_Platforms(), Terraria.GameContent.SmartCursorHelper.Step_PumpkinSeeds(), Terraria.GameContent.SmartCursorHelper.Step_StaffOfRegrowth(), Terraria.GameContent.SmartCursorHelper.Step_Torch(), Terraria.GameContent.SmartCursorHelper.Step_Walls(), Terraria.GameContent.SmartCursorHelper.Step_WireCutter(), Terraria.Main.tile, Terraria.Player.tileRangeX, Terraria.Player.tileRangeY, Terraria.Player.tileTargetX, Terraria.Player.tileTargetY, Terraria.GameContent.SmartCursorHelper.TryFindingPaintInplayerInventory(), Terraria.Entity.width, Microsoft.Xna.Framework.Vector2.X, and Microsoft.Xna.Framework.Vector2.Y.

Referenced by Terraria.Player.Update().