Skip to content

Commit

Permalink
Changes by nikla
Browse files Browse the repository at this point in the history
  • Loading branch information
Goldmensch committed Sep 13, 2024
1 parent 8289bff commit 0ee059b
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 2 deletions.
50 changes: 50 additions & 0 deletions src/main/java/club/devcord/gamejam/Lagger.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package club.devcord.gamejam;

import org.bukkit.Location;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerTeleportEvent;
import org.bukkit.scheduler.BukkitTask;

import java.util.*;

public class Lagger {
private final Nigulpyggub plugin;
private final Map<Player, List<Location>> playerLocations = new HashMap<>();
private final Random random = new Random();
private final List<BukkitTask> tasks = new ArrayList<>();

public Lagger(Nigulpyggub plugin) {
this.plugin = plugin;
}

public void start() {
stop();
tasks.add(plugin.getServer().getScheduler().runTaskTimer(plugin, this::saveLocations, 10, 10));
tasks.add(plugin.getServer().getScheduler().runTaskTimer(plugin, this::lagPlayers, 10, 60));
}

public void stop() {
tasks.forEach(BukkitTask::cancel);
}

private void saveLocations() {
plugin.getServer().getOnlinePlayers().forEach(player -> {
var locations = playerLocations.getOrDefault(player, new ArrayList<>());
if(locations.size() > 3) {
locations.removeFirst();
}
locations.add(player.getLocation());
playerLocations.put(player, locations);
});
}

private void lagPlayers() {
plugin.getServer().getOnlinePlayers().forEach(player -> {
var locations = playerLocations.getOrDefault(player, new ArrayList<>());
if(random.nextInt(0, 100) < 5 && !locations.isEmpty()) {
var location = locations.get(random.nextInt(locations.size()));
player.teleport(location, PlayerTeleportEvent.TeleportCause.PLUGIN);
}
});
}
}
2 changes: 1 addition & 1 deletion src/main/java/club/devcord/gamejam/Nigulpyggub.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public class Nigulpyggub extends JavaPlugin {

@Override
public void onDisable() {

lagger.stop();
}

@Override
Expand Down
7 changes: 6 additions & 1 deletion src/main/java/club/devcord/gamejam/PlayerJoinListener.java
Original file line number Diff line number Diff line change
@@ -1,16 +1,21 @@
package club.devcord.gamejam;

import net.kyori.adventure.text.minimessage.MiniMessage;
import org.bukkit.GameMode;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;

public class PlayerJoinListener implements Listener {

@EventHandler
public void activatePlayerResourcePack(PlayerJoinEvent event) {
public void onPlayerJoin(PlayerJoinEvent event) {
event.getPlayer().sendMessage(MiniMessage.miniMessage().deserialize("<rainbow><bold>Welcome to our test server, have fun and enjoy our little theme park!"));

if(!event.getPlayer().isOp()) {
event.getPlayer().setGameMode(GameMode.ADVENTURE);
}

event.getPlayer().setResourcePack("https://panel.traidio.net/resourcepack.zip");
}
}

0 comments on commit 0ee059b

Please sign in to comment.