private void BuildOffer(VMEODSecureTradeObject[] offer, UICatalog target) { var inventory = LotController.vm.MyInventory; var offercat = new List <UICatalogElement>(); foreach (var item in offer) { ObjectCatalogItem?catItem; uint tag = 0; if (item == null || item.PID == DragUID || (item.LotID > 0 && DragUID > 0 && DragUID < 3)) { catItem = new ObjectCatalogItem() { GUID = uint.MaxValue }; } else if (item.LotID > 0) { var c = GenCatItem((uint)((item.GUID == 1) ? 0x3495FC60 : 0x34B4B46A)); if (item.GUID == 2) { c.Name = item.LotName + " w/ " + item.ObjectCount + " objects ($" + item.ObjectValue + ")"; } else { c.Name += " - " + item.LotName; } catItem = c; tag = item.GUID; } else { catItem = Content.Content.Get().WorldCatalog.GetItemByGUID(item.GUID); if (catItem == null) { catItem = GenCatItem(item.GUID); } tag = item.PID; } var obj = catItem.Value; obj.Price = 0; offercat.Add(new UICatalogElement { Item = obj, Tag = tag }); } target.SetCategory(offercat); }
public UIAbstractCatalogPanel(string mode, UILotControl lotController) { LotController = lotController; Holder = LotController.ObjectHolder; var useSmall = (FSOEnvironment.UIZoomFactor > 1f || GlobalSettings.Default.GraphicsWidth < 1024); UseSmall = useSmall; var script = this.RenderScript(mode + (useSmall ? "" : "1024") + ".uis"); Script = script; Background = new UIImage(GetTexture(useSmall ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 0; Background.BlockInput(); this.AddAt(0, Background); Size = Background.Size.ToVector2(); Catalog = new UICatalog((mode == "buildpanel") ? (useSmall ? 10 : 20) : (useSmall ? 14 : 24)); Catalog.LotControl = lotController; Catalog.OnSelectionChange += new CatalogSelectionChangeDelegate(Catalog_OnSelectionChange); this.Add(Catalog); //prepare catalog map InitCategoryMap(); foreach (UIButton btn in CategoryMap.Keys) { btn.OnButtonClick += ChangeCategory; } Holder.OnPickup += HolderPickup; Holder.OnDelete += HolderDelete; Holder.OnPutDown += HolderPutDown; Holder.BeforeRelease += HolderBeforeRelease; DynamicOverlay.Add(QueryPanel); ObjLimitLabel = new UILabel(); ObjLimitLabel.CaptionStyle = ObjLimitLabel.CaptionStyle.Clone(); ObjLimitLabel.CaptionStyle.Shadow = true; ObjLimitLabel.CaptionStyle.Color = Microsoft.Xna.Framework.Color.White; ObjLimitLabel.Caption = "127/250 Objects"; ObjLimitLabel.Y = -20; ObjLimitLabel.X = Background.Width / 2 - 100; ObjLimitLabel.Size = new Microsoft.Xna.Framework.Vector2(200, 0); ObjLimitLabel.Alignment = TextAlignment.Center; DynamicOverlay.Add(ObjLimitLabel); }
public UIBuyMode(UILotControl lotController) { LotController = lotController; Holder = LotController.ObjectHolder; var useSmall = (FSOEnvironment.UIZoomFactor > 1f || GlobalSettings.Default.GraphicsWidth < 1024); UseSmall = useSmall; var script = this.RenderScript("buypanel" + (useSmall?"":"1024") + ".uis"); Background = new UIImage(GetTexture(useSmall ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 0; Background.BlockInput(); this.AddAt(0, Background); Size = Background.Size.ToVector2(); InventoryButtonBackgroundImage = script.Create <UIImage>("InventoryButtonBackgroundImage"); this.AddAt(1, InventoryButtonBackgroundImage); CatBg = script.Create <UIImage>("ProductCatalogImage"); this.AddAt(2, CatBg); InventoryCatBg = script.Create <UIImage>("InventoryCatalogRoommateImage"); this.AddAt(3, InventoryCatBg); NonRMInventoryCatBg = script.Create <UIImage>("InventoryCatalogVisitorImage"); this.AddAt(4, NonRMInventoryCatBg); InventoryCatalogVisitorIcon = script.Create <UIImage>("InventoryCatalogVisitorIcon"); this.AddAt(5, InventoryCatalogVisitorIcon); Catalog = new UICatalog(useSmall ? 14 : 24); Catalog.LotControl = lotController; Catalog.OnSelectionChange += new CatalogSelectionChangeDelegate(Catalog_OnSelectionChange); Catalog.Position = new Microsoft.Xna.Framework.Vector2(275, 7); this.Add(Catalog); CategoryMap = new Dictionary <UIButton, int> { { SeatingButton, 12 }, { SurfacesButton, 13 }, { AppliancesButton, 14 }, { ElectronicsButton, 15 }, { SkillButton, 16 }, { DecorativeButton, 17 }, { MiscButton, 18 }, { LightingButton, 19 }, { PetsButton, 20 }, }; SeatingButton.OnButtonClick += ChangeCategory; SurfacesButton.OnButtonClick += ChangeCategory; DecorativeButton.OnButtonClick += ChangeCategory; ElectronicsButton.OnButtonClick += ChangeCategory; AppliancesButton.OnButtonClick += ChangeCategory; SkillButton.OnButtonClick += ChangeCategory; LightingButton.OnButtonClick += ChangeCategory; MiscButton.OnButtonClick += ChangeCategory; PetsButton.OnButtonClick += ChangeCategory; MapBuildingModeButton.OnButtonClick += ChangeCategory; InventoryButton.OnButtonClick += ChangeCategory; ProductCatalogPreviousPageButton.OnButtonClick += PreviousPage; InventoryCatalogRoommatePreviousPageButton.OnButtonClick += PreviousPage; InventoryCatalogVisitorPreviousPageButton.OnButtonClick += PreviousPage; ProductCatalogNextPageButton.OnButtonClick += NextPage; InventoryCatalogRoommateNextPageButton.OnButtonClick += NextPage; InventoryCatalogVisitorNextPageButton.OnButtonClick += NextPage; ProductCatalogSlider.MinValue = 0; InventoryCatalogRoommateSlider.MinValue = 0; InventoryCatalogVisitorSlider.MinValue = 0; ProductCatalogSlider.OnChange += PageSlider; InventoryCatalogRoommateSlider.OnChange += PageSlider; InventoryCatalogVisitorSlider.OnChange += PageSlider; SetMode(0); SetRoomCategories(false); Holder.OnPickup += HolderPickup; Holder.OnDelete += HolderDelete; Holder.OnPutDown += HolderPutDown; DynamicOverlay.Add(QueryPanel); ObjLimitLabel = new UILabel(); ObjLimitLabel.CaptionStyle = ObjLimitLabel.CaptionStyle.Clone(); ObjLimitLabel.CaptionStyle.Shadow = true; ObjLimitLabel.CaptionStyle.Color = Microsoft.Xna.Framework.Color.White; ObjLimitLabel.Caption = "127/250 Objects"; ObjLimitLabel.Y = -20; ObjLimitLabel.X = Background.Width / 2 - 100; ObjLimitLabel.Size = new Microsoft.Xna.Framework.Vector2(200, 0); ObjLimitLabel.Alignment = TextAlignment.Center; DynamicOverlay.Add(ObjLimitLabel); }
public UIBuyMode(UILotControl lotController) { LotController = lotController; Holder = LotController.ObjectHolder; QueryPanel = LotController.QueryPanel; var script = this.RenderScript("buypanel" + ((GlobalSettings.Default.GraphicsWidth < 1024)?"":"1024") + ".uis"); Background = new UIImage(GetTexture((GlobalSettings.Default.GraphicsWidth < 1024) ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 0; Background.BlockInput(); this.AddAt(0, Background); CatBg = new UIImage(catalogBackground); CatBg.Position = new Microsoft.Xna.Framework.Vector2(250, 5); this.AddAt(1, CatBg); InventoryCatBg = new UIImage(inventoryRoommateBackground); InventoryCatBg.Position = new Microsoft.Xna.Framework.Vector2(250, 5); this.AddAt(2, InventoryCatBg); NonRMInventoryCatBg = new UIImage(inventoryVisitorBackground); NonRMInventoryCatBg.Position = new Microsoft.Xna.Framework.Vector2(68, 5); this.AddAt(3, InventoryCatBg); Catalog = new UICatalog((GlobalSettings.Default.GraphicsWidth < 1024) ? 14 : 24); Catalog.OnSelectionChange += new CatalogSelectionChangeDelegate(Catalog_OnSelectionChange); Catalog.Position = new Microsoft.Xna.Framework.Vector2(275, 7); this.Add(Catalog); CategoryMap = new Dictionary <UIButton, int> { { SeatingButton, 12 }, { SurfacesButton, 13 }, { AppliancesButton, 14 }, { ElectronicsButton, 15 }, { SkillButton, 16 }, { DecorativeButton, 17 }, { MiscButton, 18 }, { LightingButton, 19 }, { PetsButton, 20 }, }; SeatingButton.OnButtonClick += ChangeCategory; SurfacesButton.OnButtonClick += ChangeCategory; DecorativeButton.OnButtonClick += ChangeCategory; ElectronicsButton.OnButtonClick += ChangeCategory; AppliancesButton.OnButtonClick += ChangeCategory; SkillButton.OnButtonClick += ChangeCategory; LightingButton.OnButtonClick += ChangeCategory; MiscButton.OnButtonClick += ChangeCategory; PetsButton.OnButtonClick += ChangeCategory; MapBuildingModeButton.OnButtonClick += ChangeCategory; ProductCatalogPreviousPageButton.OnButtonClick += PreviousPage; InventoryCatalogRoommatePreviousPageButton.OnButtonClick += PreviousPage; InventoryCatalogVisitorPreviousPageButton.OnButtonClick += PreviousPage; ProductCatalogNextPageButton.OnButtonClick += NextPage; InventoryCatalogRoommateNextPageButton.OnButtonClick += NextPage; InventoryCatalogVisitorNextPageButton.OnButtonClick += NextPage; ProductCatalogSlider.MinValue = 0; InventoryCatalogRoommateSlider.MinValue = 0; InventoryCatalogVisitorSlider.MinValue = 0; ProductCatalogSlider.OnChange += PageSlider; InventoryCatalogRoommateSlider.OnChange += PageSlider; InventoryCatalogVisitorSlider.OnChange += PageSlider; SetMode(0); SetRoomCategories(false); Holder.OnPickup += HolderPickup; Holder.OnDelete += HolderDelete; Holder.OnPutDown += HolderPutDown; }
public UIBuildMode(UILotControl lotController) { LotController = lotController; Holder = LotController.ObjectHolder; QueryPanel = LotController.QueryPanel; var script = this.RenderScript("buildpanel" + ((GlobalSettings.Default.GraphicsWidth < 1024) ? "" : "1024") + ".uis"); Background = new UIImage(GetTexture((GlobalSettings.Default.GraphicsWidth < 1024) ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 0; Background.BlockInput(); this.AddAt(0, Background); Divider = new UIImage(dividerImage); Divider.Position = new Vector2(337, 14); this.AddAt(1, Divider); SubToolBg = new UIImage(subtoolsBackground); SubToolBg.Position = new Vector2(336, 5); this.AddAt(2, SubToolBg); Catalog = new UICatalog((GlobalSettings.Default.GraphicsWidth < 1024) ? 10 : 20); Catalog.OnSelectionChange += new CatalogSelectionChangeDelegate(Catalog_OnSelectionChange); Catalog.Position = new Vector2(364, 7); this.Add(Catalog); CategoryMap = new Dictionary <UIButton, int> { { TerrainButton, 29 }, { WaterButton, 5 }, { WallButton, 7 }, { WallpaperButton, 8 }, { StairButton, 2 }, { FireplaceButton, 4 }, { PlantButton, 3 }, { FloorButton, 9 }, { DoorButton, 0 }, { WindowButton, 1 }, { RoofButton, 28 }, { HandButton, 28 }, }; TerrainButton.OnButtonClick += ChangeCategory; WaterButton.OnButtonClick += ChangeCategory; WallButton.OnButtonClick += ChangeCategory; WallpaperButton.OnButtonClick += ChangeCategory; StairButton.OnButtonClick += ChangeCategory; FireplaceButton.OnButtonClick += ChangeCategory; PlantButton.OnButtonClick += ChangeCategory; FloorButton.OnButtonClick += ChangeCategory; DoorButton.OnButtonClick += ChangeCategory; WindowButton.OnButtonClick += ChangeCategory; RoofButton.OnButtonClick += ChangeCategory; HandButton.OnButtonClick += ChangeCategory; PreviousPageButton.OnButtonClick += PreviousPage; NextPageButton.OnButtonClick += NextPage; SubtoolsSlider.MinValue = 0; SubtoolsSlider.OnChange += PageSlider; Holder.OnPickup += HolderPickup; Holder.OnDelete += HolderDelete; Holder.OnPutDown += HolderPutDown; }
public UIBuildMode(UILotControl lotController) { LotController = lotController; Holder = LotController.ObjectHolder; QueryPanel = LotController.QueryPanel; var useSmall = (FSOEnvironment.UIZoomFactor > 1f || GlobalSettings.Default.GraphicsWidth < 1024); var script = this.RenderScript("buildpanel" + (useSmall ? "" : "1024") + ".uis"); Background = new UIImage(GetTexture(useSmall ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 0; Background.BlockInput(); this.AddAt(0, Background); Divider = new UIImage(dividerImage); Divider.Position = new Vector2(337, 14); this.AddAt(1, Divider); SubToolBg = new UIImage(subtoolsBackground); SubToolBg.Position = new Vector2(336, 5); this.AddAt(2, SubToolBg); Catalog = new UICatalog(useSmall ? 10 : 20); Catalog.OnSelectionChange += new CatalogSelectionChangeDelegate(Catalog_OnSelectionChange); Catalog.Position = new Vector2(364, 7); this.Add(Catalog); CategoryMap = new Dictionary <UIButton, int> { { TerrainButton, 10 }, { WaterButton, 5 }, { WallButton, 7 }, { WallpaperButton, 8 }, { StairButton, 2 }, { FireplaceButton, 4 }, { PlantButton, 3 }, { FloorButton, 9 }, { DoorButton, 0 }, { WindowButton, 1 }, { RoofButton, 6 }, { HandButton, 28 }, }; TerrainButton.OnButtonClick += ChangeCategory; WaterButton.OnButtonClick += ChangeCategory; WallButton.OnButtonClick += ChangeCategory; WallpaperButton.OnButtonClick += ChangeCategory; StairButton.OnButtonClick += ChangeCategory; FireplaceButton.OnButtonClick += ChangeCategory; PlantButton.OnButtonClick += ChangeCategory; FloorButton.OnButtonClick += ChangeCategory; DoorButton.OnButtonClick += ChangeCategory; WindowButton.OnButtonClick += ChangeCategory; RoofButton.OnButtonClick += ChangeCategory; HandButton.OnButtonClick += ChangeCategory; PreviousPageButton.OnButtonClick += PreviousPage; NextPageButton.OnButtonClick += NextPage; SubtoolsSlider.MinValue = 0; SubtoolsSlider.OnChange += PageSlider; Holder.OnPickup += HolderPickup; Holder.OnDelete += HolderDelete; Holder.OnPutDown += HolderPutDown; Add(QueryPanel); RoofSteepBtn = new UIButton(GetTexture(0x4C200000001)); RoofSteepBtn.X = 46; RoofSteepBtn.Y = 6; Add(RoofSteepBtn); RoofShallowBtn = new UIButton(GetTexture(0x4C700000001)); RoofShallowBtn.X = 46; RoofShallowBtn.Y = 92; Add(RoofShallowBtn); RoofSlider = new UISlider(); RoofSlider.Orientation = 1; RoofSlider.Texture = GetTexture(0x4AB00000001); RoofSlider.MinValue = 0f; RoofSlider.MaxValue = 1.25f; RoofSlider.AllowDecimals = true; RoofSlider.AttachButtons(RoofSteepBtn, RoofShallowBtn, 1); RoofSlider.X = 48; RoofSlider.Y = 24; RoofSlider.OnChange += (elem) => { if (RoofSlider.Value != (1.25f - LotController.vm.Context.Architecture.RoofPitch)) { LotController.vm.Context.Blueprint.RoofComp.SetStylePitch( LotController.vm.Context.Architecture.RoofStyle, (1.25f - RoofSlider.Value) ); SendRoofValue = true; } }; RoofSlider.SetSize(0, 64f); Add(RoofSlider); RoofSteepBtn.Visible = false; RoofShallowBtn.Visible = false; RoofSlider.Visible = false; }
public UIBuildMode(UILotControl lotController) { LotController = lotController; Holder = LotController.ObjectHolder; QueryPanel = LotController.QueryPanel; var script = this.RenderScript("buildpanel" + ((GlobalSettings.Default.GraphicsWidth < 1024) ? "" : "1024") + ".uis"); Background = new UIImage(GetTexture((GlobalSettings.Default.GraphicsWidth < 1024) ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 0; Background.BlockInput(); this.AddAt(0, Background); Divider = new UIImage(dividerImage); Divider.Position = new Vector2(337, 14); this.AddAt(1, Divider); SubToolBg = new UIImage(subtoolsBackground); SubToolBg.Position = new Vector2(336, 5); this.AddAt(2, SubToolBg); Catalog = new UICatalog((GlobalSettings.Default.GraphicsWidth < 1024) ? 10 : 20); Catalog.OnSelectionChange += new CatalogSelectionChangeDelegate(Catalog_OnSelectionChange); Catalog.Position = new Vector2(364, 7); this.Add(Catalog); CategoryMap = new Dictionary<UIButton, int> { { TerrainButton, 29 }, //currently set to special objects { WaterButton, 5 }, { WallButton, 7 }, { WallpaperButton, 8 }, { StairButton, 2 }, { FireplaceButton, 4 }, { PlantButton, 3 }, { FloorButton, 9 }, { DoorButton, 0 }, { WindowButton, 1 }, { RoofButton, 28 }, { HandButton, 28 }, }; TerrainButton.OnButtonClick += ChangeCategory; WaterButton.OnButtonClick += ChangeCategory; WallButton.OnButtonClick += ChangeCategory; WallpaperButton.OnButtonClick += ChangeCategory; StairButton.OnButtonClick += ChangeCategory; FireplaceButton.OnButtonClick += ChangeCategory; PlantButton.OnButtonClick += ChangeCategory; FloorButton.OnButtonClick += ChangeCategory; DoorButton.OnButtonClick += ChangeCategory; WindowButton.OnButtonClick += ChangeCategory; RoofButton.OnButtonClick += ChangeCategory; HandButton.OnButtonClick += ChangeCategory; PreviousPageButton.OnButtonClick += PreviousPage; NextPageButton.OnButtonClick += NextPage; SubtoolsSlider.MinValue = 0; SubtoolsSlider.OnChange += PageSlider; Holder.OnPickup += HolderPickup; Holder.OnDelete += HolderDelete; Holder.OnPutDown += HolderPutDown; }
private bool Roommate = true; //if false, shows visitor inventory only. #endregion Fields #region Constructors public UIBuyMode(UILotControl lotController) { LotController = lotController; Holder = LotController.ObjectHolder; QueryPanel = LotController.QueryPanel; var useSmall = (FSOEnvironment.UIZoomFactor > 1f || GlobalSettings.Default.GraphicsWidth < 1024); var script = this.RenderScript("buypanel"+(useSmall?"":"1024")+".uis"); Background = new UIImage(GetTexture(useSmall ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 0; Background.BlockInput(); this.AddAt(0, Background); CatBg = new UIImage(catalogBackground); CatBg.Position = new Microsoft.Xna.Framework.Vector2(250, 5); this.AddAt(1, CatBg); InventoryCatBg = new UIImage(inventoryRoommateBackground); InventoryCatBg.Position = new Microsoft.Xna.Framework.Vector2(250, 5); this.AddAt(2, InventoryCatBg); NonRMInventoryCatBg = new UIImage(inventoryVisitorBackground); NonRMInventoryCatBg.Position = new Microsoft.Xna.Framework.Vector2(68, 5); this.AddAt(3, InventoryCatBg); Catalog = new UICatalog(useSmall ? 14 : 24); Catalog.OnSelectionChange += new CatalogSelectionChangeDelegate(Catalog_OnSelectionChange); Catalog.Position = new Microsoft.Xna.Framework.Vector2(275, 7); this.Add(Catalog); CategoryMap = new Dictionary<UIButton, int> { { SeatingButton, 12 }, { SurfacesButton, 13 }, { AppliancesButton, 14 }, { ElectronicsButton, 15 }, { SkillButton, 16 }, { DecorativeButton, 17 }, { MiscButton, 18 }, { LightingButton, 19 }, { PetsButton, 20 }, }; SeatingButton.OnButtonClick += ChangeCategory; SurfacesButton.OnButtonClick += ChangeCategory; DecorativeButton.OnButtonClick += ChangeCategory; ElectronicsButton.OnButtonClick += ChangeCategory; AppliancesButton.OnButtonClick += ChangeCategory; SkillButton.OnButtonClick += ChangeCategory; LightingButton.OnButtonClick += ChangeCategory; MiscButton.OnButtonClick += ChangeCategory; PetsButton.OnButtonClick += ChangeCategory; MapBuildingModeButton.OnButtonClick += ChangeCategory; ProductCatalogPreviousPageButton.OnButtonClick += PreviousPage; InventoryCatalogRoommatePreviousPageButton.OnButtonClick += PreviousPage; InventoryCatalogVisitorPreviousPageButton.OnButtonClick += PreviousPage; ProductCatalogNextPageButton.OnButtonClick += NextPage; InventoryCatalogRoommateNextPageButton.OnButtonClick += NextPage; InventoryCatalogVisitorNextPageButton.OnButtonClick += NextPage; ProductCatalogSlider.MinValue = 0; InventoryCatalogRoommateSlider.MinValue = 0; InventoryCatalogVisitorSlider.MinValue = 0; ProductCatalogSlider.OnChange += PageSlider; InventoryCatalogRoommateSlider.OnChange += PageSlider; InventoryCatalogVisitorSlider.OnChange += PageSlider; SetMode(0); SetRoomCategories(false); Holder.OnPickup += HolderPickup; Holder.OnDelete += HolderDelete; Holder.OnPutDown += HolderPutDown; Add(QueryPanel); }
public UIBuildMode(UILotControl lotController) { LotController = lotController; Holder = LotController.ObjectHolder; var useSmall = (FSOEnvironment.UIZoomFactor > 1f || GlobalSettings.Default.GraphicsWidth < 1024); var script = this.RenderScript("buildpanel" + (useSmall ? "" : "1024") + ".uis"); Background = new UIImage(GetTexture(useSmall ? (ulong)0x000000D800000002 : (ulong)0x0000018300000002)); Background.Y = 0; Background.BlockInput(); this.AddAt(0, Background); Size = Background.Size.ToVector2(); Divider = new UIImage(dividerImage); Divider.Position = new Vector2(337, 14); this.AddAt(1, Divider); SubToolBg = new UIImage(subtoolsBackground); SubToolBg.Position = new Vector2(336, 5); this.AddAt(2, SubToolBg); Catalog = new UICatalog(useSmall ? 10 : 20); Catalog.ActiveVM = lotController.vm; Catalog.OnSelectionChange += new CatalogSelectionChangeDelegate(Catalog_OnSelectionChange); Catalog.Position = new Vector2(364, 7); this.Add(Catalog); CategoryMap = new Dictionary <UIButton, int> { { TerrainButton, 29 }, { WaterButton, 5 }, { WallButton, 7 }, { WallpaperButton, 8 }, { StairButton, 2 }, { FireplaceButton, 4 }, { PlantButton, 3 }, { FloorButton, 9 }, { DoorButton, 0 }, { WindowButton, 1 }, { RoofButton, 6 }, { HandButton, 28 }, }; TerrainButton.Disabled = (LotController?.ActiveEntity?.TSOState as VMTSOAvatarState)?.Permissions < VMTSOAvatarPermissions.Admin; TerrainButton.OnButtonClick += ChangeCategory; WaterButton.OnButtonClick += ChangeCategory; WallButton.OnButtonClick += ChangeCategory; WallpaperButton.OnButtonClick += ChangeCategory; StairButton.OnButtonClick += ChangeCategory; FireplaceButton.OnButtonClick += ChangeCategory; PlantButton.OnButtonClick += ChangeCategory; FloorButton.OnButtonClick += ChangeCategory; DoorButton.OnButtonClick += ChangeCategory; WindowButton.OnButtonClick += ChangeCategory; RoofButton.OnButtonClick += ChangeCategory; HandButton.OnButtonClick += ChangeCategory; PreviousPageButton.OnButtonClick += PreviousPage; NextPageButton.OnButtonClick += NextPage; SubtoolsSlider.MinValue = 0; SubtoolsSlider.OnChange += PageSlider; Holder.OnPickup += HolderPickup; Holder.OnDelete += HolderDelete; Holder.OnPutDown += HolderPutDown; DynamicOverlay.Add(QueryPanel); LotController.ObjectHolder.Roommate = true; LotController.QueryPanel.Roommate = true; ObjLimitLabel = new UILabel(); ObjLimitLabel.CaptionStyle = ObjLimitLabel.CaptionStyle.Clone(); ObjLimitLabel.CaptionStyle.Shadow = true; ObjLimitLabel.CaptionStyle.Color = Microsoft.Xna.Framework.Color.White; ObjLimitLabel.Caption = "127/250 Objects"; ObjLimitLabel.Y = -20; ObjLimitLabel.X = Background.Width / 2 - 100; ObjLimitLabel.Size = new Microsoft.Xna.Framework.Vector2(200, 0); ObjLimitLabel.Alignment = TextAlignment.Center; DynamicOverlay.Add(ObjLimitLabel); RoofSteepBtn = new UIButton(GetTexture(0x4C200000001)); RoofSteepBtn.X = 46; RoofSteepBtn.Y = 6; Add(RoofSteepBtn); RoofShallowBtn = new UIButton(GetTexture(0x4C700000001)); RoofShallowBtn.X = 46; RoofShallowBtn.Y = 92; Add(RoofShallowBtn); RoofSlider = new UISlider(); RoofSlider.Orientation = 1; RoofSlider.Texture = GetTexture(0x4AB00000001); RoofSlider.MinValue = 0f; RoofSlider.MaxValue = 1.25f; RoofSlider.AllowDecimals = true; RoofSlider.AttachButtons(RoofSteepBtn, RoofShallowBtn, 0.25f); RoofSlider.X = 48; RoofSlider.Y = 24; RoofSlider.OnChange += (elem) => { if (RoofSlider.Value != (1.25f - LotController.vm.Context.Architecture.RoofPitch)) { LotController.vm.Context.Blueprint.RoofComp.SetStylePitch( LotController.vm.Context.Architecture.RoofStyle, (1.25f - RoofSlider.Value) ); SendRoofValue = true; } }; RoofSlider.SetSize(0, 64f); Add(RoofSlider); RoofSteepBtn.Visible = false; RoofShallowBtn.Visible = false; RoofSlider.Visible = false; }
protected virtual void InitUI() { Small800 = (GlobalSettings.Default.GraphicsWidth < 1024) || Common.FSOEnvironment.UIZoomFactor > 1f; Script = this.RenderScript("securetradingeod" + ((Small800)?"":"1024") + ".uis"); Catalog = new UICatalog(Small800 ? 18 : 28); Script.ApplyControlProperties(Catalog, "InventoryCatalogSecureTrading"); Catalog.X -= 2; Add(Catalog); OfferCatalog = new UICatalog(10); //only uses top row OfferCatalog.Position = Catalog.Position + new Vector2(41, 116); Add(OfferCatalog); OtherOfferCatalog = new UICatalog(10); //only uses top row OtherOfferCatalog.Position = Catalog.Position + new Vector2(41, 166); Add(OtherOfferCatalog); OurAvatarMoneySymbol.CurrentText = "$"; OtherAvatarMoneySymbol.CurrentText = "$"; AmountEntry.Alignment = Framework.TextAlignment.Center; OtherAvatarAmount.Alignment = Framework.TextAlignment.Center; AmountEntry.OnChange += AmountEntry_OnChange; AcceptButton.OnButtonClick += AcceptClicked; OtherAcceptedButton.Disabled = true; OtherAcceptedButton.ForceState = 0; LockoutTimerLabel = new UILabel(); LockoutTimerLabel.Size = AmountEntry.Size; LockoutTimerLabel.Alignment = TextAlignment.Center; LockoutTimerLabel.Position = (AmountEntry.Position + OtherAvatarAmount.Position) / 2; Add(LockoutTimerLabel); SetMyPerson(LotController.vm.MyUID); Add(QueryPanel); InventoryCatalogRoommateImage = Script.Create <UIImage>("InventoryCatalogRoommateImage"); Add(InventoryCatalogRoommateImage); Catalog.OnSelectionChange += Catalog_OnSelectionChange; OfferCatalog.OnSelectionChange += OfferCatalog_OnSelectionChange; OtherOfferCatalog.OnSelectionChange += OtherOfferCatalog_OnSelectionChange; InventoryCatalogSecureTradingSlider.AttachButtons(InventoryCatalogSecureTradingPreviousPageButton, InventoryCatalogSecureTradingNextPageButton, 1f); InventoryCatalogSecureTradingSlider.OnChange += (el) => { SetPage((int)InventoryCatalogSecureTradingSlider.Value); }; BuildInventory(); FindController <SecureTradeController>().GetOurLotsName((name, owner) => { MyLotName = name; OwnerOfLot = owner; if (MyLotName != null) { BuildInventory(); } }); }