From b3f93127908e9099f421e9cb111ea133aaa1324b Mon Sep 17 00:00:00 2001 From: dexy Date: Wed, 21 Apr 2021 19:07:32 +1000 Subject: [PATCH] Auto calculate ymap flags and extents options in project window --- .../GameFiles/FileTypes/YmapFile.cs | 12 + CodeWalker/Project/ProjectForm.Designer.cs | 606 +++++++++--------- CodeWalker/Project/ProjectForm.cs | 57 +- 3 files changed, 375 insertions(+), 300 deletions(-) diff --git a/CodeWalker.Core/GameFiles/FileTypes/YmapFile.cs b/CodeWalker.Core/GameFiles/FileTypes/YmapFile.cs index be16759..7c35958 100644 --- a/CodeWalker.Core/GameFiles/FileTypes/YmapFile.cs +++ b/CodeWalker.Core/GameFiles/FileTypes/YmapFile.cs @@ -1191,6 +1191,18 @@ namespace CodeWalker.GameFiles } } + if (CarGenerators != null) + { + foreach (var cargen in CarGenerators) + { + emin = Vector3.Min(emin, cargen.BBMin); + emax = Vector3.Max(emax, cargen.BBMax); + + smin = Vector3.Min(smin, cargen.BBMin - cargen._CCarGen.perpendicularLength); //just a random guess, maybe should be more? + smax = Vector3.Max(smax, cargen.BBMax + cargen._CCarGen.perpendicularLength); + } + } + bool change = false; if (_CMapData.entitiesExtentsMin != emin) diff --git a/CodeWalker/Project/ProjectForm.Designer.cs b/CodeWalker/Project/ProjectForm.Designer.cs index 1f60611..9f46d41 100644 --- a/CodeWalker/Project/ProjectForm.Designer.cs +++ b/CodeWalker/Project/ProjectForm.Designer.cs @@ -37,6 +37,7 @@ this.toolStripSeparator8 = new System.Windows.Forms.ToolStripSeparator(); this.FileNewYmapMenu = new System.Windows.Forms.ToolStripMenuItem(); this.FileNewYtypMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.FileNewYbnMenu = new System.Windows.Forms.ToolStripMenuItem(); this.FileNewYndMenu = new System.Windows.Forms.ToolStripMenuItem(); this.FileNewYnvMenu = new System.Windows.Forms.ToolStripMenuItem(); this.FileNewTrainsMenu = new System.Windows.Forms.ToolStripMenuItem(); @@ -47,6 +48,7 @@ this.toolStripSeparator9 = new System.Windows.Forms.ToolStripSeparator(); this.FileOpenYmapMenu = new System.Windows.Forms.ToolStripMenuItem(); this.FileOpenYtypMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.FileOpenYbnMenu = new System.Windows.Forms.ToolStripMenuItem(); this.FileOpenYndMenu = new System.Windows.Forms.ToolStripMenuItem(); this.FileOpenYnvMenu = new System.Windows.Forms.ToolStripMenuItem(); this.FileOpenTrainsMenu = new System.Windows.Forms.ToolStripMenuItem(); @@ -96,6 +98,28 @@ this.toolStripSeparator15 = new System.Windows.Forms.ToolStripSeparator(); this.YtypAddToProjectMenu = new System.Windows.Forms.ToolStripMenuItem(); this.YtypRemoveFromProjectMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNameMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator25 = new System.Windows.Forms.ToolStripSeparator(); + this.YbnNewBoundsMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundBoxMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundSphereMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundCapsuleMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundCylinderMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundDiscMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundClothMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundGeometryMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundGeometryBVHMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewBoundCompositeMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewPolygonMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewPolygonTriangleMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewPolygonSphereMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewPolygonCapsuleMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewPolygonBoxMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnNewPolygonCylinderMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator26 = new System.Windows.Forms.ToolStripSeparator(); + this.YbnAddToProjectMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.YbnRemoveFromProjectMenu = new System.Windows.Forms.ToolStripMenuItem(); this.YndMenu = new System.Windows.Forms.ToolStripMenuItem(); this.YndNameMenu = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripSeparator14 = new System.Windows.Forms.ToolStripSeparator(); @@ -147,9 +171,9 @@ this.ToolsNavMeshGeneratorMenu = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.ToolsImportMenyooXmlMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.RenderMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.RenderShowGtavMapMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.RenderShowProjectItemsMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.OptionsMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.OptionsRenderGtavMapMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.OptionsRenderProjectItemsMenu = new System.Windows.Forms.ToolStripMenuItem(); this.MainDockPanel = new WeifenLuo.WinFormsUI.Docking.DockPanel(); this.VSExtender = new WeifenLuo.WinFormsUI.Docking.VisualStudioToolStripExtender(this.components); this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog(); @@ -160,6 +184,7 @@ this.toolStripSeparator7 = new System.Windows.Forms.ToolStripSeparator(); this.ToolbarNewYmapMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolbarNewYtypMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.ToolbarNewYbnMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolbarNewYndMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolbarNewYnvMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolbarNewTrainsMenu = new System.Windows.Forms.ToolStripMenuItem(); @@ -169,6 +194,7 @@ this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator(); this.ToolbarOpenYmapMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolbarOpenYtypMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.ToolbarOpenYbnMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolbarOpenYndMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolbarOpenYnvMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolbarOpenTrainsMenu = new System.Windows.Forms.ToolStripMenuItem(); @@ -176,32 +202,9 @@ this.ToolbarSaveButton = new System.Windows.Forms.ToolStripButton(); this.ToolbarSaveAllButton = new System.Windows.Forms.ToolStripButton(); this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator(); - this.YbnMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNameMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.toolStripSeparator25 = new System.Windows.Forms.ToolStripSeparator(); - this.YbnNewBoundsMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewPolygonMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.toolStripSeparator26 = new System.Windows.Forms.ToolStripSeparator(); - this.YbnAddToProjectMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnRemoveFromProjectMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundSphereMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundCapsuleMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundBoxMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundDiscMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundCylinderMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundClothMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundGeometryMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundGeometryBVHMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewBoundCompositeMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewPolygonTriangleMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewPolygonSphereMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewPolygonCapsuleMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewPolygonBoxMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.YbnNewPolygonCylinderMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.ToolbarNewYbnMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.ToolbarOpenYbnMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.FileNewYbnMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.FileOpenYbnMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator27 = new System.Windows.Forms.ToolStripSeparator(); + this.OptionsAutoCalcYmapFlagsMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.OptionsAutoCalcYmapExtentsMenu = new System.Windows.Forms.ToolStripMenuItem(); this.MainMenu.SuspendLayout(); this.MainToolbar.SuspendLayout(); this.SuspendLayout(); @@ -221,7 +224,7 @@ this.ScenarioMenu, this.AudioMenu, this.ToolsMenu, - this.RenderMenu}); + this.OptionsMenu}); this.MainMenu.Location = new System.Drawing.Point(0, 0); this.MainMenu.Name = "MainMenu"; this.MainMenu.Size = new System.Drawing.Size(813, 24); @@ -258,67 +261,74 @@ this.FileNewScenarioMenu, this.FileNewAudioDatMenu}); this.FileNewMenu.Name = "FileNewMenu"; - this.FileNewMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewMenu.Size = new System.Drawing.Size(163, 22); this.FileNewMenu.Text = "New"; // // FileNewProjectMenu // this.FileNewProjectMenu.Name = "FileNewProjectMenu"; - this.FileNewProjectMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewProjectMenu.Size = new System.Drawing.Size(148, 22); this.FileNewProjectMenu.Text = "Project"; this.FileNewProjectMenu.Click += new System.EventHandler(this.FileNewProjectMenu_Click); // // toolStripSeparator8 // this.toolStripSeparator8.Name = "toolStripSeparator8"; - this.toolStripSeparator8.Size = new System.Drawing.Size(177, 6); + this.toolStripSeparator8.Size = new System.Drawing.Size(145, 6); // // FileNewYmapMenu // this.FileNewYmapMenu.Name = "FileNewYmapMenu"; - this.FileNewYmapMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewYmapMenu.Size = new System.Drawing.Size(148, 22); this.FileNewYmapMenu.Text = "Ymap File"; this.FileNewYmapMenu.Click += new System.EventHandler(this.FileNewYmapMenu_Click); // // FileNewYtypMenu // this.FileNewYtypMenu.Name = "FileNewYtypMenu"; - this.FileNewYtypMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewYtypMenu.Size = new System.Drawing.Size(148, 22); this.FileNewYtypMenu.Text = "Ytyp File"; this.FileNewYtypMenu.Click += new System.EventHandler(this.FileNewYtypMenu_Click); // + // FileNewYbnMenu + // + this.FileNewYbnMenu.Name = "FileNewYbnMenu"; + this.FileNewYbnMenu.Size = new System.Drawing.Size(148, 22); + this.FileNewYbnMenu.Text = "Ybn File"; + this.FileNewYbnMenu.Click += new System.EventHandler(this.FileNewYbnMenu_Click); + // // FileNewYndMenu // this.FileNewYndMenu.Name = "FileNewYndMenu"; - this.FileNewYndMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewYndMenu.Size = new System.Drawing.Size(148, 22); this.FileNewYndMenu.Text = "Ynd File"; this.FileNewYndMenu.Click += new System.EventHandler(this.FileNewYndMenu_Click); // // FileNewYnvMenu // this.FileNewYnvMenu.Name = "FileNewYnvMenu"; - this.FileNewYnvMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewYnvMenu.Size = new System.Drawing.Size(148, 22); this.FileNewYnvMenu.Text = "Ynv File"; this.FileNewYnvMenu.Click += new System.EventHandler(this.FileNewYnvMenu_Click); // // FileNewTrainsMenu // this.FileNewTrainsMenu.Name = "FileNewTrainsMenu"; - this.FileNewTrainsMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewTrainsMenu.Size = new System.Drawing.Size(148, 22); this.FileNewTrainsMenu.Text = "Trains File"; this.FileNewTrainsMenu.Click += new System.EventHandler(this.FileNewTrainsMenu_Click); // // FileNewScenarioMenu // this.FileNewScenarioMenu.Name = "FileNewScenarioMenu"; - this.FileNewScenarioMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewScenarioMenu.Size = new System.Drawing.Size(148, 22); this.FileNewScenarioMenu.Text = "Scenario File"; this.FileNewScenarioMenu.Click += new System.EventHandler(this.FileNewScenarioMenu_Click); // // FileNewAudioDatMenu // this.FileNewAudioDatMenu.Name = "FileNewAudioDatMenu"; - this.FileNewAudioDatMenu.Size = new System.Drawing.Size(180, 22); + this.FileNewAudioDatMenu.Size = new System.Drawing.Size(148, 22); this.FileNewAudioDatMenu.Text = "Audio Dat File"; this.FileNewAudioDatMenu.Click += new System.EventHandler(this.FileNewAudioDatMenu_Click); // @@ -336,93 +346,100 @@ this.FileOpenScenarioMenu, this.FileOpenAudioDatMenu}); this.FileOpenMenu.Name = "FileOpenMenu"; - this.FileOpenMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenMenu.Size = new System.Drawing.Size(163, 22); this.FileOpenMenu.Text = "Open"; // // FileOpenProjectMenu // this.FileOpenProjectMenu.Name = "FileOpenProjectMenu"; - this.FileOpenProjectMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenProjectMenu.Size = new System.Drawing.Size(157, 22); this.FileOpenProjectMenu.Text = "Project..."; this.FileOpenProjectMenu.Click += new System.EventHandler(this.FileOpenProjectMenu_Click); // // toolStripSeparator9 // this.toolStripSeparator9.Name = "toolStripSeparator9"; - this.toolStripSeparator9.Size = new System.Drawing.Size(177, 6); + this.toolStripSeparator9.Size = new System.Drawing.Size(154, 6); // // FileOpenYmapMenu // this.FileOpenYmapMenu.Name = "FileOpenYmapMenu"; - this.FileOpenYmapMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenYmapMenu.Size = new System.Drawing.Size(157, 22); this.FileOpenYmapMenu.Text = "Ymap File..."; this.FileOpenYmapMenu.Click += new System.EventHandler(this.FileOpenYmapMenu_Click); // // FileOpenYtypMenu // this.FileOpenYtypMenu.Name = "FileOpenYtypMenu"; - this.FileOpenYtypMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenYtypMenu.Size = new System.Drawing.Size(157, 22); this.FileOpenYtypMenu.Text = "Ytyp File..."; this.FileOpenYtypMenu.Click += new System.EventHandler(this.FileOpenYtypMenu_Click); // + // FileOpenYbnMenu + // + this.FileOpenYbnMenu.Name = "FileOpenYbnMenu"; + this.FileOpenYbnMenu.Size = new System.Drawing.Size(157, 22); + this.FileOpenYbnMenu.Text = "Ybn File..."; + this.FileOpenYbnMenu.Click += new System.EventHandler(this.FileOpenYbnMenu_Click); + // // FileOpenYndMenu // this.FileOpenYndMenu.Name = "FileOpenYndMenu"; - this.FileOpenYndMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenYndMenu.Size = new System.Drawing.Size(157, 22); this.FileOpenYndMenu.Text = "Ynd File..."; this.FileOpenYndMenu.Click += new System.EventHandler(this.FileOpenYndMenu_Click); // // FileOpenYnvMenu // this.FileOpenYnvMenu.Name = "FileOpenYnvMenu"; - this.FileOpenYnvMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenYnvMenu.Size = new System.Drawing.Size(157, 22); this.FileOpenYnvMenu.Text = "Ynv File..."; this.FileOpenYnvMenu.Click += new System.EventHandler(this.FileOpenYnvMenu_Click); // // FileOpenTrainsMenu // this.FileOpenTrainsMenu.Name = "FileOpenTrainsMenu"; - this.FileOpenTrainsMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenTrainsMenu.Size = new System.Drawing.Size(157, 22); this.FileOpenTrainsMenu.Text = "Trains File..."; this.FileOpenTrainsMenu.Click += new System.EventHandler(this.FileOpenTrainsMenu_Click); // // FileOpenScenarioMenu // this.FileOpenScenarioMenu.Name = "FileOpenScenarioMenu"; - this.FileOpenScenarioMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenScenarioMenu.Size = new System.Drawing.Size(157, 22); this.FileOpenScenarioMenu.Text = "Scenario File..."; this.FileOpenScenarioMenu.Click += new System.EventHandler(this.FileOpenScenarioMenu_Click); // // FileOpenAudioDatMenu // this.FileOpenAudioDatMenu.Name = "FileOpenAudioDatMenu"; - this.FileOpenAudioDatMenu.Size = new System.Drawing.Size(180, 22); + this.FileOpenAudioDatMenu.Size = new System.Drawing.Size(157, 22); this.FileOpenAudioDatMenu.Text = "Audio Dat File..."; this.FileOpenAudioDatMenu.Click += new System.EventHandler(this.FileOpenAudioDatMenu_Click); // // toolStripSeparator3 // this.toolStripSeparator3.Name = "toolStripSeparator3"; - this.toolStripSeparator3.Size = new System.Drawing.Size(177, 6); + this.toolStripSeparator3.Size = new System.Drawing.Size(160, 6); // // FileCloseProjectMenu // this.FileCloseProjectMenu.Enabled = false; this.FileCloseProjectMenu.Name = "FileCloseProjectMenu"; - this.FileCloseProjectMenu.Size = new System.Drawing.Size(180, 22); + this.FileCloseProjectMenu.Size = new System.Drawing.Size(163, 22); this.FileCloseProjectMenu.Text = "Close Project"; this.FileCloseProjectMenu.Click += new System.EventHandler(this.FileCloseProjectMenu_Click); // // toolStripSeparator4 // this.toolStripSeparator4.Name = "toolStripSeparator4"; - this.toolStripSeparator4.Size = new System.Drawing.Size(177, 6); + this.toolStripSeparator4.Size = new System.Drawing.Size(160, 6); // // FileSaveProjectMenu // this.FileSaveProjectMenu.Enabled = false; this.FileSaveProjectMenu.Name = "FileSaveProjectMenu"; - this.FileSaveProjectMenu.Size = new System.Drawing.Size(180, 22); + this.FileSaveProjectMenu.Size = new System.Drawing.Size(163, 22); this.FileSaveProjectMenu.Text = "Save Project"; this.FileSaveProjectMenu.Click += new System.EventHandler(this.FileSaveProjectMenu_Click); // @@ -430,7 +447,7 @@ // this.FileSaveProjectAsMenu.Enabled = false; this.FileSaveProjectAsMenu.Name = "FileSaveProjectAsMenu"; - this.FileSaveProjectAsMenu.Size = new System.Drawing.Size(180, 22); + this.FileSaveProjectAsMenu.Size = new System.Drawing.Size(163, 22); this.FileSaveProjectAsMenu.Text = "Save Project As..."; this.FileSaveProjectAsMenu.Click += new System.EventHandler(this.FileSaveProjectAsMenu_Click); // @@ -438,7 +455,7 @@ // this.FileSaveItemMenu.Enabled = false; this.FileSaveItemMenu.Name = "FileSaveItemMenu"; - this.FileSaveItemMenu.Size = new System.Drawing.Size(180, 22); + this.FileSaveItemMenu.Size = new System.Drawing.Size(163, 22); this.FileSaveItemMenu.Text = "Save Item"; this.FileSaveItemMenu.Visible = false; this.FileSaveItemMenu.Click += new System.EventHandler(this.FileSaveItemMenu_Click); @@ -447,7 +464,7 @@ // this.FileSaveItemAsMenu.Enabled = false; this.FileSaveItemAsMenu.Name = "FileSaveItemAsMenu"; - this.FileSaveItemAsMenu.Size = new System.Drawing.Size(180, 22); + this.FileSaveItemAsMenu.Size = new System.Drawing.Size(163, 22); this.FileSaveItemAsMenu.Text = "Save Item As..."; this.FileSaveItemAsMenu.Visible = false; this.FileSaveItemAsMenu.Click += new System.EventHandler(this.FileSaveItemAsMenu_Click); @@ -751,6 +768,182 @@ this.YtypRemoveFromProjectMenu.Text = "Remove from Project"; this.YtypRemoveFromProjectMenu.Click += new System.EventHandler(this.YtypRemoveFromProjectMenu_Click); // + // YbnMenu + // + this.YbnMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.YbnNameMenu, + this.toolStripSeparator25, + this.YbnNewBoundsMenu, + this.YbnNewPolygonMenu, + this.toolStripSeparator26, + this.YbnAddToProjectMenu, + this.YbnRemoveFromProjectMenu}); + this.YbnMenu.Name = "YbnMenu"; + this.YbnMenu.Size = new System.Drawing.Size(40, 20); + this.YbnMenu.Text = "Ybn"; + this.YbnMenu.Visible = false; + // + // YbnNameMenu + // + this.YbnNameMenu.Enabled = false; + this.YbnNameMenu.Name = "YbnNameMenu"; + this.YbnNameMenu.Size = new System.Drawing.Size(189, 22); + this.YbnNameMenu.Text = "(No .ybn file selected)"; + // + // toolStripSeparator25 + // + this.toolStripSeparator25.Name = "toolStripSeparator25"; + this.toolStripSeparator25.Size = new System.Drawing.Size(186, 6); + // + // YbnNewBoundsMenu + // + this.YbnNewBoundsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.YbnNewBoundBoxMenu, + this.YbnNewBoundSphereMenu, + this.YbnNewBoundCapsuleMenu, + this.YbnNewBoundCylinderMenu, + this.YbnNewBoundDiscMenu, + this.YbnNewBoundClothMenu, + this.YbnNewBoundGeometryMenu, + this.YbnNewBoundGeometryBVHMenu, + this.YbnNewBoundCompositeMenu}); + this.YbnNewBoundsMenu.Enabled = false; + this.YbnNewBoundsMenu.Name = "YbnNewBoundsMenu"; + this.YbnNewBoundsMenu.Size = new System.Drawing.Size(189, 22); + this.YbnNewBoundsMenu.Text = "New Bounds"; + // + // YbnNewBoundBoxMenu + // + this.YbnNewBoundBoxMenu.Name = "YbnNewBoundBoxMenu"; + this.YbnNewBoundBoxMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundBoxMenu.Text = "Box"; + this.YbnNewBoundBoxMenu.Click += new System.EventHandler(this.YbnNewBoundBoxMenu_Click); + // + // YbnNewBoundSphereMenu + // + this.YbnNewBoundSphereMenu.Name = "YbnNewBoundSphereMenu"; + this.YbnNewBoundSphereMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundSphereMenu.Text = "Sphere"; + this.YbnNewBoundSphereMenu.Click += new System.EventHandler(this.YbnNewBoundSphereMenu_Click); + // + // YbnNewBoundCapsuleMenu + // + this.YbnNewBoundCapsuleMenu.Name = "YbnNewBoundCapsuleMenu"; + this.YbnNewBoundCapsuleMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundCapsuleMenu.Text = "Capsule"; + this.YbnNewBoundCapsuleMenu.Click += new System.EventHandler(this.YbnNewBoundCapsuleMenu_Click); + // + // YbnNewBoundCylinderMenu + // + this.YbnNewBoundCylinderMenu.Name = "YbnNewBoundCylinderMenu"; + this.YbnNewBoundCylinderMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundCylinderMenu.Text = "Cylinder"; + this.YbnNewBoundCylinderMenu.Click += new System.EventHandler(this.YbnNewBoundCylinderMenu_Click); + // + // YbnNewBoundDiscMenu + // + this.YbnNewBoundDiscMenu.Name = "YbnNewBoundDiscMenu"; + this.YbnNewBoundDiscMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundDiscMenu.Text = "Disc"; + this.YbnNewBoundDiscMenu.Click += new System.EventHandler(this.YbnNewBoundDiscMenu_Click); + // + // YbnNewBoundClothMenu + // + this.YbnNewBoundClothMenu.Name = "YbnNewBoundClothMenu"; + this.YbnNewBoundClothMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundClothMenu.Text = "Cloth"; + this.YbnNewBoundClothMenu.Click += new System.EventHandler(this.YbnNewBoundClothMenu_Click); + // + // YbnNewBoundGeometryMenu + // + this.YbnNewBoundGeometryMenu.Name = "YbnNewBoundGeometryMenu"; + this.YbnNewBoundGeometryMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundGeometryMenu.Text = "Geometry"; + this.YbnNewBoundGeometryMenu.Click += new System.EventHandler(this.YbnNewBoundGeometryMenu_Click); + // + // YbnNewBoundGeometryBVHMenu + // + this.YbnNewBoundGeometryBVHMenu.Name = "YbnNewBoundGeometryBVHMenu"; + this.YbnNewBoundGeometryBVHMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundGeometryBVHMenu.Text = "Geometry BVH"; + this.YbnNewBoundGeometryBVHMenu.Click += new System.EventHandler(this.YbnNewBoundGeometryBVHMenu_Click); + // + // YbnNewBoundCompositeMenu + // + this.YbnNewBoundCompositeMenu.Name = "YbnNewBoundCompositeMenu"; + this.YbnNewBoundCompositeMenu.Size = new System.Drawing.Size(152, 22); + this.YbnNewBoundCompositeMenu.Text = "Composite"; + this.YbnNewBoundCompositeMenu.Click += new System.EventHandler(this.YbnNewBoundCompositeMenu_Click); + // + // YbnNewPolygonMenu + // + this.YbnNewPolygonMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.YbnNewPolygonTriangleMenu, + this.YbnNewPolygonSphereMenu, + this.YbnNewPolygonCapsuleMenu, + this.YbnNewPolygonBoxMenu, + this.YbnNewPolygonCylinderMenu}); + this.YbnNewPolygonMenu.Enabled = false; + this.YbnNewPolygonMenu.Name = "YbnNewPolygonMenu"; + this.YbnNewPolygonMenu.Size = new System.Drawing.Size(189, 22); + this.YbnNewPolygonMenu.Text = "New Polygon"; + // + // YbnNewPolygonTriangleMenu + // + this.YbnNewPolygonTriangleMenu.Name = "YbnNewPolygonTriangleMenu"; + this.YbnNewPolygonTriangleMenu.Size = new System.Drawing.Size(118, 22); + this.YbnNewPolygonTriangleMenu.Text = "Triangle"; + this.YbnNewPolygonTriangleMenu.Click += new System.EventHandler(this.YbnNewPolygonTriangleMenu_Click); + // + // YbnNewPolygonSphereMenu + // + this.YbnNewPolygonSphereMenu.Name = "YbnNewPolygonSphereMenu"; + this.YbnNewPolygonSphereMenu.Size = new System.Drawing.Size(118, 22); + this.YbnNewPolygonSphereMenu.Text = "Sphere"; + this.YbnNewPolygonSphereMenu.Click += new System.EventHandler(this.YbnNewPolygonSphereMenu_Click); + // + // YbnNewPolygonCapsuleMenu + // + this.YbnNewPolygonCapsuleMenu.Name = "YbnNewPolygonCapsuleMenu"; + this.YbnNewPolygonCapsuleMenu.Size = new System.Drawing.Size(118, 22); + this.YbnNewPolygonCapsuleMenu.Text = "Capsule"; + this.YbnNewPolygonCapsuleMenu.Click += new System.EventHandler(this.YbnNewPolygonCapsuleMenu_Click); + // + // YbnNewPolygonBoxMenu + // + this.YbnNewPolygonBoxMenu.Name = "YbnNewPolygonBoxMenu"; + this.YbnNewPolygonBoxMenu.Size = new System.Drawing.Size(118, 22); + this.YbnNewPolygonBoxMenu.Text = "Box"; + this.YbnNewPolygonBoxMenu.Click += new System.EventHandler(this.YbnNewPolygonBoxMenu_Click); + // + // YbnNewPolygonCylinderMenu + // + this.YbnNewPolygonCylinderMenu.Name = "YbnNewPolygonCylinderMenu"; + this.YbnNewPolygonCylinderMenu.Size = new System.Drawing.Size(118, 22); + this.YbnNewPolygonCylinderMenu.Text = "Cylinder"; + this.YbnNewPolygonCylinderMenu.Click += new System.EventHandler(this.YbnNewPolygonCylinderMenu_Click); + // + // toolStripSeparator26 + // + this.toolStripSeparator26.Name = "toolStripSeparator26"; + this.toolStripSeparator26.Size = new System.Drawing.Size(186, 6); + // + // YbnAddToProjectMenu + // + this.YbnAddToProjectMenu.Enabled = false; + this.YbnAddToProjectMenu.Name = "YbnAddToProjectMenu"; + this.YbnAddToProjectMenu.Size = new System.Drawing.Size(189, 22); + this.YbnAddToProjectMenu.Text = "Add to Project"; + this.YbnAddToProjectMenu.Click += new System.EventHandler(this.YbnAddToProjectMenu_Click); + // + // YbnRemoveFromProjectMenu + // + this.YbnRemoveFromProjectMenu.Enabled = false; + this.YbnRemoveFromProjectMenu.Name = "YbnRemoveFromProjectMenu"; + this.YbnRemoveFromProjectMenu.Size = new System.Drawing.Size(189, 22); + this.YbnRemoveFromProjectMenu.Text = "Remove from Project"; + this.YbnRemoveFromProjectMenu.Click += new System.EventHandler(this.YbnRemoveFromProjectMenu_Click); + // // YndMenu // this.YndMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { @@ -1161,32 +1354,35 @@ this.ToolsImportMenyooXmlMenu.Text = "Import Menyoo XML..."; this.ToolsImportMenyooXmlMenu.Click += new System.EventHandler(this.ToolsImportMenyooXmlMenu_Click); // - // RenderMenu + // OptionsMenu // - this.RenderMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.RenderShowGtavMapMenu, - this.RenderShowProjectItemsMenu}); - this.RenderMenu.Name = "RenderMenu"; - this.RenderMenu.Size = new System.Drawing.Size(56, 20); - this.RenderMenu.Text = "Render"; + this.OptionsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.OptionsRenderGtavMapMenu, + this.OptionsRenderProjectItemsMenu, + this.toolStripSeparator27, + this.OptionsAutoCalcYmapFlagsMenu, + this.OptionsAutoCalcYmapExtentsMenu}); + this.OptionsMenu.Name = "OptionsMenu"; + this.OptionsMenu.Size = new System.Drawing.Size(61, 20); + this.OptionsMenu.Text = "Options"; // - // RenderShowGtavMapMenu + // OptionsRenderGtavMapMenu // - this.RenderShowGtavMapMenu.Checked = true; - this.RenderShowGtavMapMenu.CheckState = System.Windows.Forms.CheckState.Checked; - this.RenderShowGtavMapMenu.Name = "RenderShowGtavMapMenu"; - this.RenderShowGtavMapMenu.Size = new System.Drawing.Size(175, 22); - this.RenderShowGtavMapMenu.Text = "Show GTAV Map"; - this.RenderShowGtavMapMenu.Click += new System.EventHandler(this.RenderShowGtavMapMenu_Click); + this.OptionsRenderGtavMapMenu.Checked = true; + this.OptionsRenderGtavMapMenu.CheckState = System.Windows.Forms.CheckState.Checked; + this.OptionsRenderGtavMapMenu.Name = "OptionsRenderGtavMapMenu"; + this.OptionsRenderGtavMapMenu.Size = new System.Drawing.Size(226, 22); + this.OptionsRenderGtavMapMenu.Text = "Render GTAV Map"; + this.OptionsRenderGtavMapMenu.Click += new System.EventHandler(this.OptionsRenderGtavMapMenu_Click); // - // RenderShowProjectItemsMenu + // OptionsRenderProjectItemsMenu // - this.RenderShowProjectItemsMenu.Checked = true; - this.RenderShowProjectItemsMenu.CheckState = System.Windows.Forms.CheckState.Checked; - this.RenderShowProjectItemsMenu.Name = "RenderShowProjectItemsMenu"; - this.RenderShowProjectItemsMenu.Size = new System.Drawing.Size(175, 22); - this.RenderShowProjectItemsMenu.Text = "Show Project Items"; - this.RenderShowProjectItemsMenu.Click += new System.EventHandler(this.RenderShowProjectItemsMenu_Click); + this.OptionsRenderProjectItemsMenu.Checked = true; + this.OptionsRenderProjectItemsMenu.CheckState = System.Windows.Forms.CheckState.Checked; + this.OptionsRenderProjectItemsMenu.Name = "OptionsRenderProjectItemsMenu"; + this.OptionsRenderProjectItemsMenu.Size = new System.Drawing.Size(226, 22); + this.OptionsRenderProjectItemsMenu.Text = "Render Project Items"; + this.OptionsRenderProjectItemsMenu.Click += new System.EventHandler(this.OptionsRenderProjectItemsMenu_Click); // // MainDockPanel // @@ -1249,54 +1445,61 @@ // ToolbarNewProjectMenu // this.ToolbarNewProjectMenu.Name = "ToolbarNewProjectMenu"; - this.ToolbarNewProjectMenu.Size = new System.Drawing.Size(180, 22); + this.ToolbarNewProjectMenu.Size = new System.Drawing.Size(167, 22); this.ToolbarNewProjectMenu.Text = "New Project"; this.ToolbarNewProjectMenu.Click += new System.EventHandler(this.ToolbarNewProjectMenu_Click); // // toolStripSeparator7 // this.toolStripSeparator7.Name = "toolStripSeparator7"; - this.toolStripSeparator7.Size = new System.Drawing.Size(177, 6); + this.toolStripSeparator7.Size = new System.Drawing.Size(164, 6); // // ToolbarNewYmapMenu // this.ToolbarNewYmapMenu.Name = "ToolbarNewYmapMenu"; - this.ToolbarNewYmapMenu.Size = new System.Drawing.Size(180, 22); + this.ToolbarNewYmapMenu.Size = new System.Drawing.Size(167, 22); this.ToolbarNewYmapMenu.Text = "New Ymap File"; this.ToolbarNewYmapMenu.Click += new System.EventHandler(this.ToolbarNewYmapMenu_Click); // // ToolbarNewYtypMenu // this.ToolbarNewYtypMenu.Name = "ToolbarNewYtypMenu"; - this.ToolbarNewYtypMenu.Size = new System.Drawing.Size(180, 22); + this.ToolbarNewYtypMenu.Size = new System.Drawing.Size(167, 22); this.ToolbarNewYtypMenu.Text = "New Ytyp File"; this.ToolbarNewYtypMenu.Click += new System.EventHandler(this.ToolbarNewYtypMenu_Click); // + // ToolbarNewYbnMenu + // + this.ToolbarNewYbnMenu.Name = "ToolbarNewYbnMenu"; + this.ToolbarNewYbnMenu.Size = new System.Drawing.Size(167, 22); + this.ToolbarNewYbnMenu.Text = "New Ybn File"; + this.ToolbarNewYbnMenu.Click += new System.EventHandler(this.ToolbarNewYbnMenu_Click); + // // ToolbarNewYndMenu // this.ToolbarNewYndMenu.Name = "ToolbarNewYndMenu"; - this.ToolbarNewYndMenu.Size = new System.Drawing.Size(180, 22); + this.ToolbarNewYndMenu.Size = new System.Drawing.Size(167, 22); this.ToolbarNewYndMenu.Text = "New Ynd File"; this.ToolbarNewYndMenu.Click += new System.EventHandler(this.ToolbarNewYndMenu_Click); // // ToolbarNewYnvMenu // this.ToolbarNewYnvMenu.Name = "ToolbarNewYnvMenu"; - this.ToolbarNewYnvMenu.Size = new System.Drawing.Size(180, 22); + this.ToolbarNewYnvMenu.Size = new System.Drawing.Size(167, 22); this.ToolbarNewYnvMenu.Text = "New Ynv File"; this.ToolbarNewYnvMenu.Click += new System.EventHandler(this.ToolbarNewYnvMenu_Click); // // ToolbarNewTrainsMenu // this.ToolbarNewTrainsMenu.Name = "ToolbarNewTrainsMenu"; - this.ToolbarNewTrainsMenu.Size = new System.Drawing.Size(180, 22); + this.ToolbarNewTrainsMenu.Size = new System.Drawing.Size(167, 22); this.ToolbarNewTrainsMenu.Text = "New Trains File"; this.ToolbarNewTrainsMenu.Click += new System.EventHandler(this.ToolbarNewTrainsMenu_Click); // // ToolbarNewScenarioMenu // this.ToolbarNewScenarioMenu.Name = "ToolbarNewScenarioMenu"; - this.ToolbarNewScenarioMenu.Size = new System.Drawing.Size(180, 22); + this.ToolbarNewScenarioMenu.Size = new System.Drawing.Size(167, 22); this.ToolbarNewScenarioMenu.Text = "New Scenario File"; this.ToolbarNewScenarioMenu.Click += new System.EventHandler(this.ToolbarNewScenarioMenu_Click); // @@ -1346,6 +1549,13 @@ this.ToolbarOpenYtypMenu.Text = "Open Ytyp File..."; this.ToolbarOpenYtypMenu.Click += new System.EventHandler(this.ToolbarOpenYtypMenu_Click); // + // ToolbarOpenYbnMenu + // + this.ToolbarOpenYbnMenu.Name = "ToolbarOpenYbnMenu"; + this.ToolbarOpenYbnMenu.Size = new System.Drawing.Size(181, 22); + this.ToolbarOpenYbnMenu.Text = "Open Ybn File..."; + this.ToolbarOpenYbnMenu.Click += new System.EventHandler(this.ToolbarOpenYbnMenu_Click); + // // ToolbarOpenYndMenu // this.ToolbarOpenYndMenu.Name = "ToolbarOpenYndMenu"; @@ -1400,209 +1610,28 @@ this.toolStripSeparator5.Name = "toolStripSeparator5"; this.toolStripSeparator5.Size = new System.Drawing.Size(6, 25); // - // YbnMenu + // toolStripSeparator27 // - this.YbnMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.YbnNameMenu, - this.toolStripSeparator25, - this.YbnNewBoundsMenu, - this.YbnNewPolygonMenu, - this.toolStripSeparator26, - this.YbnAddToProjectMenu, - this.YbnRemoveFromProjectMenu}); - this.YbnMenu.Name = "YbnMenu"; - this.YbnMenu.Size = new System.Drawing.Size(40, 20); - this.YbnMenu.Text = "Ybn"; - this.YbnMenu.Visible = false; + this.toolStripSeparator27.Name = "toolStripSeparator27"; + this.toolStripSeparator27.Size = new System.Drawing.Size(223, 6); // - // YbnNameMenu + // OptionsAutoCalcYmapFlagsMenu // - this.YbnNameMenu.Enabled = false; - this.YbnNameMenu.Name = "YbnNameMenu"; - this.YbnNameMenu.Size = new System.Drawing.Size(189, 22); - this.YbnNameMenu.Text = "(No .ybn file selected)"; + this.OptionsAutoCalcYmapFlagsMenu.Checked = true; + this.OptionsAutoCalcYmapFlagsMenu.CheckState = System.Windows.Forms.CheckState.Checked; + this.OptionsAutoCalcYmapFlagsMenu.Name = "OptionsAutoCalcYmapFlagsMenu"; + this.OptionsAutoCalcYmapFlagsMenu.Size = new System.Drawing.Size(226, 22); + this.OptionsAutoCalcYmapFlagsMenu.Text = "Auto Calculate Ymap Flags"; + this.OptionsAutoCalcYmapFlagsMenu.Click += new System.EventHandler(this.OptionsAutoCalcYmapFlagsMenu_Click); // - // toolStripSeparator25 + // OptionsAutoCalcYmapExtentsMenu // - this.toolStripSeparator25.Name = "toolStripSeparator25"; - this.toolStripSeparator25.Size = new System.Drawing.Size(186, 6); - // - // YbnNewBoundsMenu - // - this.YbnNewBoundsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.YbnNewBoundBoxMenu, - this.YbnNewBoundSphereMenu, - this.YbnNewBoundCapsuleMenu, - this.YbnNewBoundCylinderMenu, - this.YbnNewBoundDiscMenu, - this.YbnNewBoundClothMenu, - this.YbnNewBoundGeometryMenu, - this.YbnNewBoundGeometryBVHMenu, - this.YbnNewBoundCompositeMenu}); - this.YbnNewBoundsMenu.Enabled = false; - this.YbnNewBoundsMenu.Name = "YbnNewBoundsMenu"; - this.YbnNewBoundsMenu.Size = new System.Drawing.Size(189, 22); - this.YbnNewBoundsMenu.Text = "New Bounds"; - // - // YbnNewPolygonMenu - // - this.YbnNewPolygonMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.YbnNewPolygonTriangleMenu, - this.YbnNewPolygonSphereMenu, - this.YbnNewPolygonCapsuleMenu, - this.YbnNewPolygonBoxMenu, - this.YbnNewPolygonCylinderMenu}); - this.YbnNewPolygonMenu.Enabled = false; - this.YbnNewPolygonMenu.Name = "YbnNewPolygonMenu"; - this.YbnNewPolygonMenu.Size = new System.Drawing.Size(189, 22); - this.YbnNewPolygonMenu.Text = "New Polygon"; - // - // toolStripSeparator26 - // - this.toolStripSeparator26.Name = "toolStripSeparator26"; - this.toolStripSeparator26.Size = new System.Drawing.Size(186, 6); - // - // YbnAddToProjectMenu - // - this.YbnAddToProjectMenu.Enabled = false; - this.YbnAddToProjectMenu.Name = "YbnAddToProjectMenu"; - this.YbnAddToProjectMenu.Size = new System.Drawing.Size(189, 22); - this.YbnAddToProjectMenu.Text = "Add to Project"; - this.YbnAddToProjectMenu.Click += new System.EventHandler(this.YbnAddToProjectMenu_Click); - // - // YbnRemoveFromProjectMenu - // - this.YbnRemoveFromProjectMenu.Enabled = false; - this.YbnRemoveFromProjectMenu.Name = "YbnRemoveFromProjectMenu"; - this.YbnRemoveFromProjectMenu.Size = new System.Drawing.Size(189, 22); - this.YbnRemoveFromProjectMenu.Text = "Remove from Project"; - this.YbnRemoveFromProjectMenu.Click += new System.EventHandler(this.YbnRemoveFromProjectMenu_Click); - // - // YbnNewBoundSphereMenu - // - this.YbnNewBoundSphereMenu.Name = "YbnNewBoundSphereMenu"; - this.YbnNewBoundSphereMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundSphereMenu.Text = "Sphere"; - this.YbnNewBoundSphereMenu.Click += new System.EventHandler(this.YbnNewBoundSphereMenu_Click); - // - // YbnNewBoundCapsuleMenu - // - this.YbnNewBoundCapsuleMenu.Name = "YbnNewBoundCapsuleMenu"; - this.YbnNewBoundCapsuleMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundCapsuleMenu.Text = "Capsule"; - this.YbnNewBoundCapsuleMenu.Click += new System.EventHandler(this.YbnNewBoundCapsuleMenu_Click); - // - // YbnNewBoundBoxMenu - // - this.YbnNewBoundBoxMenu.Name = "YbnNewBoundBoxMenu"; - this.YbnNewBoundBoxMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundBoxMenu.Text = "Box"; - this.YbnNewBoundBoxMenu.Click += new System.EventHandler(this.YbnNewBoundBoxMenu_Click); - // - // YbnNewBoundDiscMenu - // - this.YbnNewBoundDiscMenu.Name = "YbnNewBoundDiscMenu"; - this.YbnNewBoundDiscMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundDiscMenu.Text = "Disc"; - this.YbnNewBoundDiscMenu.Click += new System.EventHandler(this.YbnNewBoundDiscMenu_Click); - // - // YbnNewBoundCylinderMenu - // - this.YbnNewBoundCylinderMenu.Name = "YbnNewBoundCylinderMenu"; - this.YbnNewBoundCylinderMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundCylinderMenu.Text = "Cylinder"; - this.YbnNewBoundCylinderMenu.Click += new System.EventHandler(this.YbnNewBoundCylinderMenu_Click); - // - // YbnNewBoundClothMenu - // - this.YbnNewBoundClothMenu.Name = "YbnNewBoundClothMenu"; - this.YbnNewBoundClothMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundClothMenu.Text = "Cloth"; - this.YbnNewBoundClothMenu.Click += new System.EventHandler(this.YbnNewBoundClothMenu_Click); - // - // YbnNewBoundGeometryMenu - // - this.YbnNewBoundGeometryMenu.Name = "YbnNewBoundGeometryMenu"; - this.YbnNewBoundGeometryMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundGeometryMenu.Text = "Geometry"; - this.YbnNewBoundGeometryMenu.Click += new System.EventHandler(this.YbnNewBoundGeometryMenu_Click); - // - // YbnNewBoundGeometryBVHMenu - // - this.YbnNewBoundGeometryBVHMenu.Name = "YbnNewBoundGeometryBVHMenu"; - this.YbnNewBoundGeometryBVHMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundGeometryBVHMenu.Text = "Geometry BVH"; - this.YbnNewBoundGeometryBVHMenu.Click += new System.EventHandler(this.YbnNewBoundGeometryBVHMenu_Click); - // - // YbnNewBoundCompositeMenu - // - this.YbnNewBoundCompositeMenu.Name = "YbnNewBoundCompositeMenu"; - this.YbnNewBoundCompositeMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewBoundCompositeMenu.Text = "Composite"; - this.YbnNewBoundCompositeMenu.Click += new System.EventHandler(this.YbnNewBoundCompositeMenu_Click); - // - // YbnNewPolygonTriangleMenu - // - this.YbnNewPolygonTriangleMenu.Name = "YbnNewPolygonTriangleMenu"; - this.YbnNewPolygonTriangleMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewPolygonTriangleMenu.Text = "Triangle"; - this.YbnNewPolygonTriangleMenu.Click += new System.EventHandler(this.YbnNewPolygonTriangleMenu_Click); - // - // YbnNewPolygonSphereMenu - // - this.YbnNewPolygonSphereMenu.Name = "YbnNewPolygonSphereMenu"; - this.YbnNewPolygonSphereMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewPolygonSphereMenu.Text = "Sphere"; - this.YbnNewPolygonSphereMenu.Click += new System.EventHandler(this.YbnNewPolygonSphereMenu_Click); - // - // YbnNewPolygonCapsuleMenu - // - this.YbnNewPolygonCapsuleMenu.Name = "YbnNewPolygonCapsuleMenu"; - this.YbnNewPolygonCapsuleMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewPolygonCapsuleMenu.Text = "Capsule"; - this.YbnNewPolygonCapsuleMenu.Click += new System.EventHandler(this.YbnNewPolygonCapsuleMenu_Click); - // - // YbnNewPolygonBoxMenu - // - this.YbnNewPolygonBoxMenu.Name = "YbnNewPolygonBoxMenu"; - this.YbnNewPolygonBoxMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewPolygonBoxMenu.Text = "Box"; - this.YbnNewPolygonBoxMenu.Click += new System.EventHandler(this.YbnNewPolygonBoxMenu_Click); - // - // YbnNewPolygonCylinderMenu - // - this.YbnNewPolygonCylinderMenu.Name = "YbnNewPolygonCylinderMenu"; - this.YbnNewPolygonCylinderMenu.Size = new System.Drawing.Size(180, 22); - this.YbnNewPolygonCylinderMenu.Text = "Cylinder"; - this.YbnNewPolygonCylinderMenu.Click += new System.EventHandler(this.YbnNewPolygonCylinderMenu_Click); - // - // ToolbarNewYbnMenu - // - this.ToolbarNewYbnMenu.Name = "ToolbarNewYbnMenu"; - this.ToolbarNewYbnMenu.Size = new System.Drawing.Size(180, 22); - this.ToolbarNewYbnMenu.Text = "New Ybn File"; - this.ToolbarNewYbnMenu.Click += new System.EventHandler(this.ToolbarNewYbnMenu_Click); - // - // ToolbarOpenYbnMenu - // - this.ToolbarOpenYbnMenu.Name = "ToolbarOpenYbnMenu"; - this.ToolbarOpenYbnMenu.Size = new System.Drawing.Size(181, 22); - this.ToolbarOpenYbnMenu.Text = "Open Ybn File..."; - this.ToolbarOpenYbnMenu.Click += new System.EventHandler(this.ToolbarOpenYbnMenu_Click); - // - // FileNewYbnMenu - // - this.FileNewYbnMenu.Name = "FileNewYbnMenu"; - this.FileNewYbnMenu.Size = new System.Drawing.Size(180, 22); - this.FileNewYbnMenu.Text = "Ybn File"; - this.FileNewYbnMenu.Click += new System.EventHandler(this.FileNewYbnMenu_Click); - // - // FileOpenYbnMenu - // - this.FileOpenYbnMenu.Name = "FileOpenYbnMenu"; - this.FileOpenYbnMenu.Size = new System.Drawing.Size(180, 22); - this.FileOpenYbnMenu.Text = "Ybn File..."; - this.FileOpenYbnMenu.Click += new System.EventHandler(this.FileOpenYbnMenu_Click); + this.OptionsAutoCalcYmapExtentsMenu.Checked = true; + this.OptionsAutoCalcYmapExtentsMenu.CheckState = System.Windows.Forms.CheckState.Checked; + this.OptionsAutoCalcYmapExtentsMenu.Name = "OptionsAutoCalcYmapExtentsMenu"; + this.OptionsAutoCalcYmapExtentsMenu.Size = new System.Drawing.Size(226, 22); + this.OptionsAutoCalcYmapExtentsMenu.Text = "Auto Calculate Ymap Extents"; + this.OptionsAutoCalcYmapExtentsMenu.Click += new System.EventHandler(this.OptionsAutoCalcYmapExtentsMenu_Click); // // ProjectForm // @@ -1633,9 +1662,9 @@ private System.Windows.Forms.MenuStrip MainMenu; private System.Windows.Forms.ToolStripMenuItem FileMenu; private System.Windows.Forms.ToolStripMenuItem EditMenu; - private System.Windows.Forms.ToolStripMenuItem RenderMenu; - private System.Windows.Forms.ToolStripMenuItem RenderShowGtavMapMenu; - private System.Windows.Forms.ToolStripMenuItem RenderShowProjectItemsMenu; + private System.Windows.Forms.ToolStripMenuItem OptionsMenu; + private System.Windows.Forms.ToolStripMenuItem OptionsRenderGtavMapMenu; + private System.Windows.Forms.ToolStripMenuItem OptionsRenderProjectItemsMenu; private System.Windows.Forms.ToolStripMenuItem ToolsMenu; private System.Windows.Forms.ToolStripMenuItem ToolsImportMenyooXmlMenu; private WeifenLuo.WinFormsUI.Docking.DockPanel MainDockPanel; @@ -1802,5 +1831,8 @@ private System.Windows.Forms.ToolStripMenuItem ToolbarOpenYbnMenu; private System.Windows.Forms.ToolStripMenuItem FileNewYbnMenu; private System.Windows.Forms.ToolStripMenuItem FileOpenYbnMenu; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator27; + private System.Windows.Forms.ToolStripMenuItem OptionsAutoCalcYmapFlagsMenu; + private System.Windows.Forms.ToolStripMenuItem OptionsAutoCalcYmapExtentsMenu; } } \ No newline at end of file diff --git a/CodeWalker/Project/ProjectForm.cs b/CodeWalker/Project/ProjectForm.cs index e0e2043..62c4618 100644 --- a/CodeWalker/Project/ProjectForm.cs +++ b/CodeWalker/Project/ProjectForm.cs @@ -82,6 +82,8 @@ namespace CodeWalker.Project private bool renderitems = true; private bool hidegtavmap = false; + private bool autoymapflags = true; + private bool autoymapextents = true; private object projectsyncroot = new object(); public object ProjectSyncRoot { get { return projectsyncroot; } } @@ -1689,6 +1691,7 @@ namespace CodeWalker.Project saveas = true; } + AutoUpdateYmapFlagsExtents(); byte[] data; lock (projectsyncroot) //need to sync writes to ymap objects... @@ -1699,15 +1702,16 @@ namespace CodeWalker.Project filepath = ShowSaveDialog("Ymap files|*.ymap", filepath); if (string.IsNullOrEmpty(filepath)) { return; } - - string newname = Path.GetFileNameWithoutExtension(filepath); - JenkIndex.Ensure(newname); - CurrentYmapFile.FilePath = filepath; - CurrentYmapFile.RpfFileEntry.Name = new FileInfo(filepath).Name; - CurrentYmapFile.Name = CurrentYmapFile.RpfFileEntry.Name; - CurrentYmapFile._CMapData.name = new MetaHash(JenkHash.GenHash(newname)); } + filepath = filepath.ToLowerInvariant(); + string newname = Path.GetFileNameWithoutExtension(filepath); + JenkIndex.Ensure(newname); + CurrentYmapFile.FilePath = filepath; + CurrentYmapFile.RpfFileEntry.Name = new FileInfo(filepath).Name; + CurrentYmapFile.Name = CurrentYmapFile.RpfFileEntry.Name; + CurrentYmapFile._CMapData.name = new MetaHash(JenkHash.GenHash(newname)); + data = CurrentYmapFile.Save(); } @@ -1789,6 +1793,23 @@ namespace CodeWalker.Project if (CurrentProjectFile == null) return false; return CurrentProjectFile.ContainsYmap(ymap); } + public void AutoUpdateYmapFlagsExtents() + { + if (CurrentYmapFile == null) return; + if (autoymapextents) + { + CurrentYmapFile.CalcExtents(); + } + if (autoymapflags) + { + CurrentYmapFile.CalcFlags(); + } + var panel = FindPanel((EditYmapPanel p) => p.Tag == CurrentYmapFile); + if (panel != null) + { + panel.SetYmap(CurrentYmapFile); + } + } public YmapEntityDef NewEntity(YmapEntityDef copy = null, bool copyPosition = false, bool selectNew = true) { @@ -8701,15 +8722,25 @@ namespace CodeWalker.Project ImportMenyooXml(); } - private void RenderShowGtavMapMenu_Click(object sender, EventArgs e) + private void OptionsRenderGtavMapMenu_Click(object sender, EventArgs e) { - RenderShowGtavMapMenu.Checked = !RenderShowGtavMapMenu.Checked; - hidegtavmap = !RenderShowGtavMapMenu.Checked; + OptionsRenderGtavMapMenu.Checked = !OptionsRenderGtavMapMenu.Checked; + hidegtavmap = !OptionsRenderGtavMapMenu.Checked; } - private void RenderShowProjectItemsMenu_Click(object sender, EventArgs e) + private void OptionsRenderProjectItemsMenu_Click(object sender, EventArgs e) { - RenderShowProjectItemsMenu.Checked = !RenderShowProjectItemsMenu.Checked; - renderitems = RenderShowProjectItemsMenu.Checked; + OptionsRenderProjectItemsMenu.Checked = !OptionsRenderProjectItemsMenu.Checked; + renderitems = OptionsRenderProjectItemsMenu.Checked; + } + private void OptionsAutoCalcYmapFlagsMenu_Click(object sender, EventArgs e) + { + OptionsAutoCalcYmapFlagsMenu.Checked = !OptionsAutoCalcYmapFlagsMenu.Checked; + autoymapflags = OptionsAutoCalcYmapFlagsMenu.Checked; + } + private void OptionsAutoCalcYmapExtentsMenu_Click(object sender, EventArgs e) + { + OptionsAutoCalcYmapExtentsMenu.Checked = !OptionsAutoCalcYmapExtentsMenu.Checked; + autoymapextents = OptionsAutoCalcYmapExtentsMenu.Checked; } private void ToolbarNewButton_ButtonClick(object sender, EventArgs e)