/// <summary>Perform the action associated with a component.</summary> /// <param name="cpt">The component.</param> /// <return>whether the component action is processed</return> public override bool handleLeftClick(IAutoComponent cpt) { switch (cpt.m_name) { case "Save": if (m_currentFav > -1) { m_farmerMakeup.SaveFavorite(m_currentFav + 1); m_extraFavButtons[m_currentFav - 6].sourceRect.Y = 26; m_alerts.Add(new Alert(Game1.mouseCursors, new Rectangle(310, 392, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Favorite Saved To Slot " + (m_currentFav + 1) + " .", 1200, false)); Game1.playSound("purchase"); } return(true); case "Load": if (m_currentFav > -1) { if (m_farmerMakeup.LoadFavorite(m_currentFav + 1)) { Game1.playSound("yoba"); } else { m_alerts.Add(new Alert(Game1.mouseCursors, new Rectangle(268, 470, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Uh oh! No Favorite is Set!", 1000, false)); } } return(true); case "Fav": ClickableTextureButton btn = (ClickableTextureButton)cpt; int i = btn.m_par; if (m_currentFav == -1) { m_selectFavLabel.visible = false; m_saveLabel.visible = true; m_loadLabel.visible = true; m_saveFavButton.visible = true; m_loadFavButton.visible = true; } else { m_extraFavButtons[m_currentFav - 6].drawShadow = false; } m_extraFavButtons[i].drawShadow = true; m_currentFav = i + 6; m_saveLabel.label = "Currently selected: " + (m_currentFav + 1) + "."; return(true); default: return(false); } }
/// <summary>Perform the action associated with a component.</summary> /// <param name="cpt">The component.</param> /// <return>whether the component action is processed</return> public override bool handleLeftClick(IAutoComponent cpt) { switch (cpt.m_name) { case "QFav": ClickableTextureButton btn = (ClickableTextureButton)cpt; m_farmerMakeup.SaveFavorite(btn.m_par + 1); this.m_alerts.Add(new Alert(Game1.mouseCursors, new Rectangle(310, 392, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "New Favorite Saved.", 1200, false)); Game1.playSound("purchase"); return(true); default: return(false); } }
/// <summary>Perform the action associated with a component.</summary> /// <param name="cpt">The component.</param> /// <return>whether the component action is processed</return> public override bool handleLeftClick(IAutoComponent cpt) { switch (cpt.m_name) { case "SetDresser": m_globalConfig.ShowDresser = !m_globalConfig.ShowDresser; this.m_showDresserLabel.label = "Show Dresser: " + m_globalConfig.ShowDresser; m_alerts.Add(new Alert(m_menuTextures, new Rectangle(m_globalConfig.ShowDresser ? 80 : 48, 144, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Restart game required.", 1200, false)); m_env.Helper.WriteConfig(m_globalConfig); Game1.playSound("coin"); return(true); case "ClearAccessKey": m_globalConfig.MenuAccessKey = SButton.None; m_accessKeyLabel.label = "Open Menu Key: " + m_globalConfig.MenuAccessKey; m_env.Helper.WriteConfig(m_globalConfig); m_alerts.Add(new Alert(m_menuTextures, new Rectangle(96, 144, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Menu Access Key Cleared.", 1200, false)); Game1.playSound("breathin"); return(true); case "SetAccessKey": m_isSettingAccessMenuKey = true; m_env.Helper.WriteConfig(m_globalConfig); Game1.playSound("breathin"); return(true); case "SetMaleShirt": m_globalConfig.HideMaleSkirts = !m_globalConfig.HideMaleSkirts; m_bottomNumberLabel.label = "Bottoms Types (M-F): " + (m_globalConfig.HideMaleSkirts ? 2 : m_globalConfig.MaleBottomsTypes) + "-" + m_globalConfig.FemaleBottomsTypes; m_env.Helper.WriteConfig(m_globalConfig); m_alerts.Add(new Alert(m_menuTextures, new Rectangle(m_globalConfig.HideMaleSkirts ? 48 : 80, 144, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Skirts " + (m_globalConfig.HideMaleSkirts ? "Hidden" : "Unhidden") + " for Males.", 1200, false)); Game1.playSound("coin"); FarmerMakeup.MaleBottomsTypes = m_globalConfig.HideMaleSkirts ? 2 : m_globalConfig.MaleBottomsTypes; return(true); case "SetGenderButton": m_globalConfig.CanChangeGender = !m_globalConfig.CanChangeGender; m_env.Helper.WriteConfig(m_globalConfig); m_alerts.Add(new Alert(m_menuTextures, new Rectangle(!m_globalConfig.CanChangeGender ? 48 : 80, 144, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, (m_globalConfig.CanChangeGender ? "Enable" : "Disable") + " gender change.", 1200, false)); Game1.playSound("axe"); return(true); case "ZoomLock": m_globalConfig.MenuZoomLock = !m_globalConfig.MenuZoomLock; if (m_globalConfig.MenuZoomLock) { m_playerZoomLevel = Game1.options.zoomLevel; Game1.options.zoomLevel = m_globalConfig.MenuZoomOut? 0.75f : 1f; } else { Game1.options.zoomLevel = m_playerZoomLevel; } Game1.overrideGameMenuReset = true; Game1.game1.refreshWindowSettings(); m_env.Helper.WriteConfig(m_globalConfig); Game1.playSound("coin"); return(true); case "ZoomOut": if (m_globalConfig.MenuZoomLock) { if (m_globalConfig.MenuZoomOut) { return(false); } Game1.options.zoomLevel = 0.75f; Game1.overrideGameMenuReset = true; Game1.game1.refreshWindowSettings(); m_globalConfig.MenuZoomOut = true; m_env.Helper.WriteConfig(m_globalConfig); Game1.playSound("coin"); m_alerts.Add(new Alert(m_menuTextures, new Rectangle(80, 144, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Zoom Setting Changed.", 1200, false, 200)); } else if (Game1.options.zoomLevel > 0.77) { Game1.options.zoomLevel -= 0.05f; Game1.overrideGameMenuReset = true; Game1.game1.refreshWindowSettings(); } return(true); case "ZoomIn": if (m_globalConfig.MenuZoomLock) { if (!m_globalConfig.MenuZoomOut) { return(false); } Game1.options.zoomLevel = 1f; Game1.overrideGameMenuReset = true; Game1.game1.refreshWindowSettings(); m_globalConfig.MenuZoomOut = false; m_env.Helper.WriteConfig(m_globalConfig); Game1.playSound("drumkit6"); m_alerts.Add(new Alert(m_menuTextures, new Rectangle(80, 144, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Zoom Setting Changed.", 1200, false, 200)); } else if (Game1.options.zoomLevel < 1.23) { Game1.options.zoomLevel += 0.05f; Game1.overrideGameMenuReset = true; Game1.game1.refreshWindowSettings(); } return(true); case "Reset": m_globalConfig.HideMaleSkirts = false; m_globalConfig.MenuAccessKey = SButton.C; m_globalConfig.MenuZoomOut = false; m_globalConfig.CanChangeGender = false; m_globalConfig.ShowDresser = true; m_env.Helper.WriteConfig(m_globalConfig); Game1.options.zoomLevel = 1f; Game1.overrideGameMenuReset = true; Game1.game1.refreshWindowSettings(); updateLayout(); m_alerts.Add(new Alert(m_menuTextures, new Rectangle(160, 144, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Options Reset to Default", 1200, false, 200)); Game1.playSound("coin"); return(true); default: return(false); } }
/// <summary>Perform the action associated with a component.</summary> /// <param name="cpt">The component.</param> /// <return>whether the component action is processed</return> public virtual bool handleLeftClick(IAutoComponent cpt) { return(false); }
/// <summary>Perform the action associated with a component.</summary> /// <param name="cpt">The component.</param> /// <return>whether the component action is processed</return> public override bool handleLeftClick(IAutoComponent cpt) { AutoColorPicker p = null; ClickableTextureButton btn = null; if (cpt is ClickableTextureButton) { btn = (ClickableTextureButton)cpt; } else if (cpt is AutoColorPicker) { p = (AutoColorPicker)cpt; } switch (cpt.m_name) { case "Male": m_farmerMakeup.ChangeGender(true); m_farmerMakeup.ChangeHairStyle(0); m_maleOutlineButton.m_visible = true; m_femaleOutlineButton.m_visible = false; refreshLabelAttrs(); break; case "Female": m_farmerMakeup.ChangeGender(false); m_farmerMakeup.ChangeHairStyle(16); m_maleOutlineButton.m_visible = false; m_femaleOutlineButton.m_visible = true; refreshLabelAttrs(); break; case "Direction": Game1.player.faceDirection((Game1.player.facingDirection - btn.m_par + 4) % 4); Game1.player.FarmerSprite.StopAnimation(); Game1.player.completelyStopAnimatingOrDoingAction(); Game1.playSound("pickUpItem"); btn.scale = Math.Max(0.75f, btn.scale - 0.25f); return(true); case "OK": if (m_parent != null) { m_parent.exitThisMenuNoSound(); } else { exitThisMenuNoSound(); } break; case "Random": this.randomiseCharacter(); btn.scale = Game1.pixelZoom - 0.5f; this.m_eyeColorPicker.setColor(Game1.player.newEyeColor); this.m_hairColorPicker.setColor(Game1.player.hairstyleColor); this.m_pantsColorPicker.setColor(Game1.player.pantsColor); refreshLabelAttrs(); return(true); case "MultiplayerFix": m_farmerMakeup.TougleMultiplayerFix(); btn.sourceRect.X = btn.sourceRect.X == 227 ? 236 : 227; Game1.playSound("drumkit6"); return(true); case "EyeColorPicker": m_farmerMakeup.ChangeEyeColor(p.click(Game1.getOldMouseX(), Game1.getOldMouseY())); m_lastHeldColorPicker = p; return(true); case "HairColorPicker": m_farmerMakeup.ChangeHairColor(p.click(Game1.getOldMouseX(), Game1.getOldMouseY())); m_lastHeldColorPicker = p; return(true); case "PantsColorPicker": m_farmerMakeup.ChangeBottomsColor(p.click(Game1.getOldMouseX(), Game1.getOldMouseY())); m_lastHeldColorPicker = p; return(true); case "Fav": int i = btn.m_par; if (m_farmerMakeup.LoadFavorite(i + 1)) { Game1.playSound("yoba"); this.m_eyeColorPicker.setColor(Game1.player.newEyeColor); this.m_hairColorPicker.setColor(Game1.player.hairstyleColor); this.m_pantsColorPicker.setColor(Game1.player.pantsColor); refreshLabelAttrs(); } else { m_alerts.Add(new Alert(Game1.mouseCursors, new Rectangle(268, 470, 16, 16), Game1.viewport.Width / 2 - (700 + IClickableMenu.borderWidth * 2) / 2, Game1.viewport.Height / 2 - (500 + IClickableMenu.borderWidth * 2) / 2, "Uh oh! No Favorite is Set!", 1000, false)); if (m_parent is MenuFarmerMakeup mk) { mk.ShowFavTabArrow = true; } } return(true); default: if (btn != null) { btn.scale = Math.Max(0.75f, btn.scale - 2.5f); return(this.handleSelectorChange(btn.name, btn.m_par)); } return(false); } Game1.playSound("coin"); return(true); }