terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches
CursorManager.cs
Go to the documentation of this file.
1using System;
5using UnityEngine;
6
7// Token: 0x02000018 RID: 24
8public class CursorManager
9{
10 // Token: 0x0600006A RID: 106 RVA: 0x000021DB File Offset: 0x000003DB
11 public static CursorManager Create()
12 {
13 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
14 }
15
16 // Token: 0x0600006B RID: 107 RVA: 0x00002B48 File Offset: 0x00000D48
18 {
19 }
20
21 // Token: 0x0600006C RID: 108 RVA: 0x00002B5C File Offset: 0x00000D5C
22 public bool IsCursorActive()
23 {
24 if (this.ActivateMouseMode)
25 {
26 long num = 0L;
27 bool flag = this.IsMouseActive((int)num);
28 return true;
29 }
30 int touchCount = Input.touchCount;
31 return this.IsMouseActive(1);
32 }
33
34 // Token: 0x0600006D RID: 109 RVA: 0x00002B8C File Offset: 0x00000D8C
35 public int GetNumCursors()
36 {
37 return this._cursors._size;
38 }
39
40 // Token: 0x0600006E RID: 110 RVA: 0x00002BA4 File Offset: 0x00000DA4
41 public global::Cursor GetCursor(int index)
42 {
43 /*
44An exception occurred when decompiling this method (0600006E)
45
46ICSharpCode.Decompiler.DecompilerException: Error decompiling Cursor CursorManager::GetCursor(System.Int32)
47
48 ---> System.Exception: Basic block has to end with unconditional control flow.
49{
50 Block_0:
51 stloc:class [mscorlib]System.Collections.Generic.List`1<class Cursor>(var_0_06, ldfld:class [mscorlib]System.Collections.Generic.List`1<class Cursor>(CursorManager::_cursors, ldloc:CursorManager(this)))
52}
53
54 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
55 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
56 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
57 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
58 --- End of inner exception stack trace ---
59 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
60 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
61*/;
62 }
63
64 // Token: 0x0600006F RID: 111 RVA: 0x00002BB8 File Offset: 0x00000DB8
65 public void UpdateCursors()
66 {
67 this.UpdateCursorList();
68 if (!true)
69 {
70 }
71 if (true)
72 {
73 if (!true)
74 {
75 }
77 }
79 if (true)
80 {
81 while (!true)
82 {
83 }
84 return;
85 }
86 for (;;)
87 {
88 }
89 if (!true)
90 {
91 }
92 if (!false)
93 {
94 return;
95 }
96 throw new OutOfMemoryException();
97 }
98
99 // Token: 0x06000070 RID: 112 RVA: 0x00002C3C File Offset: 0x00000E3C
100 private bool IsMouseActive(int index)
101 {
102 bool flag = this.updatingEMUMouseTouches;
103 if (!true)
104 {
105 }
107 bool flag2 = this.updatingEMUMouseTouches;
108 if (!true)
109 {
110 }
111 bool mouseButton = XNAUnityRunner.GetMouseButton(index, index != 0);
112 bool flag3 = this.updatingEMUMouseTouches;
113 if (!true)
114 {
115 }
117 return true;
118 }
119
120 // Token: 0x06000071 RID: 113 RVA: 0x00002C94 File Offset: 0x00000E94
122 {
123 while (!this.ActivateMouseMode)
124 {
125 }
126 long num;
127 if (this.GetTouchId(touchIndex) != 0)
128 {
129 num = 0L;
130 }
131 bool flag = this.updatingEMUMouseTouches;
132 if (num == 0L)
133 {
134 }
136 long num2 = 0L;
137 bool flag2 = this.updatingEMUMouseTouches;
138 if (num2 == 0L)
139 {
140 }
141 bool mouseButton = XNAUnityRunner.GetMouseButton(0, touchIndex != 0);
142 long num3 = 0L;
143 bool flag3 = this.updatingEMUMouseTouches;
144 if (num3 == 0L)
145 {
146 }
148 }
149
150 // Token: 0x06000072 RID: 114 RVA: 0x00002CF4 File Offset: 0x00000EF4
151 public int GetRealTouchCount()
152 {
153 return Input.touchCount;
154 }
155
156 // Token: 0x06000073 RID: 115 RVA: 0x00002D08 File Offset: 0x00000F08
157 public int GetTouchCount()
158 {
159 do
160 {
161 bool flag = this.emuTouchFromMouse;
162 if (flag)
163 {
164 if (!flag)
165 {
166 }
167 if (flag)
168 {
169 goto IL_006C;
170 }
171 long num = 0L;
172 bool flag2 = this.IsMouseActive((int)num);
173 if (!this.mouseActive)
174 {
175 int num2 = 1;
176 this.mouseActive = num2 != 0;
177 }
178 int touchCount = this._touchCount;
179 this._touchCount = touchCount;
180 }
181 }
182 while (this.ActivateMouseMode && !this.updatingEMUMouseTouches);
183 return Input.touchCount;
184 IL_006C:
185 return this._touchCount;
186 }
187
188 // Token: 0x06000074 RID: 116 RVA: 0x00002D88 File Offset: 0x00000F88
189 private int GetTouchId(int touchIndex)
190 {
191 while (!this.emuTouchFromMouse)
192 {
194 {
195 return Input.touches.fingerId;
196 }
197 }
198 int touchCount = this._touchCount;
199 return touchIndex;
200 }
201
202 // Token: 0x06000075 RID: 117 RVA: 0x00002DCC File Offset: 0x00000FCC
203 private int GetTouchIndex(int touchId)
204 {
205 bool flag;
206 while (this.emuTouchFromMouse)
207 {
208 flag = this.fakeMouseActive;
209 if (flag)
210 {
211 bool flag2 = this.mouseActive;
212 break;
213 }
214 }
215 if (flag)
216 {
217 while (!flag)
218 {
219 }
220 }
221 Touch[] touches = Input.touches;
222 float y = touches.m_PositionDelta.y;
223 return touches.fingerId;
224 }
225
226 // Token: 0x17000021 RID: 33
227 // (get) Token: 0x06000076 RID: 118 RVA: 0x00002E24 File Offset: 0x00001024
229 {
230 get
231 {
232 if (this.emuMouseModeActive)
233 {
234 bool flag = this.updatingEMUMouseTouches;
235 return;
236 }
237 }
238 }
239
240 // Token: 0x06000077 RID: 119 RVA: 0x00002E44 File Offset: 0x00001044
241 public bool GetEMUMouseButton(int index)
242 {
243 /*
244An exception occurred when decompiling this method (06000077)
245
246ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean CursorManager::GetEMUMouseButton(System.Int32)
247
248 ---> System.Exception: Basic block has to end with unconditional control flow.
249{
250 IL_0005:
251 stloc:int32(var_1_10, ldfld:int32(List`1::_size, ldfld:class [mscorlib]System.Collections.Generic.List`1<valuetype CursorManager/TouchInput>[exp:List`1](CursorManager::EMUMouseTouches, ldloc:CursorManager(this))))
252}
253
254 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
255 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
256 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
257 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
258 --- End of inner exception stack trace ---
259 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
260 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
261*/;
262 }
263
264 // Token: 0x06000078 RID: 120 RVA: 0x00002E64 File Offset: 0x00001064
266 {
267 /*
268An exception occurred when decompiling this method (06000078)
269
270ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean CursorManager::GetEMUMouseButtonDown(System.Int32)
271
272 ---> System.Exception: Basic block has to end with unconditional control flow.
273{
274 IL_0012:
275 stloc:int32(var_1_1D, ldfld:int32(List`1::_size, ldfld:class [mscorlib]System.Collections.Generic.List`1<valuetype CursorManager/TouchInput>[exp:List`1](CursorManager::EMUMouseTouches, ldloc:CursorManager(this))))
276}
277
278 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
279 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
280 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
281 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
282 --- End of inner exception stack trace ---
283 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
284 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
285*/;
286 }
287
288 // Token: 0x06000079 RID: 121 RVA: 0x00002E90 File Offset: 0x00001090
289 public bool GetEMUMouseButtonUp(int index)
290 {
291 /*
292An exception occurred when decompiling this method (06000079)
293
294ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean CursorManager::GetEMUMouseButtonUp(System.Int32)
295
296 ---> System.Exception: Basic block has to end with unconditional control flow.
297{
298 IL_0005:
299 stloc:int32(var_1_10, ldfld:int32(List`1::_size, ldfld:class [mscorlib]System.Collections.Generic.List`1<valuetype CursorManager/TouchInput>[exp:List`1](CursorManager::PreviousEMUMouseTouches, ldloc:CursorManager(this))))
300 stloc:int32(var_2_1C, ldfld:int32(List`1::_size, ldfld:class [mscorlib]System.Collections.Generic.List`1<valuetype CursorManager/TouchInput>[exp:List`1](CursorManager::EMUMouseTouches, ldloc:CursorManager(this))))
301}
302
303 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
304 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
305 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
306 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
307 --- End of inner exception stack trace ---
308 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
309 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
310*/;
311 }
312
313 // Token: 0x0600007A RID: 122 RVA: 0x00002EBC File Offset: 0x000010BC
315 {
316 do
317 {
318 if (this.emuTouchFromMouse)
319 {
320 int touchId = this.GetTouchId(touchIndex);
321 bool flag = this.updatingEMUMouseTouches;
323 }
324 }
325 while (this.ActivateMouseMode && !this.updatingEMUMouseTouches);
326 Touch[] touches = Input.touches;
327 return touches.phase;
328 }
329
330 // Token: 0x0600007B RID: 123 RVA: 0x00002FDC File Offset: 0x000011DC
332 {
333 if (!this.ActivateMouseMode && !this.emuTouchFromMouse)
334 {
336 return;
337 }
338 }
339
340 // Token: 0x0600007C RID: 124 RVA: 0x00003008 File Offset: 0x00001208
342 {
343 /*
344An exception occurred when decompiling this method (0600007C)
345
346ICSharpCode.Decompiler.DecompilerException: Error decompiling UnityEngine.Vector2 CursorManager::GetTouchPosition(System.Int32)
347
348 ---> System.Exception: Basic block has to end with unconditional control flow.
349{
350 IL_0038:
351 stloc:valuetype [UnityEngine.InputLegacyModule]UnityEngine.Touch[](var_3_3D, callgetter:valuetype [UnityEngine.InputLegacyModule]UnityEngine.Touch[](Input::get_touches))
352 stloc:Vector2(var_5_48, callgetter:Vector2(Touch::get_position, ldloc:valuetype [UnityEngine.InputLegacyModule]UnityEngine.Touch[][exp:valuetype [UnityEngine.InputLegacyModule]UnityEngine.Touch&](var_3_3D)))
353 stloc:Vector3(var_7_52, callgetter:Vector3(XNAUnityRunner::get_MousePositionReal))
354}
355
356 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
357 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
358 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
359 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
360 --- End of inner exception stack trace ---
361 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
362 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
363*/;
364 }
365
366 // Token: 0x0600007D RID: 125 RVA: 0x00003068 File Offset: 0x00001268
368 {
369 /*
370An exception occurred when decompiling this method (0600007D)
371
372ICSharpCode.Decompiler.DecompilerException: Error decompiling UnityEngine.Vector2 CursorManager::GetTouchScroll(System.Int32)
373
374 ---> System.Exception: Basic block has to end with unconditional control flow.
375{
376 Block_0:
377 stloc:Vector2(var_1_0F, callgetter:Vector2(Input::get_mouseScrollDelta))
378}
379
380 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
381 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
382 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
383 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
384 --- End of inner exception stack trace ---
385 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
386 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
387*/;
388 }
389
390 // Token: 0x0600007E RID: 126 RVA: 0x00003084 File Offset: 0x00001284
391 private bool ShouldIgnoreForWorld(Vector2 position)
392 {
393 if (!true)
394 {
395 }
397 if (!true)
398 {
399 }
400 if (!true)
401 {
402 }
404 {
405 }
406 int screenHeight = XNAUnityRunner.ScreenHeight;
407 return true;
408 }
409
410 // Token: 0x0600007F RID: 127 RVA: 0x000021DB File Offset: 0x000003DB
412 {
413 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
414 }
415
416 // Token: 0x06000080 RID: 128 RVA: 0x000021DB File Offset: 0x000003DB
417 private void UpdateCursorList()
418 {
419 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
420 }
421
422 // Token: 0x06000081 RID: 129 RVA: 0x000030BC File Offset: 0x000012BC
424 {
425 int size = this._cursorsInpacts._size;
426 if (this._cursorsInpacts == null)
427 {
428 }
429 int size2 = this._cursorsInpacts._size;
430 }
431
432 // Token: 0x0400004C RID: 76
433 public static CursorManager Instance;
434
435 // Token: 0x0400004D RID: 77
436 private int _touchCount;
437
438 // Token: 0x0400004E RID: 78
439 public bool ActivateMouseMode;
440
441 // Token: 0x0400004F RID: 79
442 private bool emuTouchFromMouse;
443
444 // Token: 0x04000050 RID: 80
445 private bool fakeMouseActive;
446
447 // Token: 0x04000051 RID: 81
448 private bool mouseActive;
449
450 // Token: 0x04000052 RID: 82
452
453 // Token: 0x04000053 RID: 83
455
456 // Token: 0x04000054 RID: 84
458
459 // Token: 0x04000055 RID: 85
460 private bool emuMouseModeActive;
461
462 // Token: 0x04000056 RID: 86
464
465 // Token: 0x04000057 RID: 87
467
468 // Token: 0x04000058 RID: 88
470
471 // Token: 0x04000059 RID: 89
473
474 // Token: 0x0400005A RID: 90
476
477 // Token: 0x0400005B RID: 91
479
480 // Token: 0x0400005C RID: 92
482
483 // Token: 0x0400005D RID: 93
485
486 // Token: 0x02000019 RID: 25
487 public struct TouchInput
488 {
489 // Token: 0x06000082 RID: 130 RVA: 0x000030EC File Offset: 0x000012EC
490 public TouchInput(int id, Vector2 position, TouchPhase phase)
491 {
492 this.TouchId = id;
493 this.TouchPhase = position;
494 }
495
496 // Token: 0x0400005E RID: 94
497 public readonly int TouchId;
498
499 // Token: 0x0400005F RID: 95
501
502 // Token: 0x04000060 RID: 96
504 }
505
506 // Token: 0x0200001A RID: 26
507 private struct CursorFirstContact
508 {
509 // Token: 0x04000061 RID: 97
511
512 // Token: 0x04000062 RID: 98
514 }
515}
class f__AnonymousType0<< Count > j__TPar
static void Resort()
bool updatingSwitchTouches
TouchPhase GetTouchPhase(int touchIndex)
Vector2 GetTouchPosition(int touchIndex)
bool ShouldIgnoreTouch(int touchIndex)
List< CursorManager.TouchInput > PreviousEMUMouseTouches
bool GetEMUMouseButton(int index)
List< CursorManager.TouchInput > EMUMouseTouches
List< CursorManager.CursorFirstContact > _cursorsInpacts
void DrawCursorOverlay(SpriteBatch batch)
bool IsMouseActive(int index)
void UpdateCursors()
bool updatingEMUMouseTouches
void UpdateCursorList()
bool GetEMUMouseButtonUp(int index)
bool IsCursorActive()
bool ShouldIgnoreForWorld(Vector2 position)
int GetRealTouchCount()
Vector2 GetTouchScroll(int touchIndex)
bool GetEMUMouseButtonDown(int index)
int GetTouchIndex(int touchId)
void UpdateMouseEMUTouches()
int GetTouchId(int touchIndex)
static CursorManager Create()
Vector3 emuMouseLastHWMousePosition
List< CursorInputLayer > Layers
Vector2 EmuMousePosition
List< CursorManager.TouchInput > UserSwitchTouches
static CursorManager Instance
List< global::Cursor > _cursors
Vector2 fakeMousePosition
bool IsTouchScrollOnly(int touchIndex)
global::Cursor GetCursor(int index)
static Touch[] touches
Definition Input.cs:232
static int touchCount
Definition Input.cs:199
static XNAUnityRunner.ForcedInputMode PrimaryInputMode
static int ScreenWidth
static bool GetMouseButtonUp(int index, bool ignoreEditor=false)
static bool GetMouseButton(int index, bool ignoreEditor=false)
static bool GetMouseButtonDown(int index, bool ignoreEditor=false)
static int ScreenHeight
readonly TouchPhase TouchPhase
readonly Vector2 TouchPosition
TouchInput(int id, Vector2 position, TouchPhase phase)
TouchType type
Definition Touch.cs:113
Vector2 m_PositionDelta
Definition Touch.cs:242
TouchPhase phase
Definition Touch.cs:47