Moved packages, fixed pagination, closes #17
This commit is contained in:
parent
a19b8567d5
commit
605eed5406
32 changed files with 132 additions and 132 deletions
6
pom.xml
6
pom.xml
|
@ -4,12 +4,12 @@
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
<groupId>nl.SBDeveloper</groupId>
|
<groupId>tech.sbdevelopment</groupId>
|
||||||
<artifactId>ShowControl</artifactId>
|
<artifactId>ShowControl</artifactId>
|
||||||
<version>1.3</version>
|
<version>1.4</version>
|
||||||
<packaging>jar</packaging>
|
<packaging>jar</packaging>
|
||||||
<name>ShowControl</name>
|
<name>ShowControl</name>
|
||||||
<url>https://sbdplugins.nl</url>
|
<url>https://sbdevelopment.tech</url>
|
||||||
|
|
||||||
<description>Create shows easily using this plugin!</description>
|
<description>Create shows easily using this plugin!</description>
|
||||||
<properties>
|
<properties>
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
package nl.sbdeveloper.showcontrol;
|
package tech.sbdevelopment.showcontrol;
|
||||||
|
|
||||||
import co.aikar.commands.PaperCommandManager;
|
import co.aikar.commands.PaperCommandManager;
|
||||||
import nl.sbdeveloper.showcontrol.api.ShowAPI;
|
import tech.sbdevelopment.showcontrol.api.ShowAPI;
|
||||||
import nl.sbdeveloper.showcontrol.commands.ShowCMD;
|
import tech.sbdevelopment.showcontrol.commands.ShowCMD;
|
||||||
import nl.sbdeveloper.showcontrol.data.DataStorage;
|
import tech.sbdevelopment.showcontrol.data.DataStorage;
|
||||||
import nl.sbdeveloper.showcontrol.data.Shows;
|
import tech.sbdevelopment.showcontrol.data.Shows;
|
||||||
import nl.sbdeveloper.showcontrol.utils.inventories.Inventory;
|
import tech.sbdevelopment.showcontrol.utils.inventories.Inventory;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ public final class ShowControlPlugin extends JavaPlugin {
|
||||||
Inventory.init(this);
|
Inventory.init(this);
|
||||||
|
|
||||||
getLogger().info("Loading default triggers...");
|
getLogger().info("Loading default triggers...");
|
||||||
ShowAPI.index(ShowControlPlugin.class, "nl.sbdeveloper.showcontrol.api.triggers.impl");
|
ShowAPI.index(ShowControlPlugin.class, "tech.sbdevelopment.showcontrol.api.triggers.impl");
|
||||||
|
|
||||||
Bukkit.getScheduler().runTaskLater(this, DataStorage::load, 1L); //Load 1 tick later, because of multi world
|
Bukkit.getScheduler().runTaskLater(this, DataStorage::load, 1L); //Load 1 tick later, because of multi world
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.api;
|
package tech.sbdevelopment.showcontrol.api;
|
||||||
|
|
||||||
import lombok.experimental.StandardException;
|
import lombok.experimental.StandardException;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.api;
|
package tech.sbdevelopment.showcontrol.api;
|
||||||
|
|
||||||
import lombok.experimental.StandardException;
|
import lombok.experimental.StandardException;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package nl.sbdeveloper.showcontrol.api;
|
package tech.sbdevelopment.showcontrol.api;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.ShowControlPlugin;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import org.bukkit.Bukkit;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import org.reflections.Reflections;
|
import org.reflections.Reflections;
|
||||||
import org.reflections.scanners.Scanners;
|
import org.reflections.scanners.Scanners;
|
||||||
import org.reflections.util.ClasspathHelper;
|
import org.reflections.util.ClasspathHelper;
|
||||||
|
@ -21,7 +21,7 @@ public class ShowAPI {
|
||||||
private static final Map<String, Class<? extends Trigger>> triggers = new HashMap<>();
|
private static final Map<String, Class<? extends Trigger>> triggers = new HashMap<>();
|
||||||
|
|
||||||
public static void index(Class<?> clazz, String... packages) {
|
public static void index(Class<?> clazz, String... packages) {
|
||||||
Bukkit.getLogger().info("Indexing triggers for starting point " + clazz.getSimpleName() + "...");
|
ShowControlPlugin.getInstance().getLogger().info("Indexing triggers for starting point " + clazz.getSimpleName() + "...");
|
||||||
|
|
||||||
FilterBuilder filterBuilder = new FilterBuilder();
|
FilterBuilder filterBuilder = new FilterBuilder();
|
||||||
for (String p : packages) filterBuilder.includePackage(p);
|
for (String p : packages) filterBuilder.includePackage(p);
|
||||||
|
@ -35,7 +35,7 @@ public class ShowAPI {
|
||||||
|
|
||||||
Set<Class<?>> trig = reflections.getTypesAnnotatedWith(TriggerIdentifier.class);
|
Set<Class<?>> trig = reflections.getTypesAnnotatedWith(TriggerIdentifier.class);
|
||||||
for (Class<?> trigger : trig) {
|
for (Class<?> trigger : trig) {
|
||||||
Bukkit.getLogger().info("Found trigger " + trigger.getSimpleName() + ".");
|
ShowControlPlugin.getInstance().getLogger().info("Found trigger " + trigger.getSimpleName() + ".");
|
||||||
|
|
||||||
TriggerIdentifier identifier = trigger.getAnnotation(TriggerIdentifier.class);
|
TriggerIdentifier identifier = trigger.getAnnotation(TriggerIdentifier.class);
|
||||||
triggers.put(identifier.value(), (Class<? extends Trigger>) trigger);
|
triggers.put(identifier.value(), (Class<? extends Trigger>) trigger);
|
||||||
|
@ -48,10 +48,12 @@ public class ShowAPI {
|
||||||
|
|
||||||
String triggerType = dataSplitter[0];
|
String triggerType = dataSplitter[0];
|
||||||
|
|
||||||
if (!triggers.containsKey(triggerType)) throw new InvalidTriggerException("Provided trigger " + triggerType + " does not exists!");
|
if (!triggers.containsKey(triggerType))
|
||||||
|
throw new InvalidTriggerException("Provided trigger " + triggerType + " does not exists!");
|
||||||
|
|
||||||
Constructor<T> ctor = (Constructor<T>) triggers.get(triggerType).getConstructor(String[].class);
|
Constructor<T> ctor = (Constructor<T>) triggers.get(triggerType).getConstructor(String[].class);
|
||||||
if (dataSplitter.length < triggers.get(triggerType).getAnnotation(TriggerIdentifier.class).minArgs() + 1) throw new TooFewArgumentsException("Provided triggerdata " + data + " has too few arguments!");
|
if (dataSplitter.length < triggers.get(triggerType).getAnnotation(TriggerIdentifier.class).minArgs() + 1)
|
||||||
return ctor.newInstance(new Object[] { dataSplitterNew });
|
throw new TooFewArgumentsException("Provided triggerdata " + data + " has too few arguments!");
|
||||||
|
return ctor.newInstance(new Object[]{dataSplitterNew});
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
package nl.sbdeveloper.showcontrol.api;
|
package tech.sbdevelopment.showcontrol.api;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
|
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.api;
|
package tech.sbdevelopment.showcontrol.api;
|
||||||
|
|
||||||
import lombok.experimental.StandardException;
|
import lombok.experimental.StandardException;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers;
|
package tech.sbdevelopment.showcontrol.api.triggers;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
@ -17,7 +17,8 @@ public abstract class Trigger {
|
||||||
* This method gets fired when the cue gets removed
|
* This method gets fired when the cue gets removed
|
||||||
* It's not required, and does nothing if it's not needed.
|
* It's not required, and does nothing if it's not needed.
|
||||||
*/
|
*/
|
||||||
public void remove() {}
|
public void remove() {
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the datastring from this cue
|
* Get the datastring from this cue
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers;
|
package tech.sbdevelopment.showcontrol.api.triggers;
|
||||||
|
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
|
|
||||||
|
@ -11,7 +11,10 @@ import java.lang.annotation.Target;
|
||||||
@Target(ElementType.TYPE)
|
@Target(ElementType.TYPE)
|
||||||
public @interface TriggerIdentifier {
|
public @interface TriggerIdentifier {
|
||||||
String value();
|
String value();
|
||||||
|
|
||||||
int minArgs() default 0;
|
int minArgs() default 0;
|
||||||
|
|
||||||
String argDesc() default "";
|
String argDesc() default "";
|
||||||
|
|
||||||
Material item() default Material.NOTE_BLOCK;
|
Material item() default Material.NOTE_BLOCK;
|
||||||
}
|
}
|
|
@ -1,7 +1,7 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers.impl;
|
package tech.sbdevelopment.showcontrol.api.triggers.impl;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers.impl;
|
package tech.sbdevelopment.showcontrol.api.triggers.impl;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers.impl;
|
package tech.sbdevelopment.showcontrol.api.triggers.impl;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.InvalidArgumentException;
|
import tech.sbdevelopment.showcontrol.api.InvalidArgumentException;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import nl.sbdeveloper.showcontrol.elements.Fireworks;
|
import tech.sbdevelopment.showcontrol.elements.Fireworks;
|
||||||
import nl.sbdeveloper.showcontrol.utils.Color;
|
import tech.sbdevelopment.showcontrol.utils.Color;
|
||||||
import org.bukkit.*;
|
import org.bukkit.*;
|
||||||
|
|
||||||
@TriggerIdentifier(value = "firework", minArgs = 5, argDesc = "<world> <x> <y> <z> <configuration ...>", item = Material.FIREWORK_ROCKET)
|
@TriggerIdentifier(value = "firework", minArgs = 5, argDesc = "<world> <x> <y> <z> <configuration ...>", item = Material.FIREWORK_ROCKET)
|
||||||
|
@ -40,7 +40,7 @@ public class FireworkTrigger extends Trigger {
|
||||||
String key = data[i].split(":")[0];
|
String key = data[i].split(":")[0];
|
||||||
String value = data[i].split(":")[1];
|
String value = data[i].split(":")[1];
|
||||||
if (key.equalsIgnoreCase("color")) {
|
if (key.equalsIgnoreCase("color")) {
|
||||||
firework = firework.addColor(Color.valueOf(value.toUpperCase()).getBukkitColor());
|
firework = firework.addColor(tech.sbdevelopment.showcontrol.utils.Color.valueOf(value.toUpperCase()).getBukkitColor());
|
||||||
} else if (key.equalsIgnoreCase("shape")) {
|
} else if (key.equalsIgnoreCase("shape")) {
|
||||||
firework = firework.setType(FireworkEffect.Type.valueOf(value.toUpperCase()));
|
firework = firework.setType(FireworkEffect.Type.valueOf(value.toUpperCase()));
|
||||||
} else if (key.equalsIgnoreCase("fade")) {
|
} else if (key.equalsIgnoreCase("fade")) {
|
|
@ -1,7 +1,7 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers.impl;
|
package tech.sbdevelopment.showcontrol.api.triggers.impl;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
|
|
||||||
@TriggerIdentifier(value = "flamethrower", minArgs = 5, argDesc = "<world> <x> <y> <z> <delay>", item = Material.FIRE)
|
@TriggerIdentifier(value = "flamethrower", minArgs = 5, argDesc = "<world> <x> <y> <z> <delay>", item = Material.FIRE)
|
|
@ -1,9 +1,9 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers.impl;
|
package tech.sbdevelopment.showcontrol.api.triggers.impl;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.InvalidArgumentException;
|
import tech.sbdevelopment.showcontrol.api.InvalidArgumentException;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import nl.sbdeveloper.showcontrol.elements.Lasers;
|
import tech.sbdevelopment.showcontrol.elements.Lasers;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.World;
|
import org.bukkit.World;
|
|
@ -1,8 +1,8 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers.impl;
|
package tech.sbdevelopment.showcontrol.api.triggers.impl;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.InvalidArgumentException;
|
import tech.sbdevelopment.showcontrol.api.InvalidArgumentException;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.Particle;
|
import org.bukkit.Particle;
|
|
@ -1,9 +1,9 @@
|
||||||
package nl.sbdeveloper.showcontrol.api.triggers.impl;
|
package tech.sbdevelopment.showcontrol.api.triggers.impl;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.InvalidArgumentException;
|
import tech.sbdevelopment.showcontrol.api.InvalidArgumentException;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import nl.sbdeveloper.showcontrol.elements.Spots;
|
import tech.sbdevelopment.showcontrol.elements.Spots;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.World;
|
import org.bukkit.World;
|
|
@ -1,14 +1,14 @@
|
||||||
package nl.sbdeveloper.showcontrol.commands;
|
package tech.sbdevelopment.showcontrol.commands;
|
||||||
|
|
||||||
import co.aikar.commands.BaseCommand;
|
import co.aikar.commands.BaseCommand;
|
||||||
import co.aikar.commands.annotation.*;
|
import co.aikar.commands.annotation.*;
|
||||||
import nl.sbdeveloper.showcontrol.api.InvalidTriggerException;
|
import tech.sbdevelopment.showcontrol.api.InvalidTriggerException;
|
||||||
import nl.sbdeveloper.showcontrol.api.ShowAPI;
|
import tech.sbdevelopment.showcontrol.api.ShowAPI;
|
||||||
import nl.sbdeveloper.showcontrol.api.TooFewArgumentsException;
|
import tech.sbdevelopment.showcontrol.api.TooFewArgumentsException;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.data.Shows;
|
import tech.sbdevelopment.showcontrol.data.Shows;
|
||||||
import nl.sbdeveloper.showcontrol.gui.ShowCueGUI;
|
import tech.sbdevelopment.showcontrol.gui.ShowCueGUI;
|
||||||
import nl.sbdeveloper.showcontrol.utils.TimeUtil;
|
import tech.sbdevelopment.showcontrol.utils.TimeUtil;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
|
@ -1,12 +1,12 @@
|
||||||
package nl.sbdeveloper.showcontrol.data;
|
package tech.sbdevelopment.showcontrol.data;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.ShowControlPlugin;
|
import tech.sbdevelopment.showcontrol.ShowControlPlugin;
|
||||||
import nl.sbdeveloper.showcontrol.api.InvalidTriggerException;
|
import tech.sbdevelopment.showcontrol.api.InvalidTriggerException;
|
||||||
import nl.sbdeveloper.showcontrol.api.ShowAPI;
|
import tech.sbdevelopment.showcontrol.api.ShowAPI;
|
||||||
import nl.sbdeveloper.showcontrol.api.ShowCuePoint;
|
import tech.sbdevelopment.showcontrol.api.ShowCuePoint;
|
||||||
import nl.sbdeveloper.showcontrol.api.TooFewArgumentsException;
|
import tech.sbdevelopment.showcontrol.api.TooFewArgumentsException;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.utils.YamlFile;
|
import tech.sbdevelopment.showcontrol.utils.YamlFile;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
@ -19,6 +19,12 @@ public class DataStorage {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void load() {
|
public static void load() {
|
||||||
|
// Create data folder if not exists
|
||||||
|
if (!ShowControlPlugin.getInstance().getDataFolder().exists())
|
||||||
|
ShowControlPlugin.getInstance().getDataFolder().mkdir();
|
||||||
|
if (!new File(ShowControlPlugin.getInstance().getDataFolder(), "data").exists())
|
||||||
|
new File(ShowControlPlugin.getInstance().getDataFolder(), "data").mkdir();
|
||||||
|
|
||||||
File showsFolder = new File(ShowControlPlugin.getInstance().getDataFolder(), "data");
|
File showsFolder = new File(ShowControlPlugin.getInstance().getDataFolder(), "data");
|
||||||
for (File showFile : showsFolder.listFiles()) {
|
for (File showFile : showsFolder.listFiles()) {
|
||||||
String showID = removeExtension(showFile.getName());
|
String showID = removeExtension(showFile.getName());
|
|
@ -1,10 +1,10 @@
|
||||||
package nl.sbdeveloper.showcontrol.data;
|
package tech.sbdevelopment.showcontrol.data;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import nl.sbdeveloper.showcontrol.ShowControlPlugin;
|
import tech.sbdevelopment.showcontrol.ShowControlPlugin;
|
||||||
import nl.sbdeveloper.showcontrol.api.ShowCuePoint;
|
import tech.sbdevelopment.showcontrol.api.ShowCuePoint;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.Trigger;
|
import tech.sbdevelopment.showcontrol.api.triggers.Trigger;
|
||||||
import nl.sbdeveloper.showcontrol.utils.YamlFile;
|
import tech.sbdevelopment.showcontrol.utils.YamlFile;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.elements;
|
package tech.sbdevelopment.showcontrol.elements;
|
||||||
|
|
||||||
import org.bukkit.Color;
|
import org.bukkit.Color;
|
||||||
import org.bukkit.FireworkEffect;
|
import org.bukkit.FireworkEffect;
|
|
@ -1,7 +1,7 @@
|
||||||
package nl.sbdeveloper.showcontrol.elements;
|
package tech.sbdevelopment.showcontrol.elements;
|
||||||
|
|
||||||
import fr.skytasul.guardianbeam.Laser;
|
import fr.skytasul.guardianbeam.Laser;
|
||||||
import nl.sbdeveloper.showcontrol.ShowControlPlugin;
|
import tech.sbdevelopment.showcontrol.ShowControlPlugin;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.scheduler.BukkitRunnable;
|
import org.bukkit.scheduler.BukkitRunnable;
|
||||||
|
|
||||||
|
@ -24,9 +24,8 @@ public class Lasers {
|
||||||
/**
|
/**
|
||||||
* Spawn a new laser, and start it
|
* Spawn a new laser, and start it
|
||||||
*
|
*
|
||||||
* @param name The name of the laser
|
* @param name The name of the laser
|
||||||
* @param baseLoc The start location
|
* @param baseLoc The start location
|
||||||
*
|
|
||||||
* @return true if done, false if an exception
|
* @return true if done, false if an exception
|
||||||
*/
|
*/
|
||||||
public static boolean start(String name, Location baseLoc) {
|
public static boolean start(String name, Location baseLoc) {
|
||||||
|
@ -42,9 +41,9 @@ public class Lasers {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Move a laser to a location
|
* Move a laser to a location
|
||||||
* @param name The name of the laser
|
|
||||||
* @param posLoc The new location
|
|
||||||
*
|
*
|
||||||
|
* @param name The name of the laser
|
||||||
|
* @param posLoc The new location
|
||||||
* @return true if done, false if it doesn't exists
|
* @return true if done, false if it doesn't exists
|
||||||
*/
|
*/
|
||||||
public static boolean move(String name, Location posLoc) {
|
public static boolean move(String name, Location posLoc) {
|
|
@ -1,7 +1,7 @@
|
||||||
package nl.sbdeveloper.showcontrol.elements;
|
package tech.sbdevelopment.showcontrol.elements;
|
||||||
|
|
||||||
import fr.skytasul.guardianbeam.Laser;
|
import fr.skytasul.guardianbeam.Laser;
|
||||||
import nl.sbdeveloper.showcontrol.ShowControlPlugin;
|
import tech.sbdevelopment.showcontrol.ShowControlPlugin;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.scheduler.BukkitRunnable;
|
import org.bukkit.scheduler.BukkitRunnable;
|
||||||
|
|
||||||
|
@ -24,9 +24,8 @@ public class Spots {
|
||||||
/**
|
/**
|
||||||
* Spawn a new spot, and start it
|
* Spawn a new spot, and start it
|
||||||
*
|
*
|
||||||
* @param name The name of the spot
|
* @param name The name of the spot
|
||||||
* @param baseLoc The start location
|
* @param baseLoc The start location
|
||||||
*
|
|
||||||
* @return true if done, false if an exception
|
* @return true if done, false if an exception
|
||||||
*/
|
*/
|
||||||
public static boolean start(String name, Location baseLoc) {
|
public static boolean start(String name, Location baseLoc) {
|
||||||
|
@ -42,9 +41,9 @@ public class Spots {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Move a spot to a location
|
* Move a spot to a location
|
||||||
* @param name The name of the spot
|
|
||||||
* @param posLoc The new location
|
|
||||||
*
|
*
|
||||||
|
* @param name The name of the spot
|
||||||
|
* @param posLoc The new location
|
||||||
* @return true if done, false if it doesn't exists
|
* @return true if done, false if it doesn't exists
|
||||||
*/
|
*/
|
||||||
public static boolean move(String name, Location posLoc) {
|
public static boolean move(String name, Location posLoc) {
|
|
@ -1,22 +1,14 @@
|
||||||
package nl.sbdeveloper.showcontrol.gui;
|
package tech.sbdevelopment.showcontrol.gui;
|
||||||
|
|
||||||
import fr.minuskube.inv.ClickableItem;
|
import fr.minuskube.inv.ClickableItem;
|
||||||
import fr.minuskube.inv.content.InventoryContents;
|
import tech.sbdevelopment.showcontrol.api.ShowCuePoint;
|
||||||
import fr.minuskube.inv.content.Pagination;
|
import tech.sbdevelopment.showcontrol.data.Shows;
|
||||||
import fr.minuskube.inv.content.SlotIterator;
|
import tech.sbdevelopment.showcontrol.utils.MainUtil;
|
||||||
import nl.sbdeveloper.showcontrol.api.ShowCuePoint;
|
import tech.sbdevelopment.showcontrol.utils.inventories.PaginationInventory;
|
||||||
import nl.sbdeveloper.showcontrol.data.Shows;
|
|
||||||
import nl.sbdeveloper.showcontrol.utils.MainUtil;
|
|
||||||
import nl.sbdeveloper.showcontrol.utils.inventories.PaginationInventory;
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.Material;
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import static nl.sbdeveloper.showcontrol.utils.MainUtil.__;
|
|
||||||
|
|
||||||
public class ShowCueGUI extends PaginationInventory {
|
public class ShowCueGUI extends PaginationInventory {
|
||||||
public ShowCueGUI(Player p, String name) {
|
public ShowCueGUI(Player p, String name) {
|
||||||
|
@ -25,7 +17,7 @@ public class ShowCueGUI extends PaginationInventory {
|
||||||
Shows.getPoints(name).stream().sorted(Comparator.comparing(ShowCuePoint::getTime))
|
Shows.getPoints(name).stream().sorted(Comparator.comparing(ShowCuePoint::getTime))
|
||||||
.forEach(cue -> addItem(ClickableItem.of(MainUtil.pointToItem(cue), e -> {
|
.forEach(cue -> addItem(ClickableItem.of(MainUtil.pointToItem(cue), e -> {
|
||||||
Shows.removePoint(name, cue);
|
Shows.removePoint(name, cue);
|
||||||
refresh(p);
|
new ShowCueGUI(p, name).open(p);
|
||||||
})));
|
})));
|
||||||
|
|
||||||
open(p);
|
open(p);
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.utils;
|
package tech.sbdevelopment.showcontrol.utils;
|
||||||
|
|
||||||
public enum Color {
|
public enum Color {
|
||||||
WHITE(org.bukkit.Color.fromRGB(16777215)),
|
WHITE(org.bukkit.Color.fromRGB(16777215)),
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.utils;
|
package tech.sbdevelopment.showcontrol.utils;
|
||||||
|
|
||||||
import com.cryptomorin.xseries.SkullUtils;
|
import com.cryptomorin.xseries.SkullUtils;
|
||||||
import com.cryptomorin.xseries.XMaterial;
|
import com.cryptomorin.xseries.XMaterial;
|
||||||
|
@ -156,7 +156,8 @@ public class ItemBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
public ItemBuilder potionEffect(PotionType type) {
|
public ItemBuilder potionEffect(PotionType type) {
|
||||||
if (!itemStack.getType().name().contains("POTION")) throw new UnsupportedOperationException("ItemStack is not a potion! (Type: " + itemStack.getType().name() + ")");
|
if (!itemStack.getType().name().contains("POTION"))
|
||||||
|
throw new UnsupportedOperationException("ItemStack is not a potion! (Type: " + itemStack.getType().name() + ")");
|
||||||
applyToMeta(meta -> {
|
applyToMeta(meta -> {
|
||||||
if (!(meta instanceof org.bukkit.inventory.meta.PotionMeta)) return meta;
|
if (!(meta instanceof org.bukkit.inventory.meta.PotionMeta)) return meta;
|
||||||
((org.bukkit.inventory.meta.PotionMeta) meta).setBasePotionData(new PotionData(type));
|
((org.bukkit.inventory.meta.PotionMeta) meta).setBasePotionData(new PotionData(type));
|
|
@ -1,7 +1,7 @@
|
||||||
package nl.sbdeveloper.showcontrol.utils;
|
package tech.sbdevelopment.showcontrol.utils;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.api.ShowCuePoint;
|
import tech.sbdevelopment.showcontrol.api.ShowCuePoint;
|
||||||
import nl.sbdeveloper.showcontrol.api.triggers.TriggerIdentifier;
|
import tech.sbdevelopment.showcontrol.api.triggers.TriggerIdentifier;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.util.ChatPaginator;
|
import org.bukkit.util.ChatPaginator;
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.utils;
|
package tech.sbdevelopment.showcontrol.utils;
|
||||||
|
|
||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.utils;
|
package tech.sbdevelopment.showcontrol.utils;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
package nl.sbdeveloper.showcontrol.utils;
|
package tech.sbdevelopment.showcontrol.utils;
|
||||||
|
|
||||||
import nl.sbdeveloper.showcontrol.ShowControlPlugin;
|
import tech.sbdevelopment.showcontrol.ShowControlPlugin;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.configuration.file.FileConfiguration;
|
import org.bukkit.configuration.file.FileConfiguration;
|
||||||
import org.bukkit.configuration.file.YamlConfiguration;
|
import org.bukkit.configuration.file.YamlConfiguration;
|
|
@ -1,4 +1,4 @@
|
||||||
package nl.sbdeveloper.showcontrol.utils.inventories;
|
package tech.sbdevelopment.showcontrol.utils.inventories;
|
||||||
|
|
||||||
import com.cryptomorin.xseries.XMaterial;
|
import com.cryptomorin.xseries.XMaterial;
|
||||||
import fr.minuskube.inv.ClickableItem;
|
import fr.minuskube.inv.ClickableItem;
|
||||||
|
@ -6,11 +6,12 @@ import fr.minuskube.inv.InventoryManager;
|
||||||
import fr.minuskube.inv.SmartInventory;
|
import fr.minuskube.inv.SmartInventory;
|
||||||
import fr.minuskube.inv.content.InventoryContents;
|
import fr.minuskube.inv.content.InventoryContents;
|
||||||
import fr.minuskube.inv.content.InventoryProvider;
|
import fr.minuskube.inv.content.InventoryProvider;
|
||||||
import nl.sbdeveloper.showcontrol.utils.ItemBuilder;
|
import tech.sbdevelopment.showcontrol.utils.ItemBuilder;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
import static nl.sbdeveloper.showcontrol.utils.MainUtil.__;
|
import static tech.sbdevelopment.showcontrol.utils.MainUtil.__;
|
||||||
|
|
||||||
public abstract class Inventory implements InventoryProvider {
|
public abstract class Inventory implements InventoryProvider {
|
||||||
private static InventoryManager manager;
|
private static InventoryManager manager;
|
||||||
|
@ -35,6 +36,7 @@ public abstract class Inventory implements InventoryProvider {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void open(Player player, int page) {
|
protected void open(Player player, int page) {
|
||||||
|
Bukkit.getLogger().info("Opening page " + page + " for " + player.getName() + "...");
|
||||||
this.inventory.open(player, page);
|
this.inventory.open(player, page);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,23 +1,22 @@
|
||||||
package nl.sbdeveloper.showcontrol.utils.inventories;
|
package tech.sbdevelopment.showcontrol.utils.inventories;
|
||||||
|
|
||||||
import com.cryptomorin.xseries.XMaterial;
|
import com.cryptomorin.xseries.XMaterial;
|
||||||
import fr.minuskube.inv.ClickableItem;
|
import fr.minuskube.inv.ClickableItem;
|
||||||
import fr.minuskube.inv.content.InventoryContents;
|
import fr.minuskube.inv.content.InventoryContents;
|
||||||
import fr.minuskube.inv.content.Pagination;
|
import fr.minuskube.inv.content.Pagination;
|
||||||
import fr.minuskube.inv.content.SlotIterator;
|
import fr.minuskube.inv.content.SlotIterator;
|
||||||
import nl.sbdeveloper.showcontrol.utils.ItemBuilder;
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
import tech.sbdevelopment.showcontrol.utils.ItemBuilder;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import static nl.sbdeveloper.showcontrol.utils.MainUtil.__;
|
import static tech.sbdevelopment.showcontrol.utils.MainUtil.__;
|
||||||
|
|
||||||
public abstract class PaginationInventory extends Inventory {
|
public abstract class PaginationInventory extends Inventory {
|
||||||
private final int paginationRows; //Amount of rows for pagination (excluding button row)
|
private final int paginationRows; //Amount of rows for pagination (excluding button row)
|
||||||
private final int paginationRow; //The start row of the pagination (starts from 0)
|
private final int paginationRow; //The start row of the pagination (starts from 0)
|
||||||
private final List<ClickableItem> items = new ArrayList<>();
|
private final List<ClickableItem> items = new ArrayList<>();
|
||||||
private Pagination pagination; //Available after init() is called, can only be used in the event of a ClickableItem!!!
|
|
||||||
|
|
||||||
private final int staticRows; //Amount of rows that are static
|
private final int staticRows; //Amount of rows that are static
|
||||||
private final boolean filler;
|
private final boolean filler;
|
||||||
|
@ -44,10 +43,6 @@ public abstract class PaginationInventory extends Inventory {
|
||||||
this.items.add(item);
|
this.items.add(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void refresh(Player player) {
|
|
||||||
open(player, pagination.getPage());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addItems(Player player, InventoryContents contents) {
|
public void addItems(Player player, InventoryContents contents) {
|
||||||
//Set up static items
|
//Set up static items
|
||||||
|
@ -60,22 +55,22 @@ public abstract class PaginationInventory extends Inventory {
|
||||||
addStaticItems(player, contents);
|
addStaticItems(player, contents);
|
||||||
|
|
||||||
//Set up pagination
|
//Set up pagination
|
||||||
pagination = contents.pagination();
|
Pagination pagination = contents.pagination();
|
||||||
pagination.setItems(items.toArray(ClickableItem[]::new));
|
pagination.setItems(items.toArray(ClickableItem[]::new));
|
||||||
pagination.setItemsPerPage(9 * paginationRows);
|
pagination.setItemsPerPage(9 * paginationRows);
|
||||||
pagination.addToIterator(contents.newIterator(SlotIterator.Type.HORIZONTAL, paginationRow, 0));
|
pagination.addToIterator(contents.newIterator(SlotIterator.Type.HORIZONTAL, paginationRow, 0));
|
||||||
|
|
||||||
contents.set(paginationRows, 0, ClickableItem.of(new ItemBuilder(XMaterial.ARROW.parseItem()).displayname(__("&6First page"))
|
contents.set(paginationRows, 0, ClickableItem.of(new ItemBuilder(XMaterial.ARROW.parseItem()).displayname(__("&6First page"))
|
||||||
.lore(__("&fGo to the first page (" + pagination.first().getPage() + ")")).getItemStack(),
|
.lore(__("&fGo to the first page (0)")).getItemStack(),
|
||||||
e -> open(player, pagination.first().getPage())));
|
e -> open(player, pagination.first().getPage())));
|
||||||
contents.set(paginationRows, 3, ClickableItem.of(new ItemBuilder(XMaterial.OAK_SIGN.parseItem()).displayname(__("&6Previous"))
|
contents.set(paginationRows, 3, ClickableItem.of(new ItemBuilder(XMaterial.OAK_SIGN.parseItem()).displayname(__("&6Previous"))
|
||||||
.lore(__("&fGo to the previous page (" + pagination.previous().getPage() + ")")).getItemStack(),
|
.lore(__("&fGo to the previous page (" + (pagination.isFirst() ? pagination.getPage() : pagination.getPage() - 1) + ")")).getItemStack(),
|
||||||
e -> open(player, pagination.previous().getPage())));
|
e -> open(player, pagination.previous().getPage())));
|
||||||
contents.set(paginationRows, 5, ClickableItem.of(new ItemBuilder(XMaterial.OAK_SIGN.parseItem()).displayname(__("&6Next"))
|
contents.set(paginationRows, 5, ClickableItem.of(new ItemBuilder(XMaterial.OAK_SIGN.parseItem()).displayname(__("&6Next"))
|
||||||
.lore(__("&fGo to the next page (" + pagination.next().getPage() + ")")).getItemStack(),
|
.lore(__("&fGo to the next page (" + (pagination.isLast() ? pagination.getPage() : pagination.getPage() + 1) + ")")).getItemStack(),
|
||||||
e -> open(player, pagination.next().getPage())));
|
e -> open(player, pagination.next().getPage())));
|
||||||
contents.set(paginationRows, 8, ClickableItem.of(new ItemBuilder(XMaterial.ARROW.parseItem()).displayname(__("&6Last page"))
|
contents.set(paginationRows, 8, ClickableItem.of(new ItemBuilder(XMaterial.ARROW.parseItem()).displayname(__("&6Last page"))
|
||||||
.lore(__("&fGo to the last page (" + pagination.last().getPage() + ")")).getItemStack(),
|
.lore(__("&fGo to the last page (" + items.size() / (9 * paginationRows) + ")")).getItemStack(),
|
||||||
e -> open(player, pagination.last().getPage())));
|
e -> open(player, pagination.last().getPage())));
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
name: ShowControl
|
name: ShowControl
|
||||||
version: ${project.version}
|
version: ${project.version}
|
||||||
main: nl.sbdeveloper.showcontrol.ShowControlPlugin
|
main: tech.sbdevelopment.showcontrol.ShowControlPlugin
|
||||||
api-version: 1.13
|
api-version: 1.13
|
||||||
authors: [SBDeveloper]
|
authors: [SBDeveloper]
|
||||||
description: Create shows easily using this plugin!
|
description: Create shows easily using this plugin!
|
||||||
|
|
Loading…
Add table
Reference in a new issue