public FormNewBIGEntry(BIGBank bank) { InitializeComponent(); myBank = bank; for (int i = 0; i < myBank.EntryCount; ++i) { comboBoxTemplates.Items.Add( myBank.get_Entries(i).DevSymbolName); } comboBoxTemplates.SelectedIndex = 0; }
private void addEntryToolStripMenuItem_Click(object sender, EventArgs e) { BIGBank bank = (BIGBank)treeView.SelectedNode.Tag; AssetEntry entry = CreateEntry(bank); if (entry != null) { bank.AddEntry(entry); treeView.SelectedNode = AddToTree( treeView.SelectedNode, entry.DevSymbolName, entry); } }
private void FindModified(BIGBank bank, Progress progress) { progress.Begin(bank.EntryCount); for (int j = 0; j < bank.EntryCount; ++j) { AssetEntry entry = bank.get_Entries(j); if (entry.Modified) { myObjects.Add( FileDatabase.Instance.GetContentObject(entry)); } progress.Update(); } progress.End(); }
protected virtual AssetEntry CreateEntry(BIGBank bank) { FormNewBIGEntry form = new FormNewBIGEntry(bank); AssetEntry entry = null; if (form.ShowDialog() == DialogResult.OK) { entry = new AssetEntry( form.SymbolName, bank.GetNewID(), form.Template.Type, bank); entry.SubHeader = form.Template.SubHeader; entry.Data = form.Template.Data; } form.Dispose(); form = null; return(entry); }
protected override AssetEntry CreateEntry(BIGBank bank) { FormOpenTexture form = new FormOpenTexture(); AssetEntry entry = null; if (form.ShowDialog(this) == DialogResult.OK) { GfxTexture texture; try { texture = new GfxTexture(form.FileName, form.Format); } catch (Exception ex) { FormMain.Instance.ErrorMessage(ex.Message); return(null); } string name = Path.GetFileNameWithoutExtension(form.FileName); name.Replace(' ', '_'); name.Replace('-', '_'); name.Replace('.', '_'); name = name.ToUpper(); FormTextBox textForm = new FormTextBox(); textForm.Text = "New Texture"; textForm.labelInput.Text = "Texture Symbol Name:"; while (true) { textForm.textBoxInput.Text = name; if (textForm.ShowDialog() == DialogResult.OK) { if (bank.FindEntryBySymbolName( textForm.textBoxInput.Text) != null) { FormMain.Instance.ErrorMessage( "Symbol already exists. Try again."); } else { name = textForm.textBoxInput.Text; break; } } } textForm.Dispose(); entry = new AssetEntry( name, bank.GetNewID(), 0, bank); texture.ApplyToEntry(entry); } form.Dispose(); return(entry); }
/// <summary> /// Convert a game asset into a ContentObject. /// </summary> /// <param name="o"></param> /// <returns></returns> public ContentObject GetContentObject(object o) { if (o.GetType() == typeof(AssetEntry)) { AssetEntry entry = (AssetEntry)o; ContentType ctype = ContentType.Unknown; if (entry.Bank.GetType() == typeof(BIGBank)) { BIGBank b = (BIGBank)entry.Bank; if (b.Name == Settings.GetString("Banks", "Graphics")) { ctype = ContentType.Graphics; } else if (b.Name == Settings.GetString("Banks", "Text")) { ctype = ContentType.Text; } else if (b.Name == Settings.GetString("Banks", "Textures")) { ctype = ContentType.MainTextures; } else if (b.Name == Settings.GetString("Banks", "GUITextures")) { ctype = ContentType.GUITextures; } else if (b.Name == Settings.GetString("Banks", "FrontEndTextures")) { ctype = ContentType.FrontEndTextures; } } return(new ContentObject( entry.DevSymbolName, entry, ctype)); } else if (o.GetType() == typeof(BINEntry)) { if (!AutoLoadObjects()) { return(null); } BINEntry entry = (BINEntry)o; ContentType ctype = ContentType.Objects; if (Objects.GetEntryByName(entry.Name) != null) { ctype = ContentType.Objects; } else if (entry.Definition == "CCutsceneDef") { ctype = ContentType.Scripts; } return(new ContentObject( entry.Name, entry, ctype)); } return(null); }