Elin Modding Docs Doc
Loading...
Searching...
No Matches
AM_FlagCell.cs
1using System;
2
3// Token: 0x0200014D RID: 333
5{
6 // Token: 0x1700025A RID: 602
7 // (get) Token: 0x060009B3 RID: 2483 RVA: 0x0003B335 File Offset: 0x00039535
8 public override bool IsBuildMode
9 {
10 get
11 {
12 return true;
13 }
14 }
15
16 // Token: 0x1700025B RID: 603
17 // (get) Token: 0x060009B4 RID: 2484 RVA: 0x0003B338 File Offset: 0x00039538
18 public override bool UseSubMenu
19 {
20 get
21 {
22 return true;
23 }
24 }
25
26 // Token: 0x1700025C RID: 604
27 // (get) Token: 0x060009B5 RID: 2485 RVA: 0x0003B33B File Offset: 0x0003953B
28 public override bool SubMenuAsGroup
29 {
30 get
31 {
32 return true;
33 }
34 }
35
36 // Token: 0x1700025D RID: 605
37 // (get) Token: 0x060009B6 RID: 2486 RVA: 0x0003B33E File Offset: 0x0003953E
38 public override int SubMenuModeIndex
39 {
40 get
41 {
42 return (int)this.mode;
43 }
44 }
45
46 // Token: 0x1700025E RID: 606
47 // (get) Token: 0x060009B7 RID: 2487 RVA: 0x0003B346 File Offset: 0x00039546
48 public override BaseTileSelector.SelectType selectType
49 {
50 get
51 {
52 if (this.mode != AM_FlagCell.Mode.flagWallPillar)
53 {
54 return BaseTileSelector.SelectType.Multiple;
55 }
56 return BaseTileSelector.SelectType.Single;
57 }
58 }
59
60 // Token: 0x060009B8 RID: 2488 RVA: 0x0003B354 File Offset: 0x00039554
61 public override HitResult HitTest(Point point, Point start)
62 {
63 switch (this.mode)
64 {
65 case AM_FlagCell.Mode.flagSnow:
66 if (start != null && start.cell.isClearSnow != point.cell.isClearSnow)
67 {
68 return HitResult.Default;
69 }
70 break;
71 case AM_FlagCell.Mode.flagFloat:
72 if (start != null && start.cell.isForceFloat != point.cell.isForceFloat)
73 {
74 return HitResult.Default;
75 }
76 break;
77 case AM_FlagCell.Mode.flagWallPillar:
78 if (!point.cell.HasWall)
79 {
80 return HitResult.Default;
81 }
82 break;
83 case AM_FlagCell.Mode.flagClear:
84 if (start != null && start.cell.isClearArea != point.cell.isClearArea)
85 {
86 return HitResult.Default;
87 }
88 break;
89 case AM_FlagCell.Mode.flagShadow:
90 if (point.Things.Count == 0)
91 {
92 return HitResult.Default;
93 }
94 break;
95 }
96 return HitResult.Valid;
97 }
98
99 // Token: 0x060009B9 RID: 2489 RVA: 0x0003B400 File Offset: 0x00039600
100 public override void OnProcessTiles(Point point, int dir)
101 {
102 switch (this.mode)
103 {
104 case AM_FlagCell.Mode.flagSnow:
105 point.cell.isClearSnow = !point.cell.isClearSnow;
106 break;
107 case AM_FlagCell.Mode.flagFloat:
108 point.cell.isForceFloat = !point.cell.isForceFloat;
109 break;
110 case AM_FlagCell.Mode.flagWallPillar:
111 point.cell.isToggleWallPillar = !point.cell.isToggleWallPillar;
112 break;
113 case AM_FlagCell.Mode.flagClear:
114 point.cell.isClearArea = !point.cell.isClearArea;
115 if (point.cell.isClearArea)
116 {
117 point.Things.ForeachReverse(delegate(Thing t)
118 {
119 t.Destroy();
120 });
121 }
122 break;
123 case AM_FlagCell.Mode.flagShadow:
124 point.Things.ForeachReverse(delegate(Thing t)
125 {
126 t.noShadow = !t.noShadow;
127 });
128 break;
129 }
130 point.RefreshNeighborTiles();
131 }
132
133 // Token: 0x060009BA RID: 2490 RVA: 0x0003B510 File Offset: 0x00039710
134 public override void OnClickSubMenu(int a)
135 {
136 this.mode = a.ToEnum<AM_FlagCell.Mode>();
137 base.tileSelector.start = null;
138 }
139
140 // Token: 0x060009BB RID: 2491 RVA: 0x0003B52C File Offset: 0x0003972C
141 public override string OnSetSubMenuButton(int a, UIButton b)
142 {
143 if (a >= 3 && !EClass.debug.enable)
144 {
145 return null;
146 }
147 if (a < 5)
148 {
149 return a.ToEnum<AM_FlagCell.Mode>().ToString();
150 }
151 return null;
152 }
153
154 // Token: 0x040008F4 RID: 2292
155 public AM_FlagCell.Mode mode;
156
157 // Token: 0x0200086B RID: 2155
158 public enum Mode
159 {
160 // Token: 0x040023FE RID: 9214
161 flagSnow,
162 // Token: 0x040023FF RID: 9215
163 flagFloat,
164 // Token: 0x04002400 RID: 9216
165 flagWallPillar,
166 // Token: 0x04002401 RID: 9217
167 flagClear,
168 // Token: 0x04002402 RID: 9218
169 flagShadow,
170 // Token: 0x04002403 RID: 9219
171 flagWall
172 }
173}
Definition Point.cs:11
Definition Thing.cs:10