mirror of
https://github.com/ayunami2000/ayunEagVidMap.git
synced 2024-12-21 14:14:11 -08:00
finish messages
This commit is contained in:
parent
c5e4c01f8a
commit
f450a2de5b
|
@ -14,6 +14,7 @@ import org.bukkit.util.Vector;
|
|||
public class Main extends JavaPlugin implements CommandExecutor, Listener {
|
||||
//todo: add queue command + store audio loc world & dont send to players in other worlds???
|
||||
//todo: also when holding video map play audio at player location for that player
|
||||
//todo: reload config command
|
||||
|
||||
public static Main plugin;
|
||||
|
||||
|
@ -22,6 +23,9 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener {
|
|||
private String url = "";
|
||||
private boolean urlChanged = true;
|
||||
private int syncTask = -1;
|
||||
private final int[] mapSize = {1, 1};
|
||||
private int mapSizeCap = 10;
|
||||
private int mapOffset = 0;
|
||||
|
||||
@Override
|
||||
public void onLoad(){
|
||||
|
@ -35,7 +39,9 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener {
|
|||
audioLoc.setX(this.getConfig().getDouble("audio.x"));
|
||||
audioLoc.setY(this.getConfig().getDouble("audio.y"));
|
||||
audioLoc.setZ(this.getConfig().getDouble("audio.z"));
|
||||
setSize(this.getConfig().getInt("width"), this.getConfig().getInt("width"));
|
||||
mapSizeCap = this.getConfig().getInt("size.cap");
|
||||
mapOffset = this.getConfig().getInt("offset");
|
||||
setSize(this.getConfig().getInt("size.width"), this.getConfig().getInt("size.height"));
|
||||
url = this.getConfig().getString("url");
|
||||
syncTask = this.getServer().getScheduler().scheduleSyncRepeatingTask(this, this::syncToAllPlayers, 10000, 10000); // sync every 10 seconds
|
||||
this.getCommand("ayunvid").setExecutor(this);
|
||||
|
@ -61,8 +67,14 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener {
|
|||
}
|
||||
|
||||
private void setSize(int width, int height) {
|
||||
if (mapSizeCap > 0) {
|
||||
width = Math.min(width, mapSizeCap);
|
||||
height = Math.min(height, mapSizeCap);
|
||||
}
|
||||
mapSize[0] = width;
|
||||
mapSize[1] = height;
|
||||
int[][] mapIds = new int[height][width];
|
||||
int offset = this.getConfig().getInt("offset");
|
||||
int offset = mapOffset;
|
||||
for (int y = 0; y < mapIds.length; y++) {
|
||||
for (int x = 0; x < mapIds[y].length; x++) {
|
||||
mapIds[y][x] = offset++;
|
||||
|
@ -123,7 +135,7 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener {
|
|||
offendingIndex++;
|
||||
z = Double.parseDouble(args[3]);
|
||||
} catch(NumberFormatException e) {
|
||||
MessageHandler.sendPrefixedMessage(sender, "notANumber", args[offendingIndex]);
|
||||
MessageHandler.sendPrefixedMessage(sender, "notANumber", args[offendingIndex], MessageHandler.getMessage("double"));
|
||||
break;
|
||||
}
|
||||
audioLoc.setX(x + 0.5);
|
||||
|
@ -159,28 +171,30 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener {
|
|||
case "s":
|
||||
case "size":
|
||||
if (args.length < 3) {
|
||||
sender.sendMessage("must specify width & height to set! current vals are...");
|
||||
MessageHandler.sendPrefixedMessage(sender, "currentSize", mapSize[0], mapSize[1], mapSize[0] * mapSize[1]);
|
||||
break;
|
||||
}
|
||||
int width;
|
||||
int height;
|
||||
int offendingIndex = 1;
|
||||
try {
|
||||
width = Math.max(1, Integer.parseInt(args[1]));
|
||||
offendingIndex++;
|
||||
height = Math.max(1, Integer.parseInt(args[2]));
|
||||
} catch(NumberFormatException e) {
|
||||
sender.sendMessage("");
|
||||
MessageHandler.sendPrefixedMessage(sender, "notANumber", args[offendingIndex], MessageHandler.getMessage("integer"));
|
||||
break;
|
||||
}
|
||||
this.getConfig().set("width", width);
|
||||
this.getConfig().set("height", height);
|
||||
this.saveConfig();
|
||||
sendToAllPlayers(videoMapCodec.disableVideoBukkit());
|
||||
setSize(width, height);
|
||||
syncToAllPlayers();
|
||||
sender.sendMessage("set width & height");
|
||||
this.getConfig().set("width", mapSize[0]);
|
||||
this.getConfig().set("height", mapSize[1]);
|
||||
this.saveConfig();
|
||||
MessageHandler.sendPrefixedMessage(sender, "setSize", mapSize[0], mapSize[1], mapSize[0] * mapSize[1]);
|
||||
break;
|
||||
default:
|
||||
sender.sendMessage("invalid");
|
||||
MessageHandler.sendPrefixedMessage(sender, "invalidUsage");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
# URL of video to play
|
||||
url: ""
|
||||
# screen size
|
||||
width: 3
|
||||
height: 2
|
||||
# screen size, in maps
|
||||
size:
|
||||
width: 1
|
||||
height: 1
|
||||
# maximum width/height accepted internally (set to 0 or less to disable)
|
||||
cap: 10
|
||||
# map ID offset
|
||||
offset: 0
|
||||
# audio location
|
||||
|
|
|
@ -2,16 +2,21 @@ prefix: "&9&l[&b&l&oayun&d&lEVM&9&l] &r"
|
|||
usage:
|
||||
- "&3&nUsage:"
|
||||
- "&7&o/ayunvid [h|help] &3- Show this message."
|
||||
- "&7&o/ayunvid <u|url> <url> &3- Specify the video URL to use. (Must be CORS-compatible!)"
|
||||
- "&7&o/ayunvid <l|loc|location> [x y z] &3- Specify the location that the audio will come from."
|
||||
- "&7&o/ayunvid <p|play|pause> &3- Toggle playback of the video."
|
||||
- "&7&o/ayunvid <s|size> <width> <height>&3- Set size of video, in maps. E.g. a width of 2 and a height of 3 would result in a video using 6 maps."
|
||||
- "&7&o/ayunvid <u|url> [url] &3- Specify the video URL to use, or get the current one. &l(Must be CORS-compatible!)"
|
||||
- "&7&o/ayunvid <l|loc|location> [x y z] &3- Specify the location that the audio will come from. If no arguments are supplied, this will default to the sender's position."
|
||||
- "&7&o/ayunvid <p|play|pause> &3- Toggle playback of the video. This also loads the new video after the video URL is changed."
|
||||
- "&7&o/ayunvid <s|size> [<width> <height>]&3- Sets or gets the size of video, in maps. E.g., a width of 2 and a height of 3 would result in a video using 6 maps."
|
||||
currentUrl: "&3Current URL: {0}"
|
||||
setUrl: "&3Successfully set URL."
|
||||
locFromConsole: "&cError: You must specify the coordinates when running this command from the console!"
|
||||
locCurrent: "&3Using current location..."
|
||||
notANumber: "&cError: \"{0}\" is not a valid number!"
|
||||
notANumber: "&cError: \"{0}\" is not a valid {1}!"
|
||||
double: "number"
|
||||
integer: "integer"
|
||||
locSet: "&3Successfully set audio location. ({0})"
|
||||
playing: "&3Loading and playing video..."
|
||||
resuming: "&3Resuming video..."
|
||||
pausing: "&3Pausing video..."
|
||||
currentSize: "&3Current size: {0} maps wide by {1} maps tall ({2} maps total)"
|
||||
setSize: "&3Set size to {0} maps wide by {1} maps tall ({2} maps total)"
|
||||
invalidUsage: "&cError: That is not a valid subcommand! Try &n/ayunvid&c help for usage."
|
Loading…
Reference in New Issue
Block a user