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
ControlsButtonTagHandler.cs
Go to the documentation of this file.
1using System;
3using Controller;
8
9// Token: 0x020000F8 RID: 248
11{
12 // Token: 0x06000680 RID: 1664 RVA: 0x00014F30 File Offset: 0x00013130
13 public static bool MeasureInline(SpriteFont.CharacterSource text, int offset, int endOffset, Vector2 size)
14 {
15 }
16
17 // Token: 0x06000681 RID: 1665 RVA: 0x00014F48 File Offset: 0x00013148
18 private static int DrawButtonControl(SpriteBatch spriteBatch, Vector2 position, Color color, float scale, ControllerActionButton action, bool mesaureOnly = false)
19 {
20 /*
21An exception occurred when decompiling this method (06000681)
22
23ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 ControlsButtonTagHandler::DrawButtonControl(Microsoft.Xna.Framework.Graphics.SpriteBatch,Microsoft.Xna.Framework.Vector2,Microsoft.Xna.Framework.Graphics.Color,System.Single,Controller.ControllerActionButton,System.Boolean)
24
25 ---> System.Exception: Basic block has to end with unconditional control flow.
26{
27 IL_0066:
28 stloc:Axis(var_18_6C, ldfld:Axis(Entry::Axis0, ldloc:Entry(var_1)))
29 stloc:float32(var_19_74, ldfld:float32(Entry::Threshold, ldloc:Entry(var_1)))
30 stloc:AxisControl(var_20_7E, call:AxisControl(GUIControlsBanner::FromAxis, ldloc:Axis(var_18_6C), ldloc:float32(scale)))
31}
32
33 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
34 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
35 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
36 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
37 --- End of inner exception stack trace ---
38 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
39 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
40*/;
41 }
42
43 // Token: 0x06000682 RID: 1666 RVA: 0x00014FD4 File Offset: 0x000131D4
44 private static int DrawAxisControl(SpriteBatch spriteBatch, Vector2 position, Color color, float scale, ControllerActionVector action, bool mesasure = false)
45 {
46 /*
47An exception occurred when decompiling this method (06000682)
48
49ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 ControlsButtonTagHandler::DrawAxisControl(Microsoft.Xna.Framework.Graphics.SpriteBatch,Microsoft.Xna.Framework.Vector2,Microsoft.Xna.Framework.Graphics.Color,System.Single,Controller.ControllerActionVector,System.Boolean)
50
51 ---> System.Exception: Basic block has to end with unconditional control flow.
52{
53 IL_005C:
54 stloc:AxisControl(var_17_68, call:AxisControl(GUIControlsBanner::FromAxis, ldfld:Axis(Entry::Axis0, ldloc:Entry(var_1)), ldloc:float32(scale)))
55}
56
57 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
58 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
59 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
60 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
61 --- End of inner exception stack trace ---
62 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
63 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
64*/;
65 }
66
67 // Token: 0x06000683 RID: 1667 RVA: 0x0001504C File Offset: 0x0001324C
68 public static bool PrintInlineMapping(SpriteBatch spriteBatch, Vector2 position, Color color, float scale, SpriteFont.CharacterSource text, int offset, int endOffset, Vector2 size)
69 {
70 /*
71An exception occurred when decompiling this method (06000683)
72
73ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean ControlsButtonTagHandler::PrintInlineMapping(Microsoft.Xna.Framework.Graphics.SpriteBatch,Microsoft.Xna.Framework.Vector2,Microsoft.Xna.Framework.Graphics.Color,System.Single,Microsoft.Xna.Framework.Graphics.SpriteFont/CharacterSource,System.Int32,System.Int32,Microsoft.Xna.Framework.Vector2)
74
75 ---> System.Exception: Basic block has to end with unconditional control flow.
76{
77 Block_0:
78 stfld:string(CharacterSource::_string, ldloc:CharacterSource[exp:valuetype Microsoft.Xna.Framework.Graphics.SpriteFont/CharacterSource&](text), ldc.i4:int32[exp:string](0))
79}
80
81 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
82 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
83 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
84 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
85 --- End of inner exception stack trace ---
86 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
87 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
88*/;
89 }
90
91 // Token: 0x06000684 RID: 1668 RVA: 0x00015074 File Offset: 0x00013274
92 public static bool MeasureInlineMapping(SpriteFont.CharacterSource text, int offset, int endOffset, Vector2 size)
93 {
94 /*
95An exception occurred when decompiling this method (06000684)
96
97ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean ControlsButtonTagHandler::MeasureInlineMapping(Microsoft.Xna.Framework.Graphics.SpriteFont/CharacterSource,System.Int32,System.Int32,Microsoft.Xna.Framework.Vector2)
98
99 ---> System.Exception: Basic block has to end with unconditional control flow.
100{
101 IL_000B:
102 stfld:int32(int32::m_value, ldloc:int32[exp:int32&](offset), ldc.i4:int32(0))
103}
104
105 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
106 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
107 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
108 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
109 --- End of inner exception stack trace ---
110 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
111 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
112*/;
113 }
114
115 // Token: 0x06000685 RID: 1669 RVA: 0x000150A4 File Offset: 0x000132A4
116 public static bool PrintInline(SpriteBatch spriteBatch, Vector2 position, Color color, float scale, SpriteFont.CharacterSource text, int offset, int endOffset, Vector2 size)
117 {
118 }
119
120 // Token: 0x06000686 RID: 1670 RVA: 0x000150BC File Offset: 0x000132BC
121 public TextSnippet Parse(string text, [Optional] Color baseColor, [Optional] string options)
122 {
123 /*
124An exception occurred when decompiling this method (06000686)
125
126ICSharpCode.Decompiler.DecompilerException: Error decompiling Terraria.UI.Chat.TextSnippet ControlsButtonTagHandler::Parse(System.String,Microsoft.Xna.Framework.Graphics.Color,System.String)
127
128 ---> System.Exception: Basic block has to end with unconditional control flow.
129{
130 Block_0:
131 stloc:string(var_2_10, call:string(string::Concat, ldstr:string("[cb:"), ldloc:string(var_1), ldstr:string("]")))
132}
133
134 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
135 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
136 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
137 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
138 --- End of inner exception stack trace ---
139 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
140 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
141*/;
142 }
143
144 // Token: 0x06000687 RID: 1671 RVA: 0x000150DC File Offset: 0x000132DC
146 {
147 }
148
149 // Token: 0x020000F9 RID: 249
151 {
152 // Token: 0x06000688 RID: 1672 RVA: 0x000150F0 File Offset: 0x000132F0
154 : base("")
155 {
156 this._control = control;
157 if (!true)
158 {
159 }
160 this.Color = 1;
161 }
162
163 // Token: 0x06000689 RID: 1673 RVA: 0x0001511C File Offset: 0x0001331C
164 public static bool Draw(GUIControllerInputButton.LinkedControlType control, bool justCheckingString, [Out] Vector2 size, SpriteBatch spriteBatch, [Optional] Vector2 position, [Optional] Color color, float scale = 1f)
165 {
166 if (true && true)
167 {
168 if (!true)
169 {
170 }
171 if (!true)
172 {
173 }
174 }
176 return true;
177 }
178
179 // Token: 0x0600068A RID: 1674 RVA: 0x00015140 File Offset: 0x00013340
180 public override bool UniqueDraw(bool justCheckingString, [Out] Vector2 size, SpriteBatch spriteBatch, [Optional] Vector2 position, [Optional] Color color, float scale = 1f)
181 {
182 bool flag = ControlsButtonTagHandler.ControlsButtonSnippet.Draw(this._control, justCheckingString, size, spriteBatch, position, color, scale);
183 return true;
184 }
185
186 // Token: 0x0600068B RID: 1675 RVA: 0x000021DB File Offset: 0x000003DB
187 public override float GetStringLength(SpriteFont font)
188 {
189 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
190 }
191
192 // Token: 0x040004F5 RID: 1269
194 }
195
196 // Token: 0x020000FA RID: 250
197 public enum MappingType
198 {
199 // Token: 0x040004F7 RID: 1271
200 Movement,
201 // Token: 0x040004F8 RID: 1272
202 Aim,
203 // Token: 0x040004F9 RID: 1273
204 Fire,
205 // Token: 0x040004FA RID: 1274
206 Jump,
207 // Token: 0x040004FB RID: 1275
208 Interact,
209 // Token: 0x040004FC RID: 1276
211 // Token: 0x040004FD RID: 1277
213 // Token: 0x040004FE RID: 1278
215 // Token: 0x040004FF RID: 1279
217 // Token: 0x04000500 RID: 1280
219 // Token: 0x04000501 RID: 1281
221 // Token: 0x04000502 RID: 1282
223 // Token: 0x04000503 RID: 1283
224 CraftItem,
225 // Token: 0x04000504 RID: 1284
227 // Token: 0x04000505 RID: 1285
228 EquipItem,
229 // Token: 0x04000506 RID: 1286
230 Settings,
231 // Token: 0x04000507 RID: 1287
233 // Token: 0x04000508 RID: 1288
234 Count
235 }
236}
class f__AnonymousType0<< Count > j__TPar
static bool Draw(GUIControllerInputButton.LinkedControlType control, bool justCheckingString, [Out] Vector2 size, SpriteBatch spriteBatch, [Optional] Vector2 position, [Optional] Color color, float scale=1f)
ControlsButtonSnippet(GUIControllerInputButton.LinkedControlType control)
override bool UniqueDraw(bool justCheckingString, [Out] Vector2 size, SpriteBatch spriteBatch, [Optional] Vector2 position, [Optional] Color color, float scale=1f)
GUIControllerInputButton.LinkedControlType _control
static bool MeasureInlineMapping(SpriteFont.CharacterSource text, int offset, int endOffset, Vector2 size)
static bool PrintInline(SpriteBatch spriteBatch, Vector2 position, Color color, float scale, SpriteFont.CharacterSource text, int offset, int endOffset, Vector2 size)
static bool MeasureInline(SpriteFont.CharacterSource text, int offset, int endOffset, Vector2 size)
static bool PrintInlineMapping(SpriteBatch spriteBatch, Vector2 position, Color color, float scale, SpriteFont.CharacterSource text, int offset, int endOffset, Vector2 size)
static int DrawButtonControl(SpriteBatch spriteBatch, Vector2 position, Color color, float scale, ControllerActionButton action, bool mesaureOnly=false)
TextSnippet Parse(string text, [Optional] Color baseColor, [Optional] string options)
static int DrawAxisControl(SpriteBatch spriteBatch, Vector2 position, Color color, float scale, ControllerActionVector action, bool mesasure=false)