Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e8afd15d80 | ||
|
|
d024c9238e | ||
|
|
1356bd1f26 |
@@ -1,17 +1,12 @@
|
||||
package com.willfp.eco.core.recipe.parts;
|
||||
|
||||
import com.willfp.eco.core.Eco;
|
||||
import com.willfp.eco.core.items.TestableItem;
|
||||
import lombok.Getter;
|
||||
import org.apache.commons.lang.Validate;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Stacks of items.
|
||||
*/
|
||||
@@ -56,19 +51,7 @@ public class TestableStack implements TestableItem {
|
||||
@Override
|
||||
public ItemStack getItem() {
|
||||
ItemStack temp = handle.getItem().clone();
|
||||
ItemMeta meta = temp.getItemMeta();
|
||||
assert meta != null;
|
||||
|
||||
List<String> lore = meta.hasLore() ? meta.getLore() : new ArrayList<>();
|
||||
assert lore != null;
|
||||
lore.add("");
|
||||
String add = Eco.getHandler().getEcoPlugin().getLangYml().getString("multiple-in-craft");
|
||||
add = add.replace("%amount%", String.valueOf(amount));
|
||||
lore.add(add);
|
||||
meta.setLore(lore);
|
||||
temp.setItemMeta(meta);
|
||||
temp.setAmount(amount);
|
||||
|
||||
return temp;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,16 +1,19 @@
|
||||
package com.willfp.eco.core.recipe.recipes;
|
||||
|
||||
import com.willfp.eco.core.Eco;
|
||||
import com.willfp.eco.core.EcoPlugin;
|
||||
import com.willfp.eco.core.PluginDependent;
|
||||
import com.willfp.eco.core.items.TestableItem;
|
||||
import com.willfp.eco.core.recipe.Recipes;
|
||||
import com.willfp.eco.core.recipe.parts.EmptyTestableItem;
|
||||
import com.willfp.eco.core.recipe.parts.TestableStack;
|
||||
import lombok.Getter;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.RecipeChoice;
|
||||
import org.bukkit.inventory.ShapedRecipe;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -87,7 +90,23 @@ public final class ShapedCraftingRecipe extends PluginDependent<EcoPlugin> imple
|
||||
displayedRecipe.shape("012", "345", "678");
|
||||
for (int i = 0; i < 9; i++) {
|
||||
char character = String.valueOf(i).toCharArray()[0];
|
||||
displayedRecipe.setIngredient(character, new RecipeChoice.ExactChoice(parts.get(i).getItem()));
|
||||
ItemStack item = parts.get(i).getItem();
|
||||
|
||||
if (parts.get(i) instanceof TestableStack) {
|
||||
ItemMeta meta = item.getItemMeta();
|
||||
assert meta != null;
|
||||
|
||||
List<String> lore = meta.hasLore() ? meta.getLore() : new ArrayList<>();
|
||||
assert lore != null;
|
||||
lore.add("");
|
||||
String add = Eco.getHandler().getEcoPlugin().getLangYml().getString("multiple-in-craft");
|
||||
add = add.replace("%amount%", String.valueOf(item.getAmount()));
|
||||
lore.add(add);
|
||||
meta.setLore(lore);
|
||||
item.setItemMeta(meta);
|
||||
}
|
||||
|
||||
displayedRecipe.setIngredient(character, new RecipeChoice.ExactChoice(item));
|
||||
}
|
||||
|
||||
Bukkit.getServer().addRecipe(shapedRecipe);
|
||||
|
||||
@@ -112,7 +112,7 @@ abstract class EcoSpigotPlugin : EcoPlugin(
|
||||
|
||||
// Custom Items
|
||||
IntegrationLoader("Oraxen") { CustomItemsManager.register(CustomItemsOraxen()) },
|
||||
IntegrationLoader("ItemsAdder") { CustomItemsManager.register(CustomItemsItemsAdder()) },
|
||||
IntegrationLoader("ItemsAdder") { CustomItemsManager.register(CustomItemsItemsAdder(this)) },
|
||||
|
||||
// Shop
|
||||
IntegrationLoader("ShopGuiPlus") { ShopManager.register(ShopShopGuiPlus()) },
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.willfp.eco.spigot.integrations.customitems
|
||||
|
||||
import com.willfp.eco.core.EcoPlugin
|
||||
import com.willfp.eco.core.integrations.customitems.CustomItemsWrapper
|
||||
import com.willfp.eco.core.items.CustomItem
|
||||
import com.willfp.eco.util.NamespacedKeyUtils
|
||||
@@ -8,21 +9,25 @@ import dev.lone.itemsadder.api.ItemsAdder
|
||||
import org.bukkit.inventory.ItemStack
|
||||
import java.util.function.Predicate
|
||||
|
||||
class CustomItemsItemsAdder : CustomItemsWrapper {
|
||||
class CustomItemsItemsAdder(
|
||||
private val plugin: EcoPlugin
|
||||
) : CustomItemsWrapper {
|
||||
override fun registerAllItems() {
|
||||
for (item in ItemsAdder.getAllItems()) {
|
||||
val stack = item.itemStack
|
||||
val id = item.id
|
||||
val key = NamespacedKeyUtils.create("itemsadder", id.lowercase())
|
||||
CustomItem(
|
||||
key,
|
||||
Predicate { test: ItemStack ->
|
||||
val customStack = CustomStack.byItemStack(test) ?: return@Predicate false
|
||||
customStack.id.equals(id, ignoreCase = true)
|
||||
},
|
||||
stack
|
||||
).register()
|
||||
}
|
||||
plugin.scheduler.runLater({
|
||||
for (item in ItemsAdder.getAllItems()) {
|
||||
val stack = item.itemStack
|
||||
val id = item.id
|
||||
val key = NamespacedKeyUtils.create("itemsadder", id.lowercase())
|
||||
CustomItem(
|
||||
key,
|
||||
Predicate { test: ItemStack ->
|
||||
val customStack = CustomStack.byItemStack(test) ?: return@Predicate false
|
||||
customStack.id.equals(id, ignoreCase = true)
|
||||
},
|
||||
stack
|
||||
).register()
|
||||
}
|
||||
}, 2)
|
||||
}
|
||||
|
||||
override fun getPluginName(): String {
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
version = 6.6.3
|
||||
version = 6.6.4
|
||||
plugin-name = eco
|
||||
Reference in New Issue
Block a user