Delphi

A plugin for making menus with XML, styling them with CSS and adding functionality with either Java or JavaScript.

This plugin is in development! There will be bugs and missing features. At the moment, the only supported layouts are the default Flow and Flexbox. Positioned others will come later.

Features

  • Ability to create HTML-like menus with XML and CSS (With limited native SCSS integration)
  • Full support for CSS selectors (Including pseudo classes like :hover and :active)
  • Support for regular HTML rendering (With display: inline, display: block, etc)
  • Support for Flexbox rendering (With display: flex)
  • JavaScript integration for easy scripting.
  • Contuing development and new features being added all the time.
  • Extensive documentation (at dev.juliewoolie.com)
  • Fully documented Java API (at dev.juliewoolie.com/menus/javadoc/0.6.0)
  • Devtools to help you create menus and fix issues.
  • All Delphi commands can be used in the /execute command and by datapack functions!

Commands And Permissions

  • /delphi open <players> <identifier> - Opens a Delphi menu.
  • /delphi close all - Closes all menus.
  • /delphi close targeted - Closes the menu you're looking at.
  • /delphi close <instance name> - Closes the delphi menu with the instance-name.
  • /delphi reload - Reloads the plugin's config.
  • /delphi devtools - Opens devtools for the page you're looking at.

Permissions

  • delphi.commands - Permission required for using any Delphi commands such as open, close, and reload.
  • delphi.commands.players - Permission for commands that manage players.
  • delphi.commands.devtools - Permission for the devtools command.
  • delphi.commands.debug - Permission required for executing debug commands.

Examples

Basic "Hello, world!" page

Start by going to plugins/Delphi/modules on your File Explorer and creating a folder, for this example, we'll use hello-world. Go into that directory and create a file named index.xml.

Open that file with a text editor (Preferrably VS Code, Notepad++ or something similar). You can then copy+paste this:

<delphi> <!-- Root tag -->
  <body> <!-- The body which contains all our content -->
    <h1>Hello, world!</h1> <!-- Big text saying "Hello, world!" -->
  </body>
</delphi>

In-game, you can then open this menu with /delphi open @s hello-world


Project members

juliewoolie

Member

Details

Licensed GPL-3.0-only
Published a month ago
Updated 9 days ago