/// <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) { 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); }