Zone.java

AKL City ยท akl-city.git

Branches > main > d6131a1 > files / src / main / java / dev / grahp / aklcity / Zone.java

package dev.grahp.aklcity;

import org.bukkit.event.Listener;
import org.bukkit.event.EventHandler;
import org.bukkit.event.player.PlayerMoveEvent;
import org.bukkit.entity.Player;

// Should be called Zone or whatever
public class Zone implements Listener {
  // Actionbar
  // Anti-grief stuff:
  // Steal and rotate paintings
  // Steal stuff out of chests?
  // Break/place blocks
  // Edit signs
  // Flip trapdoors?

  // on join and leave, start and stop these tasks

  public void onEnterChunk(Player p) {
  }

  @EventHandler
  public void onMove(PlayerMoveEvent e) {
    if (e.getTo() == null) return;

    var from = e.getFrom();
    var to = e.getTo();

    int fromChunkX = from.getBlockX() >> 4;
    int fromChunkZ = from.getBlockZ() >> 4;
    int toChunkX = to.getBlockX() >> 4;
    int toChunkZ = to.getBlockZ() >> 4;

    if (fromChunkX == toChunkX && fromChunkZ == toChunkZ) return;

    onEnterChunk(e.getPlayer());
  }
}