commit co jsem zapomněl nahrát před rozjebáním mého os a tak jsem ho musel psát znovu pls pomoc..

fix databáze
dev
jakub 2 years ago
parent 62e4c3a0be
commit e17244deed
  1. 10
      pom.xml
  2. 4
      src/main/java/xyz/mineconomia/mineconomiacore/MineconomiaCore.java
  3. 44
      src/main/java/xyz/mineconomia/mineconomiacore/PDC.java
  4. 4
      src/main/java/xyz/mineconomia/mineconomiacore/commands/BookCommand.java
  5. 30
      src/main/java/xyz/mineconomia/mineconomiacore/commands/mcore.java
  6. 2
      src/main/java/xyz/mineconomia/mineconomiacore/commands/tpw.java
  7. 5
      src/main/java/xyz/mineconomia/mineconomiacore/completers/mcore_completer.java
  8. 8
      src/main/java/xyz/mineconomia/mineconomiacore/config.java
  9. 3
      src/main/java/xyz/mineconomia/mineconomiacore/events/playerAccount.java
  10. 120
      src/main/java/xyz/mineconomia/mineconomiacore/events/specialEvents.java
  11. 3
      src/main/java/xyz/mineconomia/mineconomiacore/handlers/FHBHandler.java

@ -63,9 +63,19 @@
<id>sonatype</id> <id>sonatype</id>
<url>https://oss.sonatype.org/content/groups/public/</url> <url>https://oss.sonatype.org/content/groups/public/</url>
</repository> </repository>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories> </repositories>
<dependencies> <dependencies>
<dependency>
<groupId>com.github.MilkBowl</groupId>
<artifactId>VaultAPI</artifactId>
<version>1.7</version>
<scope>provided</scope>
</dependency>
<dependency> <dependency>
<groupId>com.arangodb</groupId> <groupId>com.arangodb</groupId>
<artifactId>arangodb-java-driver</artifactId> <artifactId>arangodb-java-driver</artifactId>

@ -1,7 +1,6 @@
package xyz.mineconomia.mineconomiacore; package xyz.mineconomia.mineconomiacore;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
import xyz.mineconomia.mineconomiacore.CustomItems.ItemManager; import xyz.mineconomia.mineconomiacore.CustomItems.ItemManager;
@ -10,9 +9,9 @@ import xyz.mineconomia.mineconomiacore.commands.funHarvestBall;
import xyz.mineconomia.mineconomiacore.commands.mcore; import xyz.mineconomia.mineconomiacore.commands.mcore;
import xyz.mineconomia.mineconomiacore.commands.tpw; import xyz.mineconomia.mineconomiacore.commands.tpw;
import xyz.mineconomia.mineconomiacore.events.playerAccount; import xyz.mineconomia.mineconomiacore.events.playerAccount;
import xyz.mineconomia.mineconomiacore.events.specialEvents;
import xyz.mineconomia.mineconomiacore.handlers.FHBHandler; import xyz.mineconomia.mineconomiacore.handlers.FHBHandler;
import javax.security.auth.login.Configuration;
import java.util.Objects; import java.util.Objects;
import java.util.logging.Logger; import java.util.logging.Logger;
@ -41,6 +40,7 @@ public final class MineconomiaCore extends JavaPlugin {
PluginManager pm = getServer().getPluginManager(); PluginManager pm = getServer().getPluginManager();
pm.registerEvents(new FHBHandler(), this); pm.registerEvents(new FHBHandler(), this);
pm.registerEvents(new playerAccount(), this); pm.registerEvents(new playerAccount(), this);
pm.registerEvents(new specialEvents(), this);
//BookCommand //BookCommand
Objects.requireNonNull(getCommand("pomoc")).setExecutor(new BookCommand()); Objects.requireNonNull(getCommand("pomoc")).setExecutor(new BookCommand());

@ -0,0 +1,44 @@
package xyz.mineconomia.mineconomiacore;
import org.bukkit.NamespacedKey;
import org.bukkit.entity.Player;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.persistence.PersistentDataContainer;
import org.bukkit.persistence.PersistentDataType;
public class PDC {
public static void WritePlayerPDC(Player player, String key, PersistentDataType type, Object value){
NamespacedKey nKey = new NamespacedKey(MineconomiaCore.getPlugin(MineconomiaCore.class), key);
PersistentDataContainer pdc = player.getPersistentDataContainer();
pdc.set(nKey, type, value);
}
public static Object GetPlayerPDC(Player player, String key, PersistentDataType type){
NamespacedKey nKey = new NamespacedKey(MineconomiaCore.getPlugin(MineconomiaCore.class), key);
PersistentDataContainer pdc = player.getPersistentDataContainer();
return pdc.get(nKey, type);
}
public static void DeletePlayerPDC(Player player, String key){
NamespacedKey nKey = new NamespacedKey(MineconomiaCore.getPlugin(MineconomiaCore.class), key);
PersistentDataContainer pdc = player.getPersistentDataContainer();
pdc.remove(nKey);
}
public static ItemMeta WriteItemMetaPDC(ItemMeta itemMeta, String key, PersistentDataType type, Object value){
NamespacedKey nKey = new NamespacedKey(MineconomiaCore.getPlugin(MineconomiaCore.class), key);
PersistentDataContainer pdc = itemMeta.getPersistentDataContainer();
pdc.set(nKey, type, value);
return itemMeta;
}
public static Object GetItemMetaPDC(ItemMeta itemMeta, String key, PersistentDataType type){
NamespacedKey nKey = new NamespacedKey(MineconomiaCore.getPlugin(MineconomiaCore.class), key);
PersistentDataContainer pdc = itemMeta.getPersistentDataContainer();
return pdc.get(nKey, type);
}
}

@ -1,14 +1,12 @@
package xyz.mineconomia.mineconomiacore.commands; package xyz.mineconomia.mineconomiacore.commands;
import net.md_5.bungee.api.chat.*; import net.md_5.bungee.api.chat.TextComponent;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.BookMeta;
import xyz.upperlevel.spigot.book.BookUtil; import xyz.upperlevel.spigot.book.BookUtil;
public class BookCommand implements CommandExecutor { public class BookCommand implements CommandExecutor {

@ -2,11 +2,39 @@ package xyz.mineconomia.mineconomiacore.commands;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.PlayerInventory;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.persistence.PersistentDataType;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import xyz.mineconomia.mineconomiacore.PDC;
import java.io.IOException;
import java.util.Objects;
import static xyz.mineconomia.mineconomiacore.config.config;
public class mcore implements CommandExecutor { public class mcore implements CommandExecutor {
@Override @Override
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, String[] strings) { public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, String[] args) {
if (Objects.equals(args[0], "setSpecial")){
Player player = (Player) commandSender;
PlayerInventory inventory= player.getInventory();
ItemStack item = inventory.getItemInMainHand();
ItemMeta meta = item.getItemMeta();
assert meta != null;
PDC.WriteItemMetaPDC(meta, "special", PersistentDataType.BOOLEAN,true);
item.setItemMeta(meta);
config.set("special.item", item);
try {
config.save("config.yml");
} catch (IOException e) {
throw new RuntimeException(e);
}
return true;
}
return false; return false;
} }
} }

@ -9,8 +9,6 @@ import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.lang.reflect.Array;
public class tpw implements CommandExecutor { public class tpw implements CommandExecutor {
@Override @Override
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, String[] args) { public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, String[] args) {

@ -1,5 +0,0 @@
package xyz.mineconomia.mineconomiacore.completers;
//Zde nic zatím
public class mcore_completer {
}

@ -0,0 +1,8 @@
package xyz.mineconomia.mineconomiacore;
import org.bukkit.configuration.file.FileConfiguration;
public interface config {
FileConfiguration config = MineconomiaCore.getPlugin(MineconomiaCore.class).getConfig();
}

@ -2,16 +2,13 @@ package xyz.mineconomia.mineconomiacore.events;
import com.arangodb.ArangoCollection; import com.arangodb.ArangoCollection;
import com.arangodb.entity.BaseDocument; import com.arangodb.entity.BaseDocument;
import com.arangodb.model.DocumentCreateOptions;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener; import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerJoinEvent;
import xyz.mineconomia.mineconomiacore.MineconomiaCore; import xyz.mineconomia.mineconomiacore.MineconomiaCore;
import java.util.EventListener;
import java.util.Map; import java.util.Map;
import java.util.Objects;
import static xyz.mineconomia.mineconomiacore.database.database; import static xyz.mineconomia.mineconomiacore.database.database;

@ -0,0 +1,120 @@
package xyz.mineconomia.mineconomiacore.events;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.boss.BarColor;
import org.bukkit.boss.BarStyle;
import org.bukkit.boss.BossBar;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerItemHeldEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.persistence.PersistentDataType;
import xyz.mineconomia.mineconomiacore.PDC;
import java.util.HashMap;
import java.util.Objects;
//These events are handling every logic of the "special item"
//Special item = item that is essential to marking blocks for interaction with plugin creation and edit functions
public class specialEvents implements Listener {
//Stores informative boss bars
public static HashMap<Player, BossBar> specialBossBars = new HashMap<>();
//Stores locations marked by player using special item
public static HashMap<Player, HashMap<String, Location>> specialPreLocations = new HashMap<>();
//Checks if player is holding special item in hand and if so deploys boss bar
@EventHandler
public static void specialInHand(PlayerItemHeldEvent event){
Player player = event.getPlayer();
displayBossBar(player, player.getInventory().getItem(event.getNewSlot()));
}
@EventHandler
public static void savePosition(PlayerInteractEvent event){
Player player = event.getPlayer();
if (event.getItem() != null){
if (isSpecial(event.getItem())){
event.setCancelled(true);
switch (event.getAction()){
case LEFT_CLICK_BLOCK:
specialPreLocations.get(player).put("loc1", Objects.requireNonNull(event.getClickedBlock()).getLocation());
break;
case RIGHT_CLICK_BLOCK:
specialPreLocations.get(player).put("loc2", Objects.requireNonNull(event.getClickedBlock()).getLocation());
}
displayBossBar(player, event.getItem());
}
}
}
private static void displayBossBar(Player player, ItemStack item){
if (!specialPreLocations.containsKey(player)){
specialPreLocations.put(player, new HashMap<>());
}
if (specialBossBars.get(player) == null){
BossBar bossBar = Bukkit.createBossBar( "", BarColor.YELLOW , BarStyle.SOLID);
specialBossBars.put(player, bossBar);
}
BossBar bossBar = specialBossBars.get(player);
if (item != null){
if (isSpecial(item)){
String loc1String = "&6&lL &e(-,-,-,-)";
String loc2String = "&e(-,-,-,-) &6&lP";
HashMap<String, Location> playerLocations = specialPreLocations.get(player);
bossBar.setProgress(0);
if (playerLocations.containsKey("loc1")){
Location loc1 = playerLocations.get("loc1");
loc1String = "&6&lL &e("
+ loc1.getBlockX()
+ ","
+ loc1.getBlockY()
+ ","
+ loc1.getBlockZ()
+ ","
+ Objects.requireNonNull(loc1.getWorld()).getName()
+ ")";
}
if (playerLocations.containsKey("loc2")){
Location loc2 = playerLocations.get("loc2");
loc2String = "&e("
+ loc2.getBlockX()
+ ","
+ loc2.getBlockY()
+ ","
+ loc2.getBlockZ()
+ ","
+ Objects.requireNonNull(loc2.getWorld()).getName()
+ ") &6&lP";
}
String bossBarTitle = loc1String + " " + loc2String;
switch (playerLocations.size()){
case 1:
bossBar.setProgress(0.5);
break;
case 2:
bossBarTitle = bossBarTitle.replace("&6","&2").replace("&e", "&a");
bossBar.setColor(BarColor.GREEN);
bossBar.setProgress(1);
}
bossBar.setTitle(ChatColor.translateAlternateColorCodes('&', bossBarTitle));
bossBar.addPlayer(player);
return;
}
}
bossBar.removePlayer(player);
}
private static boolean isSpecial(ItemStack itemStack){
return PDC.GetItemMetaPDC(Objects.requireNonNull(itemStack.getItemMeta()), "special", PersistentDataType.BOOLEAN) != null;
}
}

@ -3,8 +3,6 @@ package xyz.mineconomia.mineconomiacore.handlers;
import org.bukkit.*; import org.bukkit.*;
import org.bukkit.block.Block; import org.bukkit.block.Block;
import org.bukkit.block.data.Ageable; import org.bukkit.block.data.Ageable;
import org.bukkit.block.data.BlockData;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.entity.Snowball; import org.bukkit.entity.Snowball;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
@ -13,7 +11,6 @@ import org.bukkit.event.entity.ProjectileHitEvent;
import org.bukkit.event.entity.ProjectileLaunchEvent; import org.bukkit.event.entity.ProjectileLaunchEvent;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import xyz.mineconomia.mineconomiacore.MineconomiaCore; import xyz.mineconomia.mineconomiacore.MineconomiaCore;
import java.util.Objects; import java.util.Objects;
import java.util.Random; import java.util.Random;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;

Loading…
Cancel
Save