diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/Actions.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/Actions.java index 9fb04d5b..57c84a42 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/Actions.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/Actions.java @@ -19,6 +19,8 @@ public class Actions { private static ActionConsoleCommand ACTION_PLAYER_COMMAND = new ActionConsoleCommand(); private static ActionCloseMenu ACTION_EXIT_MENU = new ActionCloseMenu(); private static ActionSound ACTION_SOUND = new ActionSound(); + private static ActionEquip ACTION_EQUIP = new ActionEquip(); + private static ActionUnequip ACTION_UNEQUIP = new ActionUnequip(); public static Action getAction(String id) { diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/actions/ActionEquip.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/actions/ActionEquip.java new file mode 100644 index 00000000..a0a303b9 --- /dev/null +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/actions/ActionEquip.java @@ -0,0 +1,22 @@ +package com.hibiscusmc.hmccosmetics.gui.action.actions; + +import com.hibiscusmc.hmccosmetics.cosmetic.Cosmetic; +import com.hibiscusmc.hmccosmetics.cosmetic.Cosmetics; +import com.hibiscusmc.hmccosmetics.gui.action.Action; +import com.hibiscusmc.hmccosmetics.user.CosmeticUser; + +public class ActionEquip extends Action { + + public ActionEquip() { + super("equip"); + } + + @Override + public void run(CosmeticUser user, String raw) { + Cosmetic cosmetic = Cosmetics.getCosmetic(raw); + if (cosmetic == null) { + return; + } + user.addPlayerCosmetic(cosmetic); + } +} diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/actions/ActionUnequip.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/actions/ActionUnequip.java new file mode 100644 index 00000000..b328400f --- /dev/null +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/gui/action/actions/ActionUnequip.java @@ -0,0 +1,22 @@ +package com.hibiscusmc.hmccosmetics.gui.action.actions; + +import com.hibiscusmc.hmccosmetics.cosmetic.CosmeticSlot; +import com.hibiscusmc.hmccosmetics.gui.action.Action; +import com.hibiscusmc.hmccosmetics.user.CosmeticUser; +import org.apache.commons.lang3.EnumUtils; + +public class ActionUnequip extends Action { + + public ActionUnequip() { + super("unequip"); + } + + @Override + public void run(CosmeticUser user, String raw) { + if (!EnumUtils.isValidEnum(CosmeticSlot.class, raw)) { + return; + } + CosmeticSlot slot = CosmeticSlot.valueOf(raw); + user.removeCosmeticSlot(slot); + } +}