Class MazeVisuals

java.lang.Object
dev.despical.mazeengine.service.visual.MazeVisuals
All Implemented Interfaces:
AutoCloseable, org.bukkit.event.Listener

public final class MazeVisuals extends Object implements org.bukkit.event.Listener, AutoCloseable
Owns private previews and route guides anchored to maze world coordinates.

The service delegates session creation to preview and guide managers, budgets display spawning on a server ticker, updates routes as viewers move, and combines their status in one action bar. Preview geometry planning uses a bounded worker queue; entity and chunk ownership stays on the server thread.

Sessions end on expiry, viewer disconnect, relevant world unload, or obsolete maze state. Reload refreshes display appearance and invalidates guide geometry while captured expiry times remain intact. Closing stops planning and ticking and releases displays and chunk leases for every session.

  • Constructor Details

  • Method Details

    • preview

      public void preview(org.bukkit.entity.Player player, String name, org.bukkit.World world, int x, int y, int z, int width, int depth, long seed, Preset preset)
    • build

      public void build(org.bukkit.entity.Player player, String token)
    • confirmPreview

      public boolean confirmPreview(org.bukkit.entity.Player player, String name, boolean plain)
    • stopPreview

      public void stopPreview(org.bukkit.entity.Player player)
    • stopPreview

      public void stopPreview(org.bukkit.entity.Player player, String token)
    • solve

      public void solve(org.bukkit.entity.Player player, MazeRecord record)
    • stopSolver

      public void stopSolver(org.bukkit.entity.Player player)
    • stopSolver

      public void stopSolver(org.bukkit.entity.Player player, String token)
    • stopSolver

      public void stopSolver(org.bukkit.entity.Player player, String token, String name)
    • reloadSettings

      public void reloadSettings()
    • quit

      public void quit(org.bukkit.event.player.PlayerQuitEvent event)
    • unload

      public void unload(org.bukkit.event.world.WorldUnloadEvent event)
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable