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
FinalFractalHelper.cs
Go to the documentation of this file.
1using System;
8
9namespace Terraria.Graphics
10{
11 // Token: 0x02000738 RID: 1848
12 public struct FinalFractalHelper
13 {
14 // Token: 0x06003D14 RID: 15636 RVA: 0x002384BC File Offset: 0x002366BC
15 public static int GetRandomProfileIndex()
16 {
17 /*
18An exception occurred when decompiling this method (06003D14)
19
20ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 Terraria.Graphics.FinalFractalHelper::GetRandomProfileIndex()
21
22 ---> System.Exception: Basic block has to end with unconditional control flow.
23{
24 IL_0000:
25 brtrue(IL_0000, ldc.i4:bool(1))
26}
27
28 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
29 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
30 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
31 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
32 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
33 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
34 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
35 --- End of inner exception stack trace ---
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 92
37 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
38*/;
39 }
40
41 // Token: 0x06003D15 RID: 15637 RVA: 0x002384CC File Offset: 0x002366CC
42 public void Draw(Projectile proj)
43 {
44 if (!true)
45 {
46 }
47 if (!true)
48 {
49 }
50 int num = 32768;
52 if (num == 0)
53 {
54 }
55 string text2;
56 string text = "Images/Extra_" + text2;
57 }
58
59 // Token: 0x06003D16 RID: 15638 RVA: 0x00238594 File Offset: 0x00236794
61 {
62 if (!true)
63 {
64 }
65 if (!true)
66 {
67 }
68 return 1;
69 }
70
71 // Token: 0x06003D17 RID: 15639 RVA: 0x002385A8 File Offset: 0x002367A8
73 {
74 if (!true)
75 {
76 return;
77 }
78 }
79
80 // Token: 0x06003D18 RID: 15640 RVA: 0x000021DB File Offset: 0x000003DB
81 private float StripWidth(float progressOnStrip)
82 {
83 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
84 }
85
86 // Token: 0x06003D19 RID: 15641 RVA: 0x002385BC File Offset: 0x002367BC
87 // Note: this type is marked as 'beforefieldinit'.
89 {
90 if (16960 == 0)
91 {
92 }
93 }
94
95 // Token: 0x04007C09 RID: 31753
96 public const int TotalIllusions = 4;
97
98 // Token: 0x04007C0A RID: 31754
99 public const int FramesPerImportantTrail = 15;
100
101 // Token: 0x04007C0B RID: 31755
102 private static VertexStrip _vertexStrip;
103
104 // Token: 0x04007C0C RID: 31756
106
107 // Token: 0x04007C0D RID: 31757
109
110 // Token: 0x04007C0E RID: 31758
112
113 // Token: 0x04007C0F RID: 31759
115
116 // Token: 0x02000739 RID: 1849
117 public sealed class SpawnDustMethod : MulticastDelegate
118 {
119 // Token: 0x06003D1A RID: 15642 RVA: 0x002385D4 File Offset: 0x002367D4
120 public SpawnDustMethod(object @object, IntPtr method)
121 {
123 this.m_target = @object;
125 this.method_code = this;
126 }
127
128 // Token: 0x06003D1B RID: 15643 RVA: 0x00238628 File Offset: 0x00236828
129 public void Invoke(Vector2 centerPosition, float rotation, Vector2 velocity)
130 {
133 IntPtr method = this.method;
134 }
135
136 // Token: 0x06003D1C RID: 15644 RVA: 0x000021DB File Offset: 0x000003DB
137 public IAsyncResult BeginInvoke(Vector2 centerPosition, float rotation, Vector2 velocity, AsyncCallback callback, object @object)
138 {
139 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
140 }
141
142 // Token: 0x06003D1D RID: 15645 RVA: 0x0023864C File Offset: 0x0023684C
143 public void EndInvoke(IAsyncResult result)
144 {
145 }
146 }
147
148 // Token: 0x0200073A RID: 1850
150 {
151 // Token: 0x06003D1E RID: 15646 RVA: 0x0023865C File Offset: 0x0023685C
153 {
154 this.trailColor = color;
155 float num = this.trailWidth;
156 byte a = this.trailColor.A;
157 float num2 = this.trailWidth;
158 byte a2 = this.trailColor.A;
159 float num3 = this.trailWidth;
160 byte a3 = this.trailColor.A;
161 }
162
163 // Token: 0x06003D1F RID: 15647 RVA: 0x002386AC File Offset: 0x002368AC
164 private void StripDust(Vector2 centerPosition, float rotation, Vector2 velocity)
165 {
166 if (!true)
167 {
168 }
169 int num;
170 if (num == 0)
171 {
172 if (!true)
173 {
174 }
175 byte a = this.trailColor.A;
176 Dust dust;
177 dust.scale = (float)52429;
178 float x = dust.velocity.X;
179 float y = dust.velocity.Y;
180 dust.noGravity = true;
181 float num2;
182 Vector2 vector = num2.ToRotationVector2();
183 }
184 }
185
186 // Token: 0x06003D20 RID: 15648 RVA: 0x00238710 File Offset: 0x00236910
187 private void StripColors(float progressOnStrip, [Out] Color col)
188 {
189 Color color = this.trailColor;
190 if (!true)
191 {
192 }
193 float num;
194 Color color2 = color * num;
195 col.A = color2;
196 }
197
198 // Token: 0x06003D21 RID: 15649 RVA: 0x000021DB File Offset: 0x000003DB
199 private float StripWidth(float progressOnStrip)
200 {
201 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
202 }
203
204 // Token: 0x04007C10 RID: 31760
205 public float trailWidth;
206
207 // Token: 0x04007C11 RID: 31761
209
210 // Token: 0x04007C12 RID: 31762
212
213 // Token: 0x04007C13 RID: 31763
215
216 // Token: 0x04007C14 RID: 31764
218 }
219 }
220}
class f__AnonymousType0<< Count > j__TPar
IntPtr method_code
Definition Delegate.cs:386
IntPtr invoke_impl
Definition Delegate.cs:371
Vector2 velocity
Definition Dust.cs:441
IAsyncResult BeginInvoke(Vector2 centerPosition, float rotation, Vector2 velocity, AsyncCallback callback, object @object)
void Invoke(Vector2 centerPosition, float rotation, Vector2 velocity)
void StripDust(Vector2 centerPosition, float rotation, Vector2 velocity)
void StripColors(float progressOnStrip, [Out] Color col)
static FinalFractalHelper.FinalFractalProfile GetFinalFractalProfile(int usedSwordId)
Color StripColors(float progressOnStrip)
float StripWidth(float progressOnStrip)
static FinalFractalHelper.FinalFractalProfile _defaultProfile
static Dictionary< int, FinalFractalHelper.FinalFractalProfile > _fractalProfiles