Names
This commit is contained in:
@@ -42,8 +42,11 @@ public class VoidCommands implements CommandExecutor, TabCompleter{
|
||||
});
|
||||
return true;
|
||||
case "give":
|
||||
//TODO(Balance): Give to a player
|
||||
return true;
|
||||
if(args.length < 2) return false;
|
||||
Player target = Bukkit.getPlayer(args[1]);
|
||||
if(target != null && sender instanceof Player ply)
|
||||
Voids.give(ply,target, Integer.parseInt(args[2]));
|
||||
break;
|
||||
case "event":
|
||||
//TODO(event) manage event
|
||||
return true;
|
||||
@@ -91,8 +94,8 @@ public class VoidCommands implements CommandExecutor, TabCompleter{
|
||||
if(args.length < 5) return false;
|
||||
switch (args[2]) {
|
||||
case "set":
|
||||
Player target = Bukkit.getPlayer(args[3]);
|
||||
Voids.set(target, Integer.parseInt(args[4]));
|
||||
Player target_ = Bukkit.getPlayer(args[3]);
|
||||
Voids.set(target_, Integer.parseInt(args[4]));
|
||||
return true;
|
||||
case "add":
|
||||
case "sub":
|
||||
@@ -119,7 +122,7 @@ public class VoidCommands implements CommandExecutor, TabCompleter{
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
|
||||
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) { //TODO: add all commands
|
||||
ArrayList<String> list = new ArrayList<>();
|
||||
|
||||
if(args.length == 1){
|
||||
@@ -136,7 +139,7 @@ public class VoidCommands implements CommandExecutor, TabCompleter{
|
||||
return list;
|
||||
case "manage":
|
||||
if(sender.hasPermission("void.manage")){
|
||||
if(args[1] == "balance"){
|
||||
if(args[1] == "balance" && args.length <= 3){
|
||||
list.addAll(List.of("set", "add", "sub"));
|
||||
return list;
|
||||
}
|
||||
|
||||
@@ -15,9 +15,7 @@ import org.bukkit.entity.Player;
|
||||
import org.bukkit.entity.Villager;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.inventory.InventoryAction;
|
||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||
import org.bukkit.event.inventory.InventoryInteractEvent;
|
||||
import org.bukkit.event.player.PlayerInteractEntityEvent;
|
||||
import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.event.world.EntitiesLoadEvent;
|
||||
@@ -38,6 +36,7 @@ public class Merchand implements Listener{
|
||||
public static Tuple<Material, Integer> current, next;
|
||||
private static Merchand instance;
|
||||
private static final ArrayList<Material> mat = new ArrayList<>();
|
||||
private static final ArrayList<String> names = new ArrayList<>();
|
||||
private final Inventory inv;
|
||||
private Villager m ;
|
||||
|
||||
@@ -51,6 +50,8 @@ public class Merchand implements Listener{
|
||||
|
||||
private Merchand() {
|
||||
inv = Bukkit.createInventory(null, 9);
|
||||
|
||||
//Get file materials
|
||||
File f = new File(TheVoidRoad.instance.getDataFolder(), "materials.txt");
|
||||
try {
|
||||
for (String s : Files.readAllLines(f.toPath())) {
|
||||
@@ -59,10 +60,22 @@ public class Merchand implements Listener{
|
||||
} catch(Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
f = new File(TheVoidRoad.instance.getDataFolder(), "names.txt");
|
||||
try {
|
||||
for (String s : Files.readAllLines(f.toPath())) {
|
||||
names.add(s);
|
||||
}
|
||||
} catch(Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
//Is the game inited
|
||||
if(DatabaseManager.getInstance().getConfig("init") != null &&
|
||||
DatabaseManager.getInstance().getConfig("init").equalsIgnoreCase("true")){
|
||||
regenerate();
|
||||
}
|
||||
|
||||
//Webhook connection
|
||||
}
|
||||
|
||||
public void regenerate(){
|
||||
@@ -75,6 +88,7 @@ public class Merchand implements Listener{
|
||||
m.getPersistentDataContainer().set(tagger, PersistentDataType.BOOLEAN, true);
|
||||
m.setGlowing(true);
|
||||
m.setInvulnerable(true);
|
||||
m.customName(Component.text(names.get(new Random().nextInt(names.size()))));
|
||||
Bukkit.getServer().forEachAudience((a) -> {
|
||||
if(a instanceof Player ply){
|
||||
ply.setCompassTarget(m.getLocation());
|
||||
@@ -144,7 +158,7 @@ public class Merchand implements Listener{
|
||||
//Do we have the item and if so remove them
|
||||
if(ply.getInventory().contains(current.x)){
|
||||
for (ItemStack i : ply.getInventory().getContents()) {
|
||||
if(i.getType() == current.x){
|
||||
if(i != null && i.getType() == current.x){
|
||||
i.subtract(1);
|
||||
Voids.add(ply, current.y);
|
||||
return;
|
||||
|
||||
@@ -21,6 +21,7 @@ public class TheVoidRoad extends JavaPlugin{
|
||||
public void onEnable(){
|
||||
|
||||
saveResource("materials.txt", false);
|
||||
saveResource("names.txt", false);
|
||||
|
||||
//Commands
|
||||
getCommand("void").setExecutor(new VoidCommands());
|
||||
|
||||
Reference in New Issue
Block a user