public ObjectWindow(GameIffResource iff, GameObject obj) : this() { DefinitionEditor.Init(null, this); IffResView.Init(); IffResView.ChangeIffSource(iff); ActiveObj = obj; ActiveIff = iff; RegenObjMeta(iff); }
public void SetTargetObject(GameObject obj) { ActiveObj = obj; if (ActiveObj != null) { var sgs = ActiveObj.Resource.List <GLOB>(); if (sgs != null && sgs.Count > 0) { SemiglobalName = sgs[0].Name; SemiGlobalButton.Text = "Semi-Global (" + SemiglobalName + ")"; SemiGlobalButton.Enabled = true; } else { SemiglobalName = ""; SemiGlobalButton.Text = "Semi-Global"; SemiGlobalButton.Enabled = false; } } ObjThumb.ShowObject(obj.OBJ.GUID); IffResView.ChangeActiveObject(ActiveObj); FuncEditor.SetActiveObject(ActiveObj); DrawgroupEdit.SetActiveObject(ActiveObj); FSOMEdit.SetActiveObject(ActiveObj); XMLEdit.SetActiveObject(ActiveObj); PIFFEditor.SetActiveObject(ActiveObj); if (Content.Content.Get().Upgrades == null) { objPages.Controls.Remove(UpgradeTab); } else { UpgradeEditor.SetActiveObject(ActiveObj); } //update top var ObjNameLabel.Text = obj.OBJ.ChunkLabel; ObjDescLabel.Text = "§----"; if (obj.OBJ.MasterID == 0) { ObjMultitileLabel.Text = "Single-tile object."; } else if (obj.OBJ.SubIndex < 0) { ObjMultitileLabel.Text = "Multitile master object."; } else { ObjMultitileLabel.Text = "Multitile part. (" + (obj.OBJ.SubIndex >> 8) + ", " + (obj.OBJ.SubIndex & 0xFF) + ")"; } DefinitionEditor.UpdateOBJD(ActiveObj); }