Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
PotionOfReturnSmartInteractCandidateProvider.cs
Go to the documentation of this file.
2
4
6{
8 {
9 public float DistanceFromCursor { get; private set; }
10
11 public void WinCandidacy()
12 {
13 Main.SmartInteractPotionOfReturn = true;
14 Main.SmartInteractShowingGenuine = true;
15 }
16
17 public void Reuse(float distanceFromCursor)
18 {
19 DistanceFromCursor = distanceFromCursor;
20 }
21 }
22
24
26 {
27 Main.SmartInteractPotionOfReturn = false;
28 }
29
31 {
32 candidate = null;
33 if (!PotionOfReturnHelper.TryGetGateHitbox(settings.player, out var homeHitbox))
34 {
35 return false;
36 }
37 Vector2 vector = homeHitbox.ClosestPointInRect(settings.mousevec);
38 float distanceFromCursor = vector.Distance(settings.mousevec);
39 Point point = vector.ToTileCoordinates();
40 if (point.X < settings.LX || point.X > settings.HX || point.Y < settings.LY || point.Y > settings.HY)
41 {
42 return false;
43 }
44 _candidate.Reuse(distanceFromCursor);
45 candidate = _candidate;
46 return true;
47 }
48}
static bool TryGetGateHitbox(Player player, out Rectangle homeHitbox)
bool ProvideCandidate(SmartInteractScanSettings settings, out ISmartInteractCandidate candidate)
static float Distance(Vector2 value1, Vector2 value2)
Definition Vector2.cs:91