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
VirtualDevice.cs
Go to the documentation of this file.
1using System;
3using InControl;
4using UnityEngine;
5
7{
8 // Token: 0x02000002 RID: 2
10 {
11 // Token: 0x06000001 RID: 1 RVA: 0x00002050 File Offset: 0x00000250
13 {
14 if (!true)
15 {
16 }
17 base..ctor("Virtual Controller");
18 InputControl inputControl = base.AddControl(InputControlType.LeftStickLeft, "Left Stick Left");
19 InputControl inputControl2 = base.AddControl(InputControlType.LeftStickRight, "Left Stick Right");
20 InputControl inputControl3 = base.AddControl(InputControlType.LeftStickUp, "Left Stick Up");
21 InputControl inputControl4 = base.AddControl(InputControlType.LeftStickDown, "Left Stick Down");
22 InputControl inputControl5 = base.AddControl(InputControlType.RightStickLeft, "Right Stick Left");
23 InputControl inputControl6 = base.AddControl(InputControlType.RightStickRight, "Right Stick Right");
24 InputControl inputControl7 = base.AddControl(InputControlType.RightStickUp, "Right Stick Up");
25 InputControl inputControl8 = base.AddControl(InputControlType.RightStickDown, "Right Stick Down");
26 InputControl inputControl9 = base.AddControl(InputControlType.Action1, "A");
27 InputControl inputControl10 = base.AddControl(InputControlType.Action2, "B");
28 InputControl inputControl11 = base.AddControl(InputControlType.Action3, "X");
29 InputControl inputControl12 = base.AddControl(InputControlType.Action4, "Y");
30 }
31
32 // Token: 0x06000002 RID: 2 RVA: 0x00002114 File Offset: 0x00000314
33 public override void Update(ulong updateTick, float deltaTime)
34 {
35 Vector2 vectorFromKeyboard = this.GetVectorFromKeyboard(deltaTime, true);
36 Vector2 vectorFromMouse = this.GetVectorFromMouse(deltaTime, true);
37 long num = 0L;
38 bool key = Input.GetKey(KeyCode.Space);
39 base.UpdateWithState(InputControlType.Action1, num != 0L, updateTick, deltaTime);
40 bool key2 = Input.GetKey(KeyCode.S);
41 base.UpdateWithState(InputControlType.Action2, num != 0L, updateTick, deltaTime);
42 bool key3 = Input.GetKey(KeyCode.D);
43 base.UpdateWithState(InputControlType.Action3, num != 0L, updateTick, deltaTime);
44 bool key4 = Input.GetKey(KeyCode.F);
45 base.UpdateWithState(InputControlType.Action4, num != 0L, updateTick, deltaTime);
46 }
47
48 // Token: 0x06000003 RID: 3 RVA: 0x00002184 File Offset: 0x00000384
49 private Vector2 GetVectorFromKeyboard(float deltaTime, bool smoothed)
50 {
51 /*
52An exception occurred when decompiling this method (06000003)
53
54ICSharpCode.Decompiler.DecompilerException: Error decompiling UnityEngine.Vector2 VirtualDeviceExample.VirtualDevice::GetVectorFromKeyboard(System.Single,System.Boolean)
55
56 ---> System.Exception: Basic block has to end with unconditional control flow.
57{
58 Block_0:
59 stloc:float32(var_0_06, ldfld:float32(VirtualDevice::kx, ldloc:VirtualDevice(this)))
60 stloc:bool(var_1_11, call:bool(Input::GetKey, ldc.i4:KeyCode(276)))
61 stloc:bool(var_2_1C, call:bool(Input::GetKey, ldc.i4:KeyCode(275)))
62 stloc:float32(var_4_23, ldfld:float32(VirtualDevice::ky, ldloc:VirtualDevice(this)))
63 stloc:bool(var_5_2F, call:bool(Input::GetKey, ldc.i4:KeyCode(273)))
64 stloc:bool(var_6_3B, call:bool(Input::GetKey, ldc.i4:KeyCode(274)))
65 stloc:bool(var_8_47, call:bool(Input::GetKey, ldc.i4:KeyCode(276)))
66 stloc:bool(var_9_53, call:bool(Input::GetKey, ldc.i4:KeyCode(275)))
67 stloc:bool(var_10_5F, call:bool(Input::GetKey, ldc.i4:KeyCode(273)))
68 stloc:bool(var_11_6B, call:bool(Input::GetKey, ldc.i4:KeyCode(274)))
69 stloc:float32(var_12_73, ldfld:float32(VirtualDevice::kx, ldloc:VirtualDevice(this)))
70}
71
72 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
73 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
74 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
75 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
76 --- End of inner exception stack trace ---
77 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
78 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
79*/;
80 }
81
82 // Token: 0x06000004 RID: 4 RVA: 0x00002208 File Offset: 0x00000408
83 private static float GetXFromKeyboard()
84 {
85 /*
86An exception occurred when decompiling this method (06000004)
87
88ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Single VirtualDeviceExample.VirtualDevice::GetXFromKeyboard()
89
90 ---> System.Exception: Basic block has to end with unconditional control flow.
91{
92 Block_0:
93 stloc:bool(var_0_0A, call:bool(Input::GetKey, ldc.i4:KeyCode(276)))
94 stloc:bool(var_1_15, call:bool(Input::GetKey, ldc.i4:KeyCode(275)))
95}
96
97 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
98 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
99 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
100 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
101 --- End of inner exception stack trace ---
102 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
103 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
104*/;
105 }
106
107 // Token: 0x06000005 RID: 5 RVA: 0x0000222C File Offset: 0x0000042C
108 private static float GetYFromKeyboard()
109 {
110 /*
111An exception occurred when decompiling this method (06000005)
112
113ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Single VirtualDeviceExample.VirtualDevice::GetYFromKeyboard()
114
115 ---> System.Exception: Basic block has to end with unconditional control flow.
116{
117 Block_0:
118 stloc:bool(var_0_0A, call:bool(Input::GetKey, ldc.i4:KeyCode(273)))
119 stloc:bool(var_1_15, call:bool(Input::GetKey, ldc.i4:KeyCode(274)))
120}
121
122 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
123 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
124 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
125 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
126 --- End of inner exception stack trace ---
127 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
128 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
129*/;
130 }
131
132 // Token: 0x06000006 RID: 6 RVA: 0x00002250 File Offset: 0x00000450
133 private Vector2 GetVectorFromMouse(float deltaTime, bool smoothed)
134 {
135 /*
136An exception occurred when decompiling this method (06000006)
137
138ICSharpCode.Decompiler.DecompilerException: Error decompiling UnityEngine.Vector2 VirtualDeviceExample.VirtualDevice::GetVectorFromMouse(System.Single,System.Boolean)
139
140 ---> System.Exception: Basic block has to end with unconditional control flow.
141{
142 Block_0:
143 stloc:float32(var_0_06, ldfld:float32(VirtualDevice::mx, ldloc:VirtualDevice(this)))
144 stloc:float32(var_1_11, call:float32(Input::GetAxisRaw, ldstr:string("mouse x")))
145 stloc:float32(var_3_18, ldfld:float32(VirtualDevice::my, ldloc:VirtualDevice(this)))
146 stloc:float32(var_4_23, call:float32(Input::GetAxisRaw, ldstr:string("mouse y")))
147 stloc:float32(var_7_2F, call:float32(Input::GetAxisRaw, ldstr:string("mouse y")))
148 stloc:float32(var_8_37, ldfld:float32(VirtualDevice::mx, ldloc:VirtualDevice(this)))
149}
150
151 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
152 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
153 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
154 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
155 --- End of inner exception stack trace ---
156 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
157 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
158*/;
159 }
160
161 // Token: 0x06000007 RID: 7 RVA: 0x00002295 File Offset: 0x00000495
162 private static float ApplySmoothing(float lastValue, float thisValue, float deltaTime, float sensitivity)
163 {
164 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
165 }
166
167 // Token: 0x04000001 RID: 1
168 private const float Sensitivity = 0.1f;
169
170 // Token: 0x04000002 RID: 2
171 private const float MouseScale = 0.05f;
172
173 // Token: 0x04000003 RID: 3
174 private float kx;
175
176 // Token: 0x04000004 RID: 4
177 private float ky;
178
179 // Token: 0x04000005 RID: 5
180 private float mx;
181
182 // Token: 0x04000006 RID: 6
183 private float my;
184 }
185}
class f__AnonymousType0<< Count > j__TPar
static bool GetKey(KeyCode key)
Definition Input.cs:85
Vector2 GetVectorFromKeyboard(float deltaTime, bool smoothed)
override void Update(ulong updateTick, float deltaTime)
Vector2 GetVectorFromMouse(float deltaTime, bool smoothed)
static float ApplySmoothing(float lastValue, float thisValue, float deltaTime, float sensitivity)