From e219717db69a5758134ecb5fd7339633819af874 Mon Sep 17 00:00:00 2001 From: ayunami2000 Date: Thu, 21 Apr 2022 15:58:48 -0400 Subject: [PATCH] amazing... --- .../me/ayunami2000/ayunEagVidMap/Main.java | 7 +++++-- .../ayunEagVidMap/VideoMapPacketCodec.java | 4 ++-- src/main/resources/messages.yml | 2 +- target/ayunEagVidMap-1.0-SNAPSHOT.jar | Bin 15147 -> 15298 bytes 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/java/me/ayunami2000/ayunEagVidMap/Main.java b/src/main/java/me/ayunami2000/ayunEagVidMap/Main.java index 7337544..58442dc 100644 --- a/src/main/java/me/ayunami2000/ayunEagVidMap/Main.java +++ b/src/main/java/me/ayunami2000/ayunEagVidMap/Main.java @@ -34,7 +34,6 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener { @Override public void onEnable(){ - MessageHandler.initMessages(); this.saveDefaultConfig(); this.rlConfig(); syncTask = this.getServer().getScheduler().scheduleSyncRepeatingTask(this, this::syncToAllPlayers, 10000, 10000); // sync every 10 seconds @@ -49,6 +48,7 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener { } private void rlConfig() { + MessageHandler.initMessages(); audioLoc.setX(this.getConfig().getDouble("audio.x")); audioLoc.setY(this.getConfig().getDouble("audio.y")); audioLoc.setZ(this.getConfig().getDouble("audio.z")); @@ -89,7 +89,9 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener { @EventHandler public void onPlayerJoin(PlayerJoinEvent event) { - syncToPlayer(event.getPlayer()); + Player player = event.getPlayer(); + videoMapCodec.beginPlaybackBukkit(videoMapCodec.getURL(), videoMapCodec.isLoopEnable(), videoMapCodec.getDuration()).send(player); + syncToPlayer(player); } @Override @@ -164,6 +166,7 @@ public class Main extends JavaPlugin implements CommandExecutor, Listener { case "p": case "play": case "pause": + if (args.length > 1 && args[1].equalsIgnoreCase("force")) urlChanged = true; if (urlChanged || videoMapCodec.isPaused()) { if (urlChanged) { urlChanged = false; diff --git a/src/main/java/me/ayunami2000/ayunEagVidMap/VideoMapPacketCodec.java b/src/main/java/me/ayunami2000/ayunEagVidMap/VideoMapPacketCodec.java index 6a20ee2..11798ba 100644 --- a/src/main/java/me/ayunami2000/ayunEagVidMap/VideoMapPacketCodec.java +++ b/src/main/java/me/ayunami2000/ayunEagVidMap/VideoMapPacketCodec.java @@ -34,8 +34,8 @@ public class VideoMapPacketCodec { this.posX = posX; this.posY = posY; this.posZ = posZ; - this.volume = 1.0f; - this.frameRate = 60; + this.volume = volume; + this.frameRate = 30; this.requiresPositionPacket = true; this.requiresFullResetPacket = true; this.isDisabled = true; diff --git a/src/main/resources/messages.yml b/src/main/resources/messages.yml index a689af2..489940d 100644 --- a/src/main/resources/messages.yml +++ b/src/main/resources/messages.yml @@ -4,7 +4,7 @@ usage: - "&7&o/ayunvid [h|help] &3- Show this message." - "&7&o/ayunvid [url] &3- Specify the video URL to use, or get the current one. &l(Must be CORS-compatible!)" - "&7&o/ayunvid [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 &3- Toggle playback of the video. This also loads the new video after the video URL is changed." + - "&7&o/ayunvid [force] &3- Toggle playback of the video. This also loads the new video after the video URL is changed. Optionally force a reload of the video." - "&7&o/ayunvid [ ] &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." - "&7&o/ayunvid &3- Reloads the configuration file." currentUrl: "&3Current URL: {0}" diff --git a/target/ayunEagVidMap-1.0-SNAPSHOT.jar b/target/ayunEagVidMap-1.0-SNAPSHOT.jar index 89c2d201338c6238b714bd6e0c6c908a563a24fc..1632821641ed3e556fadf912c03cd8713def747c 100644 GIT binary patch delta 8328 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