Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
AM_ExpandArea.cs
Go to the documentation of this file.
2{
3 public Area area;
4
5 public bool shrink;
6
7 public override bool IsBuildMode => true;
8
9 public override string textHintTitle => area.Name;
10
11 public override string idSound => null;
12
14
15 public override void OnUpdateCursor()
16 {
18 }
19
20 public void Activate(Area a, bool _shrink = false)
21 {
22 area = a;
23 shrink = _shrink;
24 Activate();
25 }
26
27 public override HitResult HitTest(Point point, Point start)
28 {
29 if (shrink)
30 {
31 if (area.points.Count <= 1)
32 {
33 return HitResult.Invalid;
34 }
35 if (point.area == area)
36 {
37 return HitResult.Valid;
38 }
39 if (point.area != null)
40 {
41 return HitResult.Invalid;
42 }
43 return base.HitTest(point, start);
44 }
45 HitResult hitResult = EClass._map.rooms.GetHitResult(point, start);
46 if (hitResult != 0)
47 {
48 return hitResult;
49 }
50 return base.HitTest(point, start);
51 }
52
53 public override void OnSelectStart(Point point)
54 {
55 }
56
57 public override void OnProcessTiles(Point point, int dir)
58 {
59 if (shrink)
60 {
61 area.RemovePoint(point);
62 SE.Trash();
63 }
64 else
65 {
66 area.AddPoint(point.Copy());
67 EClass.Sound.Play("build_area");
68 }
69 }
70
71 public override void OnDeactivate()
72 {
73 area = null;
74 if ((bool)BuildMenu.Instance)
75 {
77 }
78 }
79
80 public override void OnCancel()
81 {
83 }
84}
AreaHighlightMode
HitResult
Definition: HitResult.cs:2
override void OnSelectStart(Point point)
override string idSound
override void OnProcessTiles(Point point, int dir)
override void OnUpdateCursor()
override string textHintTitle
Definition: AM_ExpandArea.cs:9
override bool IsBuildMode
Definition: AM_ExpandArea.cs:7
override HitResult HitTest(Point point, Point start)
override void OnDeactivate()
override AreaHighlightMode AreaHihlight
override void OnCancel()
void Activate(Area a, bool _shrink=false)
static AM_EditArea EditArea
Definition: ActionMode.cs:53
void Activate(bool toggle=true, bool forceActivate=false)
Definition: ActionMode.cs:339
void SetCursorOnMap(CursorInfo cursor)
Definition: ActionMode.cs:565
Definition: Area.cs:4
void AddPoint(Point point, bool onLoad=false)
Definition: Area.cs:27
void RemovePoint(Point point)
Definition: Area.cs:36
virtual string Name
Definition: BaseArea.cs:37
PointList points
Definition: BaseArea.cs:26
static BuildMenu Instance
Definition: BuildMenu.cs:77
void Unselect()
Definition: BuildMenu.cs:441
static CursorInfo Build
Definition: CursorSystem.cs:70
Definition: EClass.cs:5
static Map _map
Definition: EClass.cs:18
static SoundManager Sound
Definition: EClass.cs:46
RoomManager rooms
Definition: Map.cs:31
Definition: Point.cs:9
Point Copy()
Definition: Point.cs:467
Area area
Definition: Point.cs:73
HitResult GetHitResult(Point point, Point start)
Definition: RoomManager.cs:126