Fixed crafting station buttons

This commit is contained in:
Indyuce 2020-08-17 12:52:20 +02:00
parent 799f699647
commit b6eefa268b
5 changed files with 15 additions and 30 deletions

View File

@ -249,20 +249,6 @@ public class MMOUtils {
return format;
}
// @Deprecated
// public static boolean areSimilar(ItemStack item1, ItemStack iitem2) {
// if (item1.getType() == VersionMaterial.PLAYER_HEAD.toMaterial() &&
// iitem2.getType() == VersionMaterial.PLAYER_HEAD.toMaterial()) {
// ItemMeta meta1 = item1.getItemMeta();
// ItemMeta meta2 = iitem2.getItemMeta();
//
// if (meta1.hasDisplayName() && meta2.hasDisplayName())
// return meta1.getDisplayName().equalsIgnoreCase(meta2.getDisplayName());
// }
//
// return item1.isSimilar(iitem2);
// }
public static double truncation(double x, int n) {
double pow = Math.pow(10.0, n);
return Math.floor(x * pow) / pow;

View File

@ -50,7 +50,7 @@ public class MMOItemDropItem extends DropItem {
@Override
public ItemStack getItem(PlayerData player, int amount) {
ItemStack item = MMOItems.plugin.getItem(type, id, player);
ItemStack item = player == null ? MMOItems.plugin.getItem(type, id) : MMOItems.plugin.getItem(type, id, player);
if (item == null || item.getType() == Material.AIR)
return null;

View File

@ -16,6 +16,7 @@ import net.Indyuce.mmoitems.api.item.util.crafting.CraftingRecipeDisplay;
import net.Indyuce.mmoitems.api.item.util.crafting.QueueItemDisplay;
import net.Indyuce.mmoitems.api.item.util.crafting.UpgradingRecipeDisplay;
import net.mmogroup.mmolib.MMOLib;
import net.mmogroup.mmolib.api.item.ItemTag;
import net.mmogroup.mmolib.version.VersionMaterial;
public class ConfigItem {
@ -105,8 +106,7 @@ public class ConfigItem {
}
item.setItemMeta(meta);
// item = MMOLib.plugin.getVersion().getWrapper().getNBTItem(item).addTag(new
// ItemTag("itemId", id)).toItem();
item = MMOLib.plugin.getVersion().getWrapper().getNBTItem(item).addTag(new ItemTag("ItemId", id)).toItem();
}
public Material getMaterial() {

View File

@ -19,6 +19,8 @@ import net.Indyuce.mmoitems.api.crafting.recipe.RecipeInfo;
import net.Indyuce.mmoitems.api.crafting.recipe.UpgradingRecipe;
import net.Indyuce.mmoitems.api.item.util.ConfigItem;
import net.Indyuce.mmoitems.api.util.message.Message;
import net.mmogroup.mmolib.MMOLib;
import net.mmogroup.mmolib.api.item.NBTItem;
public class CraftingStationPreview extends PluginInventory {
private final CraftingStationView previous;
@ -108,29 +110,26 @@ public class CraftingStationPreview extends PluginInventory {
@Override
public void whenClicked(InventoryClickEvent event) {
event.setCancelled(true);
if (!MMOUtils.isMetaItem(event.getCurrentItem(), false))
return;
if (event.getCurrentItem().isSimilar(ConfigItem.CONFIRM.getItem())) {
NBTItem nbtItem = MMOLib.plugin.getVersion().getWrapper().getNBTItem(event.getCurrentItem());
if (nbtItem.getString("ItemId").equals("CONFIRM")) {
previous.processRecipe(recipe);
previous.open();
return;
}
if (event.getCurrentItem().isSimilar(ConfigItem.PREVIOUS_PAGE.getItem())) {
else if (nbtItem.getString("ItemId").equals("PREVIOUS_PAGE")) {
page--;
open();
return;
}
if (event.getCurrentItem().isSimilar(ConfigItem.NEXT_PAGE.getItem())) {
else if (nbtItem.getString("ItemId").equals("NEXT_PAGE")) {
page++;
open();
return;
}
if (event.getCurrentItem().isSimilar(ConfigItem.BACK.getItem()))
else if (nbtItem.getString("ItemId").equals("BACK"))
previous.open();
}
}

View File

@ -134,29 +134,29 @@ public class CraftingStationView extends PluginInventory {
@Override
public void whenClicked(InventoryClickEvent event) {
event.setCancelled(true);
if (!MMOUtils.isMetaItem(event.getCurrentItem(), false))
return;
if (event.getCurrentItem().isSimilar(ConfigItem.PREVIOUS_IN_QUEUE.getItem())) {
NBTItem nbtItem = MMOLib.plugin.getVersion().getWrapper().getNBTItem(event.getCurrentItem());
if (nbtItem.getString("ItemId").equals("PREVIOUS_IN_QUEUE")) {
queueOffset--;
open();
return;
}
if (event.getCurrentItem().isSimilar(ConfigItem.NEXT_IN_QUEUE.getItem())) {
if (nbtItem.getString("ItemId").equals("NEXT_IN_QUEUE")) {
queueOffset++;
open();
return;
}
if (event.getCurrentItem().isSimilar(ConfigItem.NEXT_PAGE.getItem())) {
if (nbtItem.getString("ItemId").equals("NEXT_PAGE")) {
page++;
open();
return;
}
if (event.getCurrentItem().isSimilar(ConfigItem.PREVIOUS_PAGE.getItem())) {
if (nbtItem.getString("ItemId").equals("PREVIOUS_PAGE")) {
page--;
open();
return;