Ejemplo n.º 1
0
        public InstanceMBEditor(SectionController c)
        {
            File       = c.MainFile;
            controller = c;
            InitializeComponent();
            Text = $"SMBA Instance Editor (Section {c.Data.Parent.ID})";
            PopulateList();
            comboBox1.TextChanged += comboBox1_TextChanged;
            FormClosed            += InstanceEditor_FormClosed;

            numFlags.Controls.RemoveAt(0);
            numFlags.Controls[0].Width = numFlags.Width - 4;
        }
Ejemplo n.º 2
0
 public MeshViewer(ModelController mesh, Form pform)
 {
     //initialize variables here
     this.mesh = mesh;
     zFar      = 50F;
     file      = mesh.MainFile;
     lighting  = true;
     wire      = false;
     Tag       = pform;
     InitVBO(1);
     pform.Text = "Loading mesh...";
     LoadMesh();
     pform.Text = "Initializing...";
 }
        public SectionController(MainForm topform, TwinsSection item) : base(topform)
        {
            MainFile = TopForm.CurCont;
            Data     = item;
            if (item.Type != SectionType.Texture && item.Type != SectionType.TextureX &&
                item.Type != SectionType.Material && item.Type != SectionType.Model &&
                item.Type != SectionType.ModelX && item.Type != SectionType.RigidModel &&
                item.Type != SectionType.Skin && item.Type != SectionType.BlendSkin && item.Type != SectionType.SkinX &&
                item.Type != SectionType.Mesh && item.Type != SectionType.LodModel &&
                item.Type != SectionType.Skydome && !(item is TwinsFile))
            {
                AddMenu("Re-order by ID (asc.)", Menu_ReOrderByID_Asc);

                if (item.Type == SectionType.ObjectInstance ||
                    item.Type == SectionType.AIPosition ||
                    item.Type == SectionType.AIPath ||
                    item.Type == SectionType.Position ||
                    item.Type == SectionType.Path ||
                    item.Type == SectionType.Trigger ||
                    item.Type == SectionType.Script ||
                    item.Type == SectionType.ScriptDemo ||
                    item.Type == SectionType.ScriptX ||
                    item.Type == SectionType.Object)
                {
                    AddMenu("Re-ID by order", Menu_ReIDByOrder);
                    AddMenu("Open editor", Menu_OpenEditor);
                    AddMenu("Add new item", Menu_AddNew);
                }
                else if (item.Type == SectionType.Instance)
                {
                    AddMenu("Clear instance section", Menu_ClearInstanceSection);
                    AddMenu("Fill instance section", Menu_FillInstanceSection);
                }
                else if (item.Type >= SectionType.SE && item.Type <= SectionType.SE_Jpn)
                {
                    AddMenu("Extract extra data", Menu_ExtractExtraData);
                    AddMenu("Add new item", Menu_AddNew);
                }
            }
            else if (item is TwinsFile f && f.Type == TwinsFile.FileType.RM2)
            {
                AddMenu("Add remaining instance sections", Menu_FileFillInstanceSections);
            }
Ejemplo n.º 4
0
 public ModelViewer(RigidModelController model, ref Form pform) : base(model.MainFile.MeshSection.GetItem <ModelController>(model.Data.MeshID), ref pform)
 {
     //initialize variables here
     this.model = model;
     file       = model.MainFile;
 }