https://github.com/squidxtv/frameui
FrameUI is a Minecraft plugin library designed to easily create screens within a server.
https://github.com/squidxtv/frameui
java library minecraft spigot
Last synced: 5 months ago
JSON representation
FrameUI is a Minecraft plugin library designed to easily create screens within a server.
- Host: GitHub
- URL: https://github.com/squidxtv/frameui
- Owner: SquidXTV
- License: gpl-3.0
- Created: 2024-07-07T10:25:58.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-10-23T16:26:16.000Z (over 1 year ago)
- Last Synced: 2024-10-23T22:27:04.374Z (over 1 year ago)
- Topics: java, library, minecraft, spigot
- Language: Java
- Homepage:
- Size: 194 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FrameUI
FrameUI is a Minecraft plugin library designed for developers to easily create and manage screens within the server.
## Core Concepts
### Screen
A `Screen` represents a visual interface displayed on one or more item frames,
which can be customized to show various content.
### Renderer
Each `Screen` uses a `Renderer` implementation to define how its content is
visually represented, allowing developers to customize the logic for rendering.
### ScreenSpawner
On the other hand, the `ScreenSpawner` implementation is used to define how to
manage the lifecycle of screens, how they are created, updated and despawned.
### Player interactions
They also support click and scroll interactions, allowing for dynamic player
interactions. Developers can customize the permissions for these actions and
define their maximum interaction distance to trigger the event. Server owners
can also disable these features entirely via the config.
### Standard Implementations
The library itself provides a `BufferedImageRenderer` implementation that renders a `BufferedImage` on a `Screen`. It also provides
the `PacketScreenSpawner` as an implementation for `ScreenSpawner` that uses packets to spawn, update and despawn the screens in the Minecraft World.
Map data is sent through packets as well.