Standalone radial menu framework mod for Hytale.
   
 

Standalone radial menu framework mod for Hytale.
Server/RadialMenu/Menus/*.jsonRadialMenuConfig has no Id field.Type: "RadialMenuInteraction"RadialMenuApiExecuteCommandInvokeRegisteredActionSelectAndArm (menu click selects only; execute on ExecuteSelected)SelectAndRun (menu click executes immediately and updates selection)RadialMenuConfig FieldsEnabled (true default)ItemIds[] (menu can be auto-resolved by held item id)ExecutionMode (SelectAndArm default)DefaultOptionId (optional)Options[] (required, 1..8)Visual (optional, defaults to vector mode)Visual FieldsRenderMode: Vector (default) or TextureGeometry:OuterDiameterPxInnerDiameterPxLabelRadiusPxCenterDiameterPxBorderThicknessPxLabel.FontSizeStates:Default, Hover, Pressed, Selected, DisabledFillColor, TextColor, BorderColorTextureSet:Preset (LegacyDefault)Prefix (custom texture set path using the same naming convention)ExecuteCommandId, optional Label/LabelKey, Command, optional VisualOverrideInvokeRegisteredActionId, optional Label/LabelKey, ActionId, optional Payload, optional VisualOverrideVisualOverride Fields (Option)LabelFontSize (optional)States (optional partial state/color overrides)RadialMenuInteraction supports:
MenuId (optional menu key override)CommandId (OpenMenu or ExecuteSelected)ExecutionMode (optional per-binding mode override)Example item is included:
Server/Item/Items/Commands/Alec_Radial_Menu_Example.jsonFrom another mod:
RadialMenuApi api = RadialMenuMod.getApiInstance();
if (api != null) {
AutoCloseable registration = api.registerActionHandler("Example.Ping", context -> {
// custom action logic
return true;
});
// Optional direct control:
// api.openMenu(player, "menus/example");
// api.executeSelected(player, "menus/example");
}.\mvnw.cmd test
.\mvnw.cmd package# Build + install jar to Server/mods and UserData/Mods
.\mvnw.cmd -Pinstall-plugin package
# Build + install + launch Hytale server
.\mvnw.cmd -Prun-server package
# Use prerelease install path (can combine with profiles above)
.\mvnw.cmd -Dprerelease=true -Pinstall-plugin package
0 Comments