add brewery

This commit is contained in:
okx-code
2024-10-09 03:23:27 +01:00
parent 4b972fd171
commit a8849270eb
8 changed files with 1281 additions and 12 deletions

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -10,4 +10,5 @@ dependencies {
}
compileOnly(project(":plugins:civmodcore-paper"))
compileOnly("com.github.Jsinco:BreweryX:3.3.2")
}

View File

@@ -3,9 +3,6 @@ package net.civmc.kitpvp;
import net.civmc.kitpvp.command.ClearCommand;
import net.civmc.kitpvp.command.KitCommand;
import net.civmc.kitpvp.sql.SqlKitPvpDao;
import org.bukkit.generator.ChunkGenerator;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import vg.civcraft.mc.civmodcore.ACivMod;
import vg.civcraft.mc.civmodcore.dao.DatabaseCredentials;
import vg.civcraft.mc.civmodcore.dao.ManagedDatasource;

View File

@@ -0,0 +1,57 @@
package net.civmc.kitpvp.gui.selection;
import com.dre.brewery.api.BreweryApi;
import net.civmc.kitpvp.KitPvpPlugin;
import net.civmc.kitpvp.data.Kit;
import net.civmc.kitpvp.data.KitPvpDao;
import net.civmc.kitpvp.gui.EditKitGui;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import org.bukkit.Bukkit;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemFlag;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.PotionMeta;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.potion.PotionType;
import org.jetbrains.annotations.NotNull;
import vg.civcraft.mc.civmodcore.inventory.gui.Clickable;
import vg.civcraft.mc.civmodcore.inventory.gui.ClickableInventory;
public class DrugsSelectionGui extends ItemSelectionGui {
public DrugsSelectionGui(KitPvpDao dao, Player player, int slot, Kit kit, Runnable parent, EditKitGui gui) {
super(dao, "Drugs", player, slot, kit, parent, gui);
}
@Override
public void addItems(ClickableInventory inventory) {
int slot = 0;
for (String drug : new String[]{
"Cyanide",
"Cannbais",
"Meth",
"Blue Meth",
"Heroin",
"Oestrogen",
"Caffeine",
"Ivermectin",
"DMT",
"Xanax",
"Steroids",
"Testosterone",
"Vicodin",
"Yakult",
"Cocaine",
"Speed",
"NAD+",
"Epinephrine",
"Firefoam",
"Nitroglycerin"
}) {
inventory.setSlot(toClickable(BreweryApi.createBrewItem(drug, 10)), slot++);
}
}
}

View File

@@ -5,6 +5,7 @@ import net.civmc.kitpvp.data.KitPvpDao;
import net.civmc.kitpvp.gui.EditKitGui;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import org.bukkit.Bukkit;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.Player;
@@ -40,29 +41,39 @@ public class ItemCategorySelectionGui extends ItemSelectionGui {
none.setItemMeta(noneMeta);
inventory.setSlot(toClickable(none, null), 18);
inventory.setSlot(getSlot(inventory, Material.IRON_CHESTPLATE, "Armour",
inventory.setSlot(getSlot(inventory, new ItemStack(Material.IRON_CHESTPLATE), "Armour",
() -> new GenericArmourSelectionGui(dao, player, slot, kit, this::open, gui).open()),
19);
inventory.setSlot(getSlot(inventory, Material.IRON_SWORD, "Weapons and Tools",
inventory.setSlot(getSlot(inventory, new ItemStack(Material.IRON_SWORD), "Weapons and Tools",
() -> new WeaponsAndToolsSelectionGui(dao, player, slot, kit, this::open, gui).open()),
20);
inventory.setSlot(getSlot(inventory, Material.POTION, "Potions",
ItemStack potions = new ItemStack(Material.POTION);
PotionMeta potionsMeta = (PotionMeta) potions.getItemMeta();
potionsMeta.setColor(Color.BLUE);
potions.setItemMeta(potionsMeta);
inventory.setSlot(getSlot(inventory, potions, "Potions",
() -> new PotionsSelectionGui(dao, player, slot, kit, this::open, gui).open()),
21);
inventory.setSlot(getSlot(inventory, Material.GOLDEN_CARROT, "Food",
inventory.setSlot(getSlot(inventory, new ItemStack(Material.GOLDEN_CARROT), "Food",
() -> new FoodSelectionGui(dao, player, slot, kit, this::open, gui).open()),
22);
if (Bukkit.getPluginManager().isPluginEnabled("BreweryX")) {
ItemStack drugs = new ItemStack(Material.POTION);
PotionMeta drugsMeta = (PotionMeta) drugs.getItemMeta();
drugsMeta.setColor(Color.BLUE);
drugs.setItemMeta(drugsMeta);
inventory.setSlot(getSlot(inventory, drugs, "Drugs",
() -> new DrugsSelectionGui(dao, player, slot, kit, this::open, gui).open()),
23);
}
}
private Clickable getSlot(ClickableInventory inventory, Material icon, String name, Runnable gui) {
ItemStack item = new ItemStack(icon);
private Clickable getSlot(ClickableInventory inventory, ItemStack item, String name, Runnable gui) {
ItemMeta meta = item.getItemMeta();
if (meta instanceof PotionMeta) {
((PotionMeta) meta).setColor(Color.YELLOW);
}
meta.addItemFlags(ItemFlag.HIDE_ADDITIONAL_TOOLTIP);
meta.itemName(Component.text(name, NamedTextColor.GOLD));
item.setItemMeta(meta);

View File

@@ -5,6 +5,7 @@ author: Okx
description: KitPvP for CivMC
api-version: 1.21.1
depend: [CivModCore]
softdepend: [BreweryX]
commands:
kit:
usage: |-