static c000187() { c000005.m000005(typeof(c000187)); bool flag = false; Assembly executingAssembly = Assembly.GetExecutingAssembly(); StrongNameSignatureVerificationEx(executingAssembly.Location, true, ref flag); if (!flag || !executingAssembly.FullName.EndsWith("3db2fda49ca9adff")) { throw new SecurityException("Assembly has been tampered"); } f00005b = new List<c000188>(); f0001bc = new List<c000189>(); f000001 = new c000189("Root", Matrix.Identity, 0); f00000b = 0; f000006 = ""; }
internal c000188(string p0, c000189 p1, BoundingSphere p2, VertexBuffer p3, IndexBuffer p4, c0001a1[] p5, object p6) { this.f000006 = p0; this.f000001 = p1; this.f0001c0 = p2; this.f000095 = p3; this.f0001c1 = p4; this.f00013c = new c00019f(p5); this.f00000e = p6; int length = p5.Length; for (int i = 0; i < length; i++) { c0001a1 ca = p5[i]; ca.f00008a = this; } this.f00006a = new c00019d(); }
private static c000188 m00027f(string p0, c000189 p1) { int num; string[] strArray2; c00019c cc = new c00019c(); cc.m000080(m00027e(enum0196.f0001d8, p0)); c000189 item = new c000189(cc.m000092(), Matrix.Identity, f00000b++); item.f0000e1.M33 *= -1f; item.f000001 = p1; f0001bc.Add(item); if (p1.f000018 != null) { p1.f000018.m000051(item); } else { p1.f000018 = new c000191(new c000189[] { item }); } string str = m00027b().ReadLine(); cc.m000004(int.Parse(str.Replace(';', '\0'))); cc.m00029c(new c000131[cc.m00000f()]); string[] strArray = m000079(";;").Split(new char[] { ',' }); for (num = 0; num < strArray.Length; num++) { strArray[num] = strArray[num].Replace("\r\n", ""); strArray2 = strArray[num].Split(";".ToCharArray()); c000131 c2 = new c000131(); c2.m000025(float.Parse(strArray2[0])); c2.m000029(float.Parse(strArray2[1])); c2.m00002d(-float.Parse(strArray2[2])); cc.m000096()[num] = c2; } str = m00027b().ReadLine(); cc.m00004b(int.Parse(str.Replace(';', '\0'))); cc.m00029c(new c000194[cc.m000010()]); strArray = m000079(";;").Split(";".ToCharArray()); int index = 0; for (num = 0; num < strArray.Length; num += 2) { if (strArray[num] == "") { break; } strArray[num] = strArray[num].Replace(",\r\n", "").Trim(); strArray2 = strArray[num + 1].Split(",".ToCharArray()); c000194 c3 = new c000194(); c3.m000004(int.Parse(strArray[num].Trim())); c3.m000004(new int[c3.m00000f()]); for (int i = 0; i < c3.m00000f(); i++) { c3.m00029e()[i] = int.Parse(strArray2[i].Trim()); } cc.m0002a4()[index] = c3; index++; } m000062().m000140(cc); if (m000062().m000252().m000092() == "") { m000062().m000252().m000080(cc.m000092()); } string str2 = ""; do { str2 = m00027b().ReadLine(); if ((str2 != "") && !str2.ToLower().Contains("//")) { if (str2.ToLower().Contains("meshnormals")) { m000047(); } else if (str2.ToLower().Contains("meshmateriallist")) { m000031(); } else if (str2.ToLower().Contains("meshtexturecoords")) { m0000ae(); } } } while (!str2.Contains("}")); return m000062().m000289(p1); }
private static c000189 m000073(string p0) { c00019b cb = new c00019b(); cb.m000080(m00027e(enum0196.f0001d2, p0)); c000189 item = null; List<c000189> list = new List<c000189>(); string str = ""; do { str = m00027b().ReadLine(); if (str != "") { if (str.ToLower().Contains("frametransformmatrix")) { item = new c000189(cb.m000092(), c00008d.m00011d(m000252()), f00000b++); item.f0000e1.M33 *= -1f; f0001bc.Add(item); } else if (str.ToLower().Contains("frame")) { list.Add(m000073(str)); foreach (c000189 c2 in list) { c2.f000001 = item; c2.f0000e1.M33 *= -1f; } item.f000018 = new c000191(list.ToArray()); } else if (str.ToLower().Contains("mesh")) { f00005b.Add(m00027f(str, item)); } } } while (!str.Contains("}")); return item; }
public c000188 m000289(c000189 p0) { this.f00005b = this.m00028a(); this.f0001c2 = this.m00028b(this.f00005b); List<c0001a1> list = new List<c0001a1>(); for (int i = this.f0001c2.Count - 1; i >= 0; i--) { if (this.f0001c2[i].m00008a().Count == 0) { this.f0001c2.Remove(this.f0001c2[i]); } } int num2 = 0; int elementCount = 0; foreach (c00018b cb in this.f0001c2) { VertexBuffer buffer = new VertexBuffer(this.m0000d4(), cb.m00028c().Length * VertexPositionNormalTexture.SizeInBytes, BufferUsage.WriteOnly); buffer.SetData<VertexPositionNormalTexture>(cb.m00028c()); num2 += cb.m00028c().Length; IndexBuffer buffer2 = new IndexBuffer(this.m0000d4(), typeof(int), cb.m00000f().Length, BufferUsage.WriteOnly); buffer2.SetData<int>(cb.m00000f()); elementCount += cb.m00000f().Length; c0001a1 item = new c0001a1(0, 0, cb.m00008a().Count * 3, 0, cb.m00008a().Count, buffer, buffer2, new VertexDeclaration(this.m0000d4(), VertexPositionNormalTexture.VertexElements), null); item.m000101(new BasicEffect(this.m0000d4(), null)); (item.m000108() as BasicEffect).DiffuseColor = cb.m00004f().m000068().ToVector3(); (item.m000108() as BasicEffect).EmissiveColor = cb.m00004f().m000295().ToVector3(); (item.m000108() as BasicEffect).SpecularColor = cb.m00004f().m000293().ToVector3(); (item.m000108() as BasicEffect).SpecularPower = cb.m00004f().m000024(); if (cb.m00004f().m000064() != null) { (item.m000108() as BasicEffect).Texture = cb.m00004f().m000064(); (item.m000108() as BasicEffect).TextureEnabled = true; } (item.m000108() as BasicEffect).EnableDefaultLighting(); list.Add(item); } VertexBuffer buffer3 = new VertexBuffer(this.m0000d4(), num2 * VertexPositionNormalTexture.SizeInBytes, BufferUsage.WriteOnly); IndexBuffer buffer4 = new IndexBuffer(this.m0000d4(), typeof(int), elementCount, BufferUsage.WriteOnly); c000188 c = new c000188(p0.m000084(), p0, new BoundingSphere(), buffer3, buffer4, list.ToArray(), null); using (c00019f.struct01a0 structa = c.m000282().m00009d()) { while (structa.MoveNext()) { c0001a1 ca2 = structa.get_Current(); if (!c.f00006a.Contains(ca2.m000108())) { c.f00006a.m000101(ca2.m000108()); } } } return c; }
public void m000051(c000189 p0) { this.f000001 = p0; }