コード例 #1
0
ファイル: c000187.cs プロジェクト: bing2008/CastNetGame
 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 = "";
 }
コード例 #2
0
ファイル: c000188.cs プロジェクト: bing2008/CastNetGame
 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();
 }
コード例 #3
0
ファイル: c000187.cs プロジェクト: bing2008/CastNetGame
 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);
 }
コード例 #4
0
ファイル: c000187.cs プロジェクト: bing2008/CastNetGame
 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;
 }
コード例 #5
0
ファイル: c00018a.cs プロジェクト: bing2008/CastNetGame
 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;
 }
コード例 #6
0
ファイル: c00018e.cs プロジェクト: bing2008/CastNetGame
 public void m000051(c000189 p0)
 {
     this.f000001 = p0;
 }