Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
AM_Select.cs
Go to the documentation of this file.
1using System;
2using UnityEngine;
3
5{
6 public override string idSound => null;
7
8 public bool ForceInnerBlockMode()
9 {
10 if (!base.IsActive)
11 {
12 return false;
13 }
14 foreach (InspectGroup group in base.Summary.groups)
15 {
16 if (group is InspectGroupBlock)
17 {
18 return true;
19 }
20 }
21 return false;
22 }
23
24 public override void OnUpdateInput()
25 {
28 {
29 Deactivate();
30 }
31 else if (!Input.GetMouseButton(0) && !EClass.ui.isPointerOverUI)
32 {
33 if (base.Summary.groups.Count > 0 && base.Summary.groups.Count != 1)
34 {
35 UIContextMenu uIContextMenu = EClass.ui.CreateContextMenu();
36 uIContextMenu.onUpdate = RenderHighlights;
37 uIContextMenu.Show();
38 }
39 Deactivate();
40 }
41 }
42
43 public void RenderHighlights()
44 {
45 }
46
47 public override void OnRefreshSummary(Point point, HitResult result, HitSummary summary)
48 {
49 if (!point.IsSeen)
50 {
51 return;
52 }
53 foreach (IInspect item in point.ListInspectorTargets())
54 {
55 if (item is Area || !item.CanInspect)
56 {
57 continue;
58 }
59 Type type = item.GetType();
60 InspectGroup inspectGroup = null;
61 foreach (InspectGroup group in summary.groups)
62 {
63 if (group.type.Equals(type))
64 {
65 inspectGroup = group;
66 break;
67 }
68 }
69 if (inspectGroup == null)
70 {
71 inspectGroup = InspectGroup.Create(item);
72 summary.groups.Add(inspectGroup);
73 }
74 else if (!inspectGroup.Contains(item))
75 {
76 inspectGroup.targets.Add(item);
77 }
78 summary.targets.Add(item);
79 }
80 }
81
82 public override ref string SetMouseInfo(ref string s)
83 {
84 foreach (InspectGroup group in base.Summary.groups)
85 {
86 s = s + group.GetName() + "\n";
87 }
88 return ref base.SetMouseInfo(ref s);
89 }
90}
HitResult
Definition: HitResult.cs:2
override void OnUpdateInput()
Definition: AM_Select.cs:24
void RenderHighlights()
Definition: AM_Select.cs:43
override string idSound
Definition: AM_Select.cs:6
override void OnRefreshSummary(Point point, HitResult result, HitSummary summary)
Definition: AM_Select.cs:47
bool ForceInnerBlockMode()
Definition: AM_Select.cs:8
override ref string SetMouseInfo(ref string s)
Definition: AM_Select.cs:82
void Deactivate()
Definition: ActionMode.cs:529
Definition: Area.cs:4
Definition: EClass.cs:5
static UI ui
Definition: EClass.cs:16
Definition: EInput.cs:8
static ButtonState rightMouse
Definition: EInput.cs:351
string GetName()
Definition: InspectGroup.cs:94
Item Add(string text, string idSprite, Action action, bool sound=false, int priority=0, bool auto=false)
static InspectGroup Create(IInspect t)
Definition: InspectGroup.cs:37
Definition: Point.cs:9
bool IsSeen
Definition: Point.cs:318
void Show(UIItem i)