← Назад к ресурсам

Minescript HUD Addon

This mod adds the ability to draw custom HUD elements in Minescript.

Modrinth game-mechanics technology utility

Описание

# Minescript HUD Addon This mod adds the ability to draw custom HUD elements in [Minescript](https://modrinth.com/mod/minescript). For rendering objects in the world, I will be making a seperate mod. Documentation can be found in the [wiki](https://maksymiblue12.github.io/Minescript-Hud-Addon/). # Bugs/Features ### If you have any suggestions, or found any bugs, please [fill out this google form](https://docs.google.com/forms/d/e/1FAIpQLSdu7E3htzYRKgDzWqmLsKmJvipLt042Wlo777EFCwW-H2KP1Q/viewform). currently working on adding in world drawing. ## Features - Draw ***text*** on the HUD - Draw ***rectangles*** and gradient rectangles - Render ***items*** - Render ***textures*** - Render ***custom shapes*** - ***Animate*** all element properties - ***Detect*** mouse hover and click events - Control ***display duration*** and ***render layers*** ## Installation 1. Install [Minescript](https://modrinth.com/mod/minescript). 2. Place this addon in your `mods` folder. 3. Launch the game. ## Example ```python from hud_renderer import * add_text("Hello World",x=10,y=10,color=argb(255,255,255,255),shadow=True,display_duration=5) ``` ## Animations All HUD elements can be animated using animation functions. ```python from hud_renderer import * def move(text:TextObject): text.x+=1 _id=add_text("I can MOVE!",x=10,y=10,color=Colors.WHITE,shadow=True,display_duration=5) animate_text(_id,move) ``` ## Mouse Events All objects can detect mouse hover and click events. ```python from minescript import echo from hud_renderer import * def hover(text:TextObject,mouse:MouseObject,exited:bool): if (exited): text.color=Colors.WHITE else: text.color=Colors.GREEN def click(text:TextObject,mouse:MouseObject): echo("Clicked!") _id=add_text("Click me!",x=10,y=10,color=Colors.WHITE,shadow=True,display_duration=10) add_mouse_callbacks_and_wait(_id,on_hover=hover,on_click=click) ``` ## Layer System Elements are rendered in layers. Elements with higher layer values render above elements with lower layers. ## API Overview > A more detailed API can be found on the [wiki](https://maksymiblue12.github.io/Minescript-Hud-Addon/). ### Text - `add_text(...)` - `add_text_with_background(...)` - `add_advanced_text(...)` - `add_advanced_text_with_background(...)` - `animate_text(...)` - `animate_text_with_background(...)` ### Rectangles - `add_rectangle(...)` - `add_rectangle_from_corners(...)` - `add_gradient_rectangle(...)` - `add_stroked_rectangle(...)` - `animate_rectangle(...)` ### Items - `add_item(...)` - `add_advanced_item(...)` - `animate_item(...)` ### Textures > **Note:** Custom textures must be added by a resource pack in the `assets/minescripthud/textures/gui/sprites/` folder. - `add_texture(...)` - `add_advanced_texture(...)` - `animate_texture(...)` ### Shapes - `add_shape(...)` - `add_advanced_shape(...)` - `animate_shape(...)` - `add_line(...)` - `add_multiline(...)` - `add_triangle(...)` - `add_quad(...)` - `add_circle(...)` - `add_ellipse(...)` ### Anti-Aliased Shapes (with smooth edges) - `add_anti_aliased_shape(...)` - `add_advanced_anti_aliased_shape(...)` - `animate_anti_aliased_shape(...)` - `add_line_with_thickness(...)` - `add_anti_aliased_quad(...)` - `add_anti_aliased_rectangle(...)` - `add_anti_aliased_rectangle_with_round_corners(...)` - `get_points_for_circle(...)` - `add_anti_aliased_circle(...)` - `get_points_for_ellipse(...)` - `add_anti_aliased_ellipse(...)` ### Utility functions - `argb(...)` - `argb_to_int(...)` - `alpha_from_int(...)` - `add_async_mouse_callbacks(...)` - `add_mouse_callbacks_and_wait(...)` - `wait_until_removed(...)` - `remove_element(...)` - `clear()` - `suppress_done_message()`