178 {
180 {
181 return;
182 }
183 Vector2 vector = Main.MouseScreen;
184 Vector2 vector2 =
new Vector2(Main.screenWidth / 2, Main.screenHeight - 70);
186 {
188 }
189 Vector2 vector3 = vector - vector2;
192 vector3.ToRotation();
194 bool flag = false;
195 bool drawToolAllowActuators =
Settings.DrawToolAllowActuators;
196 for (
int i = 0;
i < 6;
i++)
197 {
198 if (!drawToolAllowActuators && i == 5)
199 {
200 continue;
201 }
203 if (i == 5)
204 {
206 }
207 Vector2 vector4 = vector2 + Vector2.UnitX * (45f * ((float)i - 1.5f));
209 if (i == 0)
210 {
211 num = 3;
212 }
213 if (i == 3)
214 {
215 num = 0;
216 }
217 switch (num)
218 {
219 case 0:
220 case 1:
221 vector4 = vector2 +
new Vector2((45f + (
float)(drawToolAllowActuators ? 15 : 0)) * (float)(2 - num), 0f) *
_lineOpacity;
222 break;
223 case 2:
224 case 3:
225 vector4 = vector2 +
new Vector2((0f - (45f + (
float)(drawToolAllowActuators ? 15 : 0))) * (float)(num - 1), 0f) *
_lineOpacity;
226 break;
227 case 5:
229 break;
230 case 4:
231 flag2 = false;
233 break;
234 }
235 bool flag3 = false;
237 {
239 }
240 if (flag)
241 {
242 flag3 = false;
243 }
244 if (flag3)
245 {
246 flag = true;
247 }
250 switch (i)
251 {
252 case 0:
253 case 1:
254 case 2:
255 case 3:
256 texture2D = TextureAssets.WireUi[2 +
i].Value;
257 break;
258 case 4:
259 texture2D = TextureAssets.WireUi[
Settings.ToolMode.HasFlag(
Settings.MultiToolMode.Cutter) ? 7 : 6].Value;
260 break;
261 case 5:
262 texture2D = TextureAssets.WireUi[10].Value;
263 break;
264 }
267 if (!flag2 && i != 4)
268 {
269 if (flag3)
270 {
271 color2 =
new Color(100, 100, 100);
272 color2 =
new Color(120, 120, 120);
273 color =
new Color(200, 200, 200);
274 }
275 else
276 {
277 color2 =
new Color(150, 150, 150);
278 color2 =
new Color(80, 80, 80);
279 color =
new Color(100, 100, 100);
280 }
281 }
282 Utils.CenteredRectangle(vector4,
new Vector2(40f));
283 if (flag3)
284 {
285 if (Main.mouseLeft && Main.mouseLeftRelease)
286 {
287 switch (i)
288 {
289 case 0:
290 Settings.ToolMode ^=
Settings.MultiToolMode.Red;
291 break;
292 case 1:
293 Settings.ToolMode ^=
Settings.MultiToolMode.Green;
294 break;
295 case 2:
296 Settings.ToolMode ^=
Settings.MultiToolMode.Blue;
297 break;
298 case 3:
299 Settings.ToolMode ^=
Settings.MultiToolMode.Yellow;
300 break;
301 case 4:
302 Settings.ToolMode ^=
Settings.MultiToolMode.Cutter;
303 break;
304 case 5:
305 Settings.ToolMode ^=
Settings.MultiToolMode.Actuator;
306 break;
307 }
308 }
309 if (!Main.mouseLeft || Main.player[Main.myPlayer].mouseInterface)
310 {
311 Main.player[Main.myPlayer].mouseInterface = true;
312 }
314 }
317 }
318 if (Main.mouseLeft && Main.mouseLeftRelease && !flag)
319 {
321 }
322 }
void Draw(Texture2D texture, Vector2 position, Color color)
static float Dot(Vector2 value1, Vector2 value2)
static float Distance(Vector2 value1, Vector2 value2)