Esempio n. 1
0
 private void Button6_Click(object sender, EventArgs e)
 {
     Twinsanity.GCs GCs = (Twinsanity.GCs)twinsanityEditorForm.LevelData.Get_Item(TwinsanityEditorForm.CalculateIndexes(twinsanityEditorForm.TreeView1.Nodes[0].Nodes[0].Nodes[3]));
     Twinsanity.GC  GC  = new Twinsanity.GC();
     for (int i = 0; i <= GCs._Item.Length - 1; i++)
     {
         if (GCs._Item[i].ID == uint.Parse(GCTree.SelectedNode.Text.Remove(0, 4)))
         {
             GC = (Twinsanity.GC)GCs._Item[i];
             break;
         }
     }
     Twinsanity.Texture[]  Texture   = new Twinsanity.Texture[] { };
     Twinsanity.Materials  Materials = (Twinsanity.Materials)twinsanityEditorForm.LevelData.Get_Item(TwinsanityEditorForm.CalculateIndexes(twinsanityEditorForm.TreeView1.Nodes[0].Nodes[0].Nodes[1]));
     Twinsanity.Textures   Textures  = (Twinsanity.Textures)twinsanityEditorForm.LevelData.Get_Item(TwinsanityEditorForm.CalculateIndexes(twinsanityEditorForm.TreeView1.Nodes[0].Nodes[0].Nodes[0]));
     Twinsanity.Models     Models    = (Twinsanity.Models)twinsanityEditorForm.LevelData.Get_Item(TwinsanityEditorForm.CalculateIndexes(twinsanityEditorForm.TreeView1.Nodes[0].Nodes[0].Nodes[2]));
     Twinsanity.Material[] MAT       = new Twinsanity.Material[] { };
     for (int i = 0; i <= GC.MaterialNumber - 1; i++)
     {
         for (int j = 0; j <= Materials._Item.Length - 1; j++)
         {
             if (GC.Material[i] == Materials._Item[j].ID)
             {
                 Array.Resize(ref MAT, MAT.Length + 1);
                 MAT[MAT.Length - 1] = (Twinsanity.Material)Materials._Item[j];
                 break;
             }
         }
     }
     for (int i = 0; i <= GC.MaterialNumber - 1; i++)
     {
         for (int j = 0; j <= Textures._Item.Length - 1; j++)
         {
             if (MAT[i].Texture == Textures._Item[j].ID)
             {
                 Array.Resize(ref Texture, Texture.Length + 1);
                 Texture[Texture.Length - 1] = (Twinsanity.Texture)Textures._Item[j];
                 break;
             }
         }
     }
     for (int i = 0; i <= Models._Item.Length - 1; i++)
     {
         if (Models._Item[i].ID == GC.Model)
         {
             twinsanityEditorForm.context.viewerModel.Model = (Twinsanity.Model)Models._Item[i];
             break;
         }
     }
     Array.Resize(ref twinsanityEditorForm.context.viewerModel.TwinTextures, Texture.Length);
     Texture.CopyTo(twinsanityEditorForm.context.viewerModel.TwinTextures, 0);
     twinsanityEditorForm.context.viewerModel.Show();
 }
Esempio n. 2
0
 public void ApplyGC(int Index)
 {
     Twinsanity.GC GC = (Twinsanity.GC)twinsanityEditorForm.LevelData.Get_Item(TwinsanityEditorForm.CalculateIndexes(twinsanityEditorForm.TreeView1.Nodes[0].Nodes[0].Nodes[3].Nodes[Index]));
     GC.ID             = uint.Parse(GCID.Text);
     GC.Model          = uint.Parse(Model.Text);
     GC.MaterialNumber = Materials.Items.Count;
     Array.Resize(ref GC.Material, GC.MaterialNumber);
     for (int i = 0; i <= GC.MaterialNumber - 1; i++)
     {
         GC.Material[i] = (uint)Materials.Items[i];
     }
     twinsanityEditorForm.LevelData.Put_Item(GC, TwinsanityEditorForm.CalculateIndexes(twinsanityEditorForm.TreeView1.Nodes[0].Nodes[0].Nodes[3].Nodes[Index]));
 }
Esempio n. 3
0
 public void UpdateGC(int Index)
 {
     Twinsanity.GC GC = (Twinsanity.GC)twinsanityEditorForm.LevelData.Get_Item(TwinsanityEditorForm.CalculateIndexes(twinsanityEditorForm.TreeView1.Nodes[0].Nodes[0].Nodes[3].Nodes[Index]));
     GCID.Text  = GC.ID.ToString();
     Model.Text = GC.Model.ToString();
     Materials.Items.Clear();
     for (int i = 0; i <= GC.MaterialNumber - 1; i++)
     {
         Materials.Items.Add(GC.Material[i]);
     }
     if (Materials.Items.Count > 0)
     {
         UpdateMaterial((uint)Materials.Items[0]);
     }
     else
     {
         UpdateMaterial(0);
     }
     this.Text = "ID: " + GC.ID.ToString();
 }