Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
Searches.cs
Go to the documentation of this file.
2
4
5public static class Searches
6{
7 public class Left : GenSearch
8 {
9 private int _maxDistance;
10
11 public Left(int maxDistance)
12 {
13 _maxDistance = maxDistance;
14 }
15
16 public override Point Find(Point origin)
17 {
18 for (int i = 0; i < _maxDistance; i++)
19 {
20 if (Check(origin.X - i, origin.Y))
21 {
22 return new Point(origin.X - i, origin.Y);
23 }
24 }
25 return GenSearch.NOT_FOUND;
26 }
27 }
28
29 public class Right : GenSearch
30 {
31 private int _maxDistance;
32
33 public Right(int maxDistance)
34 {
35 _maxDistance = maxDistance;
36 }
37
38 public override Point Find(Point origin)
39 {
40 for (int i = 0; i < _maxDistance; i++)
41 {
42 if (Check(origin.X + i, origin.Y))
43 {
44 return new Point(origin.X + i, origin.Y);
45 }
46 }
47 return GenSearch.NOT_FOUND;
48 }
49 }
50
51 public class Down : GenSearch
52 {
53 private int _maxDistance;
54
55 public Down(int maxDistance)
56 {
57 _maxDistance = maxDistance;
58 }
59
60 public override Point Find(Point origin)
61 {
62 for (int i = 0; i < _maxDistance && origin.Y + i < Main.maxTilesY; i++)
63 {
64 if (Check(origin.X, origin.Y + i))
65 {
66 return new Point(origin.X, origin.Y + i);
67 }
68 }
69 return GenSearch.NOT_FOUND;
70 }
71 }
72
73 public class Up : GenSearch
74 {
75 private int _maxDistance;
76
77 public Up(int maxDistance)
78 {
79 _maxDistance = maxDistance;
80 }
81
82 public override Point Find(Point origin)
83 {
84 for (int i = 0; i < _maxDistance; i++)
85 {
86 if (Check(origin.X, origin.Y - i))
87 {
88 return new Point(origin.X, origin.Y - i);
89 }
90 }
91 return GenSearch.NOT_FOUND;
92 }
93 }
94
95 public class Rectangle : GenSearch
96 {
97 private int _width;
98
99 private int _height;
100
101 public Rectangle(int width, int height)
102 {
103 _width = width;
104 _height = height;
105 }
106
107 public override Point Find(Point origin)
108 {
109 for (int i = 0; i < _width; i++)
110 {
111 for (int j = 0; j < _height; j++)
112 {
113 if (Check(origin.X + i, origin.Y + j))
114 {
115 return new Point(origin.X + i, origin.Y + j);
116 }
117 }
118 }
119 return GenSearch.NOT_FOUND;
120 }
121 }
122
123 public static GenSearch Chain(GenSearch search, params GenCondition[] conditions)
124 {
125 return search.Conditions(conditions);
126 }
127}
static int maxTilesY
Definition Main.cs:1116
GenSearch Conditions(params GenCondition[] conditions)
Definition GenSearch.cs:13
override Point Find(Point origin)
Definition Searches.cs:60
override Point Find(Point origin)
Definition Searches.cs:16
override Point Find(Point origin)
Definition Searches.cs:107
override Point Find(Point origin)
Definition Searches.cs:38
override Point Find(Point origin)
Definition Searches.cs:82
static GenSearch Chain(GenSearch search, params GenCondition[] conditions)
Definition Searches.cs:123