diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..53cf0b3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +gen +build diff --git a/.gitmodules b/.gitmodules index 8c10b5b..0a4f435 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ -[submodule "wit/repo"] - path = wit/repo - url = https://github.com/Pumpkin-MC/Pumpkin.git +[submodule "wit"] + path = wit + url = https://github.com/Pumpkin-MC/pumpkin-plugin-wit diff --git a/CMakeLists.txt b/CMakeLists.txt deleted file mode 100644 index 820ae00..0000000 --- a/CMakeLists.txt +++ /dev/null @@ -1,13 +0,0 @@ -cmake_minimum_required(VERSION 3.10) -project(pumpkin-api-c C) - -set(CMAKE_C_STANDARD 11) - -# Add the generated bindings -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/gen) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) - -add_library(pumpkin-api STATIC - src/gen/plugin.c - src/pumpkin_api.c -) diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..c270c0a --- /dev/null +++ b/Makefile @@ -0,0 +1,40 @@ +WIT_BINDGEN ?= wit-bindgen +CC_WASI ?= wasm32-wasip2-clang +AR_LLVM ?= llvm-ar +INSTALL_PREFIX ?= install + +CFLAGS ?= -Oz + +WIT_FILES := $(wildcard wit/v0.1/*.wit) +HEADERS := pumpkin_api.h gen/plugin.h +OBJS := build/pumpkin_api.o build/plugin.o gen/plugin_component_type.o + +.PHONY: all clean install + +all: build/libpumpkin-api.a + +gen: $(WIT_FILES) + $(WIT_BINDGEN) c --out-dir gen wit/v0.1 + +gen/plugin.c: gen +gen/plugin.h: gen +gen/plugin_component_type.o: gen + +build/pumpkin_api.o: pumpkin_api.c $(HEADERS) | build + $(CC_WASI) $(CFLAGS) -I. -Igen -c $< -o $@ +build/plugin.o: gen/plugin.c $(HEADERS) | build + $(CC_WASI) $(CFLAGS) -I. -Igen -c $< -o $@ + +build/libpumpkin-api.a: $(OBJS) | build + $(AR_LLVM) rcs $@ $^ + +build: + mkdir build + +install: build/libpumpkin-api.a $(HEADERS) + mkdir -p $(INSTALL_PREFIX)/include $(INSTALL_PREFIX)/lib + cp $(HEADERS) $(INSTALL_PREFIX)/include/ + cp build/libpumpkin-api.a $(INSTALL_PREFIX)/lib/ + +clean: + rm -rf build gen diff --git a/example/main.c b/example/main.c index 16cc534..5469ad6 100644 --- a/example/main.c +++ b/example/main.c @@ -2,14 +2,15 @@ #include pumpkin_metadata_t get_meta(void) { - static const char* authors[] = {"alex"}; + static const char* authors[] = {"you"}; return (pumpkin_metadata_t) { .name = "my-c-plugin", .version = "0.1.0", .authors = authors, .authors_count = 1, .description = "A simple C plugin for Pumpkin", - .dependencies_count = 0 + .dependencies_count = 0, + .permissions_count = 0 }; } @@ -17,12 +18,7 @@ void on_load(plugin_own_context_t ctx) { printf("C plugin loaded!\n"); } -void on_unload(plugin_own_context_t ctx) { - printf("C plugin unloaded!\n"); -} - REGISTER_PUMPKIN_PLUGIN(((pumpkin_plugin_t){ .get_metadata = get_meta, - .on_load = on_load, - .on_unload = on_unload + .on_load = on_load })) diff --git a/src/pumpkin_api.c b/pumpkin_api.c similarity index 76% rename from src/pumpkin_api.c rename to pumpkin_api.c index ec7b712..90eb719 100644 --- a/src/pumpkin_api.c +++ b/pumpkin_api.c @@ -15,7 +15,7 @@ void exports_pumpkin_plugin_metadata_get_metadata(exports_pumpkin_plugin_metadat pumpkin_metadata_t meta = g_plugin.get_metadata(); plugin_string_dup(&(ret->name), meta.name); plugin_string_dup(&(ret->version), meta.version); - + ret->authors.len = meta.authors_count; ret->authors.ptr = (plugin_string_t*)malloc(ret->authors.len * sizeof(plugin_string_t)); for (size_t i = 0; i < ret->authors.len; ++i) { @@ -29,21 +29,25 @@ void exports_pumpkin_plugin_metadata_get_metadata(exports_pumpkin_plugin_metadat for (size_t i = 0; i < ret->dependencies.len; ++i) { plugin_string_dup(&(ret->dependencies.ptr[i]), meta.dependencies[i]); } + + ret->permissions.len = meta.permissions_count; + ret->permissions.ptr = (plugin_string_t*)malloc(ret->permissions.len * sizeof(plugin_string_t)); + for (size_t i = 0; i < ret->permissions.len; ++i) { + plugin_string_dup(&(ret->permissions.ptr[i]), meta.permissions[i]); + } } } bool exports_plugin_on_load(plugin_own_context_t context_handle, plugin_string_t *err) { if (g_plugin.on_load) { g_plugin.on_load(context_handle); - return true; } - return true; // No on_load is not an error + return true; } bool exports_plugin_on_unload(plugin_own_context_t context_handle, plugin_string_t *err) { if (g_plugin.on_unload) { g_plugin.on_unload(context_handle); - return true; } return true; } @@ -54,8 +58,14 @@ void exports_plugin_handle_event(uint32_t event_id, plugin_own_server_instance_t } bool exports_plugin_handle_command(uint32_t command_id, plugin_own_command_sender_t sender, plugin_own_server_instance_t server, plugin_own_consumed_args_t args, int32_t *ret, plugin_command_error_t *err) { - err->is_err = true; - plugin_string_dup(&(err->val.err.val.command_failed.val.text), "Command not implemented"); + err->tag = PUMPKIN_PLUGIN_COMMAND_COMMAND_ERROR_COMMAND_FAILED; + + plugin_string_t str; + plugin_string_set(&str, "Command not implemented"); + + pumpkin_plugin_text_own_text_component_t text = pumpkin_plugin_text_static_text_component_text(&str); + err->val.command_failed = text; + return false; } diff --git a/include/pumpkin_api.h b/pumpkin_api.h similarity index 93% rename from include/pumpkin_api.h rename to pumpkin_api.h index bdd22e9..796dd4c 100644 --- a/include/pumpkin_api.h +++ b/pumpkin_api.h @@ -10,11 +10,17 @@ extern "C" { typedef struct { const char* name; const char* version; + const char** authors; size_t authors_count; + const char* description; + const char** dependencies; size_t dependencies_count; + + const char** permissions; + size_t permissions_count; } pumpkin_metadata_t; typedef void (*pumpkin_on_load_t)(plugin_own_context_t ctx); diff --git a/src/gen/plugin.c b/src/gen/plugin.c deleted file mode 100644 index 7e8419e..0000000 --- a/src/gen/plugin.c +++ /dev/null @@ -1,4606 +0,0 @@ -// Generated by `wit-bindgen` 0.56.0. DO NOT EDIT! -#include "plugin.h" -#include -#include - -union int32_float { int32_t a; float b; }; - -union float_int32 { float a; int32_t b; }; - -union int64_double { int64_t a; double b; }; - -union double_int64 { double a; int64_t b; }; - -// Imported Functions from `pumpkin:plugin/logging` - -__attribute__((__import_module__("pumpkin:plugin/logging"), __import_name__("log"))) -extern void __wasm_import_pumpkin_plugin_logging_log(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/logging"), __import_name__("log-tracing"))) -extern void __wasm_import_pumpkin_plugin_logging_log_tracing(uint8_t *, size_t); - -// Imported Functions from `pumpkin:plugin/text` - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[static]text-component.text"))) -extern int32_t __wasm_import_pumpkin_plugin_text_static_text_component_text(uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[static]text-component.translate"))) -extern int32_t __wasm_import_pumpkin_plugin_text_static_text_component_translate(uint8_t *, size_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.add-child"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_add_child(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.add-text"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_add_text(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.get-text"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_get_text(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.encode"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_encode(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.color-named"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_color_named(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.color-rgb"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_color_rgb(int32_t, int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.bold"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_bold(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.italic"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_italic(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.underlined"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_underlined(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.strikethrough"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_strikethrough(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.obfuscated"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_obfuscated(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.insertion"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_insertion(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.font"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_font(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.shadow-color"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_shadow_color(int32_t, int32_t, int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.click-open-url"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_click_open_url(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.click-run-command"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_click_run_command(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.click-suggest-command"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_click_suggest_command(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.click-copy-to-clipboard"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_click_copy_to_clipboard(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.hover-show-text"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_hover_show_text(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.hover-show-item"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_hover_show_item(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[method]text-component.hover-show-entity"))) -extern void __wasm_import_pumpkin_plugin_text_method_text_component_hover_show_entity(int32_t, uint8_t *, size_t, uint8_t *, size_t, int32_t, int32_t); - -// Imported Functions from `pumpkin:plugin/gui` - -__attribute__((__import_module__("pumpkin:plugin/gui"), __import_name__("[constructor]gui"))) -extern int32_t __wasm_import_pumpkin_plugin_gui_constructor_gui(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/gui"), __import_name__("[method]gui.set-item"))) -extern void __wasm_import_pumpkin_plugin_gui_method_gui_set_item(int32_t, int32_t, uint8_t *, size_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/gui"), __import_name__("[method]gui.get-item"))) -extern void __wasm_import_pumpkin_plugin_gui_method_gui_get_item(int32_t, int32_t, uint8_t *); - -// Imported Functions from `pumpkin:plugin/scoreboard` - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.add-objective"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_add_objective(int32_t, uint8_t *, size_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.remove-objective"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_remove_objective(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.set-display-slot"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_set_display_slot(int32_t, int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.update-score"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_update_score(int32_t, uint8_t *, size_t, uint8_t *, size_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.remove-score"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_remove_score(int32_t, uint8_t *, size_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.create-team"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_create_team(int32_t, uint8_t *, size_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.remove-team"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_remove_team(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.update-team"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_update_team(int32_t, uint8_t *, size_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.add-player-to-team"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_add_player_to_team(int32_t, uint8_t *, size_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[method]scoreboard.remove-player-from-team"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_remove_player_from_team(int32_t, uint8_t *, size_t, uint8_t *, size_t); - -// Imported Functions from `pumpkin:plugin/world` - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-id"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_get_id(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-uuid"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_get_uuid(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-type"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_get_type(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-position"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_get_position(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-world"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_get_world(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-yaw"))) -extern float __wasm_import_pumpkin_plugin_world_method_entity_get_yaw(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-pitch"))) -extern float __wasm_import_pumpkin_plugin_world_method_entity_get_pitch(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-head-yaw"))) -extern float __wasm_import_pumpkin_plugin_world_method_entity_get_head_yaw(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.is-on-ground"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_is_on_ground(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.is-sneaking"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_is_sneaking(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.is-sprinting"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_is_sprinting(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.is-invisible"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_is_invisible(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.is-glowing"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_is_glowing(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.teleport"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_teleport(int32_t, double, double, double, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.set-velocity"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_set_velocity(int32_t, double, double, double); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-velocity"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_get_velocity(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-pose"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_get_pose(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-name"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_get_name(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.set-custom-name"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_set_custom_name(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-custom-name"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_get_custom_name(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.set-custom-name-visible"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_set_custom_name_visible(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.is-custom-name-visible"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_is_custom_name_visible(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.is-invulnerable"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_is_invulnerable(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.set-invulnerable"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_set_invulnerable(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.get-fire-ticks"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_entity_get_fire_ticks(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.set-fire-ticks"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_set_fire_ticks(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]entity.remove"))) -extern void __wasm_import_pumpkin_plugin_world_method_entity_remove(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-id"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_get_id(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-block-state-id"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_world_get_block_state_id(int32_t, int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-block-state"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_get_block_state(int32_t, int32_t, int32_t, int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.set-block-state"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_set_block_state(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-time-of-day"))) -extern int64_t __wasm_import_pumpkin_plugin_world_method_world_get_time_of_day(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.set-time-of-day"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_set_time_of_day(int32_t, int64_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-world-age"))) -extern int64_t __wasm_import_pumpkin_plugin_world_method_world_get_world_age(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-dimension"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_get_dimension(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-top-block-y"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_world_get_top_block_y(int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-motion-blocking-height"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_world_get_motion_blocking_height(int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.is-raining"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_world_is_raining(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.set-raining"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_set_raining(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.is-thundering"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_world_is_thundering(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.set-thundering"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_set_thundering(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.broadcast-system-message"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_broadcast_system_message(int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-scoreboard"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_world_get_scoreboard(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.play-sound"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_play_sound(int32_t, uint8_t *, size_t, int32_t, double, double, double, float, float); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.spawn-particle"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_spawn_particle(int32_t, uint8_t *, size_t, double, double, double, double, double, double, float, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.create-explosion"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_create_explosion(int32_t, double, double, double, float, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-sea-level"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_world_get_sea_level(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-min-y"))) -extern int32_t __wasm_import_pumpkin_plugin_world_method_world_get_min_y(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[method]world.get-entities"))) -extern void __wasm_import_pumpkin_plugin_world_method_world_get_entities(int32_t, uint8_t *); - -// Imported Functions from `pumpkin:plugin/player` - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.as-entity"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_as_entity(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-id"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_get_id(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-name"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_get_name(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-position"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_get_position(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-yaw"))) -extern float __wasm_import_pumpkin_plugin_player_method_player_get_yaw(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-pitch"))) -extern float __wasm_import_pumpkin_plugin_player_method_player_get_pitch(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-world"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_world(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-gamemode"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_gamemode(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-gamemode"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_set_gamemode(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-locale"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_get_locale(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-ping"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_ping(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-permission-level"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_permission_level(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-permission-level"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_permission_level(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.has-permission"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_has_permission(int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-display-name"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_display_name(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.send-system-message"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_send_system_message(int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.show-title"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_show_title(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.show-subtitle"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_show_subtitle(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.show-actionbar"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_show_actionbar(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.send-title-animation"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_send_title_animation(int32_t, int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.teleport"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_teleport(int32_t, double, double, double, int32_t, float, int32_t, float, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.teleport-world"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_teleport_world(int32_t, int32_t, double, double, double, int32_t, float, int32_t, float); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.kick"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_kick(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.respawn"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_respawn(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.open-gui"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_open_gui(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.ban"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_ban(int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.ban-ip"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_ban_ip(int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-selected-slot"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_selected_slot(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-item-in-hand"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_get_item_in_hand(int32_t, int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-inventory-item"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_get_inventory_item(int32_t, int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-health"))) -extern float __wasm_import_pumpkin_plugin_player_method_player_get_health(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-health"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_health(int32_t, float); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-max-health"))) -extern float __wasm_import_pumpkin_plugin_player_method_player_get_max_health(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-max-health"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_max_health(int32_t, float); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-food-level"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_food_level(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-food-level"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_food_level(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-saturation"))) -extern float __wasm_import_pumpkin_plugin_player_method_player_get_saturation(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-saturation"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_saturation(int32_t, float); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-exhaustion"))) -extern float __wasm_import_pumpkin_plugin_player_method_player_get_exhaustion(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-exhaustion"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_exhaustion(int32_t, float); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-absorption"))) -extern float __wasm_import_pumpkin_plugin_player_method_player_get_absorption(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-absorption"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_absorption(int32_t, float); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-experience-level"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_experience_level(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-experience-progress"))) -extern float __wasm_import_pumpkin_plugin_player_method_player_get_experience_progress(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-experience-points"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_get_experience_points(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-experience-level"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_experience_level(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-experience-progress"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_experience_progress(int32_t, float); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-experience-points"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_experience_points(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.add-experience-levels"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_add_experience_levels(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.add-experience-points"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_add_experience_points(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.is-sneaking"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_is_sneaking(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-sneaking"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_sneaking(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.is-sprinting"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_is_sprinting(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-sprinting"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_sprinting(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.is-on-ground"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_is_on_ground(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.is-flying"))) -extern int32_t __wasm_import_pumpkin_plugin_player_method_player_is_flying(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-flying"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_flying(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-abilities"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_get_abilities(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.set-abilities"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_set_abilities(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, float, float); - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[method]player.get-ip"))) -extern void __wasm_import_pumpkin_plugin_player_method_player_get_ip(int32_t, uint8_t *); - -// Imported Functions from `pumpkin:plugin/server` - -__attribute__((__import_module__("pumpkin:plugin/server"), __import_name__("[method]server.get-difficulty"))) -extern int32_t __wasm_import_pumpkin_plugin_server_method_server_get_difficulty(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/server"), __import_name__("[method]server.get-player-count"))) -extern int32_t __wasm_import_pumpkin_plugin_server_method_server_get_player_count(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/server"), __import_name__("[method]server.get-mspt"))) -extern double __wasm_import_pumpkin_plugin_server_method_server_get_mspt(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/server"), __import_name__("[method]server.get-tps"))) -extern double __wasm_import_pumpkin_plugin_server_method_server_get_tps(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/server"), __import_name__("[method]server.get-all-players"))) -extern void __wasm_import_pumpkin_plugin_server_method_server_get_all_players(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/server"), __import_name__("[method]server.get-player-by-name"))) -extern void __wasm_import_pumpkin_plugin_server_method_server_get_player_by_name(int32_t, uint8_t *, size_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/server"), __import_name__("[method]server.get-player-by-uuid"))) -extern void __wasm_import_pumpkin_plugin_server_method_server_get_player_by_uuid(int32_t, uint8_t *, size_t, uint8_t *); - -// Imported Functions from `pumpkin:plugin/block-entity` - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]block-entity.resource-location"))) -extern void __wasm_import_pumpkin_plugin_block_entity_method_block_entity_resource_location(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]block-entity.get-position"))) -extern void __wasm_import_pumpkin_plugin_block_entity_method_block_entity_get_position(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]block-entity.get-id"))) -extern int32_t __wasm_import_pumpkin_plugin_block_entity_method_block_entity_get_id(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]block-entity.is-dirty"))) -extern int32_t __wasm_import_pumpkin_plugin_block_entity_method_block_entity_is_dirty(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]block-entity.clear-dirty"))) -extern void __wasm_import_pumpkin_plugin_block_entity_method_block_entity_clear_dirty(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]command-block-entity.get-block-entity"))) -extern int32_t __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_get_block_entity(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]command-block-entity.last-output"))) -extern void __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_last_output(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]command-block-entity.track-output"))) -extern int32_t __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_track_output(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]command-block-entity.success-count"))) -extern int32_t __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_success_count(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]command-block-entity.command"))) -extern void __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_command(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]command-block-entity.auto"))) -extern int32_t __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_auto(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]command-block-entity.condition-met"))) -extern int32_t __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_condition_met(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[method]command-block-entity.powered"))) -extern int32_t __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_powered(int32_t); - -// Imported Functions from `pumpkin:plugin/command` - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]consumed-args.get-value"))) -extern void __wasm_import_pumpkin_plugin_command_method_consumed_args_get_value(int32_t, uint8_t *, size_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.get-command-sender-type"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_sender_get_command_sender_type(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.send-message"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_sender_send_message(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.set-success-count"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_sender_set_success_count(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.is-player"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_is_player(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.is-console"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_is_console(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.as-player"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_sender_as_player(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.permission-level"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_permission_level(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.has-permission-level"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_has_permission_level(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.has-permission"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_has_permission(int32_t, int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.position"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_sender_position(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.world"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_sender_world(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.get-locale"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_get_locale(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.should-receive-feedback"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_should_receive_feedback(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.should-broadcast-console-to-ops"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_should_broadcast_console_to_ops(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-sender.should-track-output"))) -extern int32_t __wasm_import_pumpkin_plugin_command_method_command_sender_should_track_output(int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[static]command-node.literal"))) -extern int32_t __wasm_import_pumpkin_plugin_command_static_command_node_literal(uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[static]command-node.argument"))) -extern int32_t __wasm_import_pumpkin_plugin_command_static_command_node_argument(uint8_t *, size_t, int32_t, uint8_t *, int64_t, int32_t, int64_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-node.then"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_node_then(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-node.execute-with-handler-id"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_node_execute_with_handler_id(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command-node.require-with-handler-id"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_node_require_with_handler_id(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[constructor]command"))) -extern int32_t __wasm_import_pumpkin_plugin_command_constructor_command(uint8_t *, size_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command.then"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_then(int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[method]command.execute-with-handler-id"))) -extern void __wasm_import_pumpkin_plugin_command_method_command_execute_with_handler_id(int32_t, int32_t); - -// Imported Functions from `pumpkin:plugin/context` - -__attribute__((__import_module__("pumpkin:plugin/context"), __import_name__("[method]context.register-event"))) -extern void __wasm_import_pumpkin_plugin_context_method_context_register_event(int32_t, int32_t, int32_t, int32_t, int32_t); - -__attribute__((__import_module__("pumpkin:plugin/context"), __import_name__("[method]context.register-command"))) -extern void __wasm_import_pumpkin_plugin_context_method_context_register_command(int32_t, int32_t, uint8_t *, size_t); - -__attribute__((__import_module__("pumpkin:plugin/context"), __import_name__("[method]context.register-permission"))) -extern void __wasm_import_pumpkin_plugin_context_method_context_register_permission(int32_t, uint8_t *, size_t, uint8_t *, size_t, int32_t, int32_t, uint8_t *, size_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/context"), __import_name__("[method]context.get-data-folder"))) -extern void __wasm_import_pumpkin_plugin_context_method_context_get_data_folder(int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/context"), __import_name__("[method]context.get-server"))) -extern int32_t __wasm_import_pumpkin_plugin_context_method_context_get_server(int32_t); - -// Imported Functions from `pumpkin:plugin/i18n` - -__attribute__((__import_module__("pumpkin:plugin/i18n"), __import_name__("translate"))) -extern void __wasm_import_pumpkin_plugin_i18n_translate(uint8_t *, size_t, int32_t, uint8_t *); - -__attribute__((__import_module__("pumpkin:plugin/i18n"), __import_name__("load-translations"))) -extern void __wasm_import_pumpkin_plugin_i18n_load_translations(uint8_t *, size_t, uint8_t *, size_t, int32_t); - -// Imported Functions from `pumpkin:plugin/scheduler` - -__attribute__((__import_module__("pumpkin:plugin/scheduler"), __import_name__("schedule-delayed-task"))) -extern int32_t __wasm_import_pumpkin_plugin_scheduler_schedule_delayed_task(int32_t, int64_t); - -__attribute__((__import_module__("pumpkin:plugin/scheduler"), __import_name__("schedule-repeating-task"))) -extern int32_t __wasm_import_pumpkin_plugin_scheduler_schedule_repeating_task(int32_t, int64_t, int64_t); - -__attribute__((__import_module__("pumpkin:plugin/scheduler"), __import_name__("cancel-task"))) -extern void __wasm_import_pumpkin_plugin_scheduler_cancel_task(int32_t); - -// Exported Functions from `plugin` - - -__attribute__((__weak__, __export_name__("cabi_post_on-load"))) -void __wasm_export_exports_plugin_on_load_post_return(uint8_t * arg0) { - switch ((int32_t) (int32_t) *((uint8_t*) (arg0 + 0))) { - case 0: { - break; - } - case 1: { - if ((*((size_t*) (arg0 + (2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + sizeof(void*)))); - } - break; - } - } -} - -__attribute__((__weak__, __export_name__("cabi_post_on-unload"))) -void __wasm_export_exports_plugin_on_unload_post_return(uint8_t * arg0) { - switch ((int32_t) (int32_t) *((uint8_t*) (arg0 + 0))) { - case 0: { - break; - } - case 1: { - if ((*((size_t*) (arg0 + (2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + sizeof(void*)))); - } - break; - } - } -} - -__attribute__((__weak__, __export_name__("cabi_post_handle-event"))) -void __wasm_export_exports_plugin_handle_event_post_return(uint8_t * arg0) { - switch ((int32_t) (int32_t) *((uint8_t*) (arg0 + 0))) { - case 0: { - break; - } - case 1: { - break; - } - case 2: { - break; - } - case 3: { - if ((*((size_t*) (arg0 + (8+2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+1*sizeof(void*))))); - } - size_t len = *((size_t*) (arg0 + (8+4*sizeof(void*)))); - if (len > 0) { - uint8_t *ptr = *((uint8_t **) (arg0 + (8+3*sizeof(void*)))); - for (size_t i = 0; i < len; i++) { - uint8_t *base = ptr + i * 4; - (void) base; - } - free(ptr); - } - break; - } - case 4: { - if ((*((size_t*) (arg0 + (8+2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+1*sizeof(void*))))); - } - break; - } - case 5: { - if ((*((size_t*) (arg0 + (8+2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+1*sizeof(void*))))); - } - break; - } - case 6: { - break; - } - case 7: { - break; - } - case 8: { - break; - } - case 9: { - break; - } - case 10: { - break; - } - case 11: { - break; - } - case 12: { - break; - } - case 13: { - if ((*((size_t*) (arg0 + (8+2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+1*sizeof(void*))))); - } - size_t len0 = *((size_t*) (arg0 + (8+4*sizeof(void*)))); - if (len0 > 0) { - uint8_t *ptr1 = *((uint8_t **) (arg0 + (8+3*sizeof(void*)))); - for (size_t i2 = 0; i2 < len0; i2++) { - uint8_t *base = ptr1 + i2 * 1; - (void) base; - } - free(ptr1); - } - break; - } - case 14: { - switch ((int32_t) (int32_t) *((uint8_t*) (arg0 + (8+1*sizeof(void*))))) { - case 0: { - break; - } - case 1: { - if ((*((size_t*) (arg0 + (8+3*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+2*sizeof(void*))))); - } - break; - } - } - if ((*((size_t*) (arg0 + (8+5*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+4*sizeof(void*))))); - } - if ((*((size_t*) (arg0 + (8+7*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+6*sizeof(void*))))); - } - break; - } - case 15: { - if ((*((size_t*) (arg0 + (8+2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+1*sizeof(void*))))); - } - if ((*((size_t*) (arg0 + (8+5*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+4*sizeof(void*))))); - } - break; - } - case 16: { - break; - } - case 17: { - if ((*((size_t*) (arg0 + (32+1*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + 32))); - } - if ((*((size_t*) (arg0 + (32+4*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (32+3*sizeof(void*))))); - } - break; - } - case 18: { - break; - } - case 19: { - break; - } - case 20: { - break; - } - case 21: { - break; - } - case 22: { - if ((*((size_t*) (arg0 + (16+1*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + 16))); - } - break; - } - case 23: { - if ((*((size_t*) (arg0 + (8+1*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + 8))); - } - if ((*((size_t*) (arg0 + (8+3*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+2*sizeof(void*))))); - } - break; - } - case 24: { - if ((*((size_t*) (arg0 + (8+1*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + 8))); - } - if ((*((size_t*) (arg0 + (16+3*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (16+2*sizeof(void*))))); - } - break; - } - case 25: { - if ((*((size_t*) (arg0 + (8+2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+1*sizeof(void*))))); - } - if ((*((size_t*) (arg0 + (8+5*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+4*sizeof(void*))))); - } - break; - } - case 26: { - if ((*((size_t*) (arg0 + (8+2*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+1*sizeof(void*))))); - } - if ((*((size_t*) (arg0 + (8+4*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (8+3*sizeof(void*))))); - } - break; - } - case 27: { - if ((*((size_t*) (arg0 + (8+1*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + 8))); - } - break; - } - case 28: { - break; - } - case 29: { - break; - } - } -} - -__attribute__((__weak__, __export_name__("cabi_post_handle-command"))) -void __wasm_export_exports_plugin_handle_command_post_return(uint8_t * arg0) { - switch ((int32_t) (int32_t) *((uint8_t*) (arg0 + 0))) { - case 0: { - break; - } - case 1: { - switch ((int32_t) (int32_t) *((uint8_t*) (arg0 + sizeof(void*)))) { - case 0: { - switch ((int32_t) (int32_t) *((uint8_t*) (arg0 + (2*sizeof(void*))))) { - case 0: { - break; - } - case 1: { - if ((*((size_t*) (arg0 + (4*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (3*sizeof(void*))))); - } - break; - } - } - break; - } - case 1: { - break; - } - case 2: { - break; - } - case 3: { - break; - } - } - break; - } - } -} - - -// Exported Functions from `pumpkin:plugin/metadata` - -__attribute__((__weak__, __export_name__("cabi_post_pumpkin:plugin/metadata#get-metadata"))) -void __wasm_export_exports_pumpkin_plugin_metadata_get_metadata_post_return(uint8_t * arg0) { - if ((*((size_t*) (arg0 + sizeof(void*)))) > 0) { - free(*((uint8_t **) (arg0 + 0))); - } - if ((*((size_t*) (arg0 + (3*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (2*sizeof(void*))))); - } - size_t len = *((size_t*) (arg0 + (5*sizeof(void*)))); - if (len > 0) { - uint8_t *ptr = *((uint8_t **) (arg0 + (4*sizeof(void*)))); - for (size_t i = 0; i < len; i++) { - uint8_t *base = ptr + i * (2*sizeof(void*)); - (void) base; - if ((*((size_t*) (base + sizeof(void*)))) > 0) { - free(*((uint8_t **) (base + 0))); - } - } - free(ptr); - } - if ((*((size_t*) (arg0 + (7*sizeof(void*))))) > 0) { - free(*((uint8_t **) (arg0 + (6*sizeof(void*))))); - } - size_t len0 = *((size_t*) (arg0 + (9*sizeof(void*)))); - if (len0 > 0) { - uint8_t *ptr1 = *((uint8_t **) (arg0 + (8*sizeof(void*)))); - for (size_t i2 = 0; i2 < len0; i2++) { - uint8_t *base = ptr1 + i2 * (2*sizeof(void*)); - (void) base; - if ((*((size_t*) (base + sizeof(void*)))) > 0) { - free(*((uint8_t **) (base + 0))); - } - } - free(ptr1); - } -} - -// Canonical ABI intrinsics - -__attribute__((__weak__, __export_name__("cabi_realloc"))) -void *cabi_realloc(void *ptr, size_t old_size, size_t align, size_t new_size) { - (void) old_size; - if (new_size == 0) return (void*) align; - void *ret = realloc(ptr, new_size); - if (!ret) abort(); - return ret; -} - -__attribute__((__aligned__(8))) -static uint8_t RET_AREA[(56+4*sizeof(void*))]; - -// Helper Functions - -void plugin_list_u8_free(plugin_list_u8_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - uint8_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void pumpkin_plugin_common_raw_text_component_free(pumpkin_plugin_common_raw_text_component_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - uint8_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void pumpkin_plugin_common_item_stack_free(pumpkin_plugin_common_item_stack_t *ptr) { - plugin_string_free(&ptr->registry_key); -} - -__attribute__((__import_module__("pumpkin:plugin/text"), __import_name__("[resource-drop]text-component"))) -extern void __wasm_import_pumpkin_plugin_text_text_component_drop(int32_t handle); - -void pumpkin_plugin_text_text_component_drop_own(pumpkin_plugin_text_own_text_component_t handle) { - __wasm_import_pumpkin_plugin_text_text_component_drop(handle.__handle); -} - -void pumpkin_plugin_text_text_component_drop_borrow(pumpkin_plugin_text_borrow_text_component_t handle) { - __wasm_import_pumpkin_plugin_text_text_component_drop(handle.__handle); -} - -pumpkin_plugin_text_borrow_text_component_t pumpkin_plugin_text_borrow_text_component(pumpkin_plugin_text_own_text_component_t arg) { - return (pumpkin_plugin_text_borrow_text_component_t) { arg.__handle }; -} - -void pumpkin_plugin_text_list_own_text_component_free(pumpkin_plugin_text_list_own_text_component_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - pumpkin_plugin_text_own_text_component_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void pumpkin_plugin_text_option_own_text_component_free(pumpkin_plugin_text_option_own_text_component_t *ptr) { - if (ptr->is_some) { - } -} - -void pumpkin_plugin_gui_item_stack_free(pumpkin_plugin_gui_item_stack_t *ptr) { - pumpkin_plugin_common_item_stack_free(ptr); -} - -__attribute__((__import_module__("pumpkin:plugin/gui"), __import_name__("[resource-drop]gui"))) -extern void __wasm_import_pumpkin_plugin_gui_gui_drop(int32_t handle); - -void pumpkin_plugin_gui_gui_drop_own(pumpkin_plugin_gui_own_gui_t handle) { - __wasm_import_pumpkin_plugin_gui_gui_drop(handle.__handle); -} - -void pumpkin_plugin_gui_gui_drop_borrow(pumpkin_plugin_gui_borrow_gui_t handle) { - __wasm_import_pumpkin_plugin_gui_gui_drop(handle.__handle); -} - -pumpkin_plugin_gui_borrow_gui_t pumpkin_plugin_gui_borrow_gui(pumpkin_plugin_gui_own_gui_t arg) { - return (pumpkin_plugin_gui_borrow_gui_t) { arg.__handle }; -} - -void pumpkin_plugin_gui_option_item_stack_free(pumpkin_plugin_gui_option_item_stack_t *ptr) { - if (ptr->is_some) { - pumpkin_plugin_gui_item_stack_free(&ptr->val); - } -} - -__attribute__((__import_module__("pumpkin:plugin/scoreboard"), __import_name__("[resource-drop]scoreboard"))) -extern void __wasm_import_pumpkin_plugin_scoreboard_scoreboard_drop(int32_t handle); - -void pumpkin_plugin_scoreboard_scoreboard_drop_own(pumpkin_plugin_scoreboard_own_scoreboard_t handle) { - __wasm_import_pumpkin_plugin_scoreboard_scoreboard_drop(handle.__handle); -} - -void pumpkin_plugin_scoreboard_scoreboard_drop_borrow(pumpkin_plugin_scoreboard_borrow_scoreboard_t handle) { - __wasm_import_pumpkin_plugin_scoreboard_scoreboard_drop(handle.__handle); -} - -pumpkin_plugin_scoreboard_borrow_scoreboard_t pumpkin_plugin_scoreboard_borrow_scoreboard(pumpkin_plugin_scoreboard_own_scoreboard_t arg) { - return (pumpkin_plugin_scoreboard_borrow_scoreboard_t) { arg.__handle }; -} - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[resource-drop]entity"))) -extern void __wasm_import_pumpkin_plugin_world_entity_drop(int32_t handle); - -void pumpkin_plugin_world_entity_drop_own(pumpkin_plugin_world_own_entity_t handle) { - __wasm_import_pumpkin_plugin_world_entity_drop(handle.__handle); -} - -void pumpkin_plugin_world_entity_drop_borrow(pumpkin_plugin_world_borrow_entity_t handle) { - __wasm_import_pumpkin_plugin_world_entity_drop(handle.__handle); -} - -pumpkin_plugin_world_borrow_entity_t pumpkin_plugin_world_borrow_entity(pumpkin_plugin_world_own_entity_t arg) { - return (pumpkin_plugin_world_borrow_entity_t) { arg.__handle }; -} - -__attribute__((__import_module__("pumpkin:plugin/world"), __import_name__("[resource-drop]world"))) -extern void __wasm_import_pumpkin_plugin_world_world_drop(int32_t handle); - -void pumpkin_plugin_world_world_drop_own(pumpkin_plugin_world_own_world_t handle) { - __wasm_import_pumpkin_plugin_world_world_drop(handle.__handle); -} - -void pumpkin_plugin_world_world_drop_borrow(pumpkin_plugin_world_borrow_world_t handle) { - __wasm_import_pumpkin_plugin_world_world_drop(handle.__handle); -} - -pumpkin_plugin_world_borrow_world_t pumpkin_plugin_world_borrow_world(pumpkin_plugin_world_own_world_t arg) { - return (pumpkin_plugin_world_borrow_world_t) { arg.__handle }; -} - -void pumpkin_plugin_world_option_own_text_component_free(pumpkin_plugin_world_option_own_text_component_t *ptr) { - if (ptr->is_some) { - } -} - -void pumpkin_plugin_world_list_own_entity_free(pumpkin_plugin_world_list_own_entity_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - pumpkin_plugin_world_own_entity_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void pumpkin_plugin_permission_permission_default_free(pumpkin_plugin_permission_permission_default_t *ptr) { - switch ((int32_t) ptr->tag) { - case 2: { - break; - } - } -} - -void pumpkin_plugin_permission_permission_child_free(pumpkin_plugin_permission_permission_child_t *ptr) { - plugin_string_free(&ptr->node); -} - -void pumpkin_plugin_permission_list_permission_child_free(pumpkin_plugin_permission_list_permission_child_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - pumpkin_plugin_permission_permission_child_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - pumpkin_plugin_permission_permission_child_free(&list_ptr[i]); - } - free(list_ptr); - } -} - -void pumpkin_plugin_permission_permission_free(pumpkin_plugin_permission_permission_t *ptr) { - plugin_string_free(&ptr->node); - plugin_string_free(&ptr->description); - pumpkin_plugin_permission_permission_default_free(&ptr->default_); - pumpkin_plugin_permission_list_permission_child_free(&ptr->children); -} - -void pumpkin_plugin_player_item_stack_free(pumpkin_plugin_player_item_stack_t *ptr) { - pumpkin_plugin_common_item_stack_free(ptr); -} - -__attribute__((__import_module__("pumpkin:plugin/player"), __import_name__("[resource-drop]player"))) -extern void __wasm_import_pumpkin_plugin_player_player_drop(int32_t handle); - -void pumpkin_plugin_player_player_drop_own(pumpkin_plugin_player_own_player_t handle) { - __wasm_import_pumpkin_plugin_player_player_drop(handle.__handle); -} - -void pumpkin_plugin_player_player_drop_borrow(pumpkin_plugin_player_borrow_player_t handle) { - __wasm_import_pumpkin_plugin_player_player_drop(handle.__handle); -} - -pumpkin_plugin_player_borrow_player_t pumpkin_plugin_player_borrow_player(pumpkin_plugin_player_own_player_t arg) { - return (pumpkin_plugin_player_borrow_player_t) { arg.__handle }; -} - -void plugin_option_f32_free(plugin_option_f32_t *ptr) { - if (ptr->is_some) { - } -} - -void pumpkin_plugin_player_option_own_text_component_free(pumpkin_plugin_player_option_own_text_component_t *ptr) { - if (ptr->is_some) { - } -} - -void pumpkin_plugin_player_option_item_stack_free(pumpkin_plugin_player_option_item_stack_t *ptr) { - if (ptr->is_some) { - pumpkin_plugin_player_item_stack_free(&ptr->val); - } -} - -__attribute__((__import_module__("pumpkin:plugin/server"), __import_name__("[resource-drop]server"))) -extern void __wasm_import_pumpkin_plugin_server_server_drop(int32_t handle); - -void pumpkin_plugin_server_server_drop_own(pumpkin_plugin_server_own_server_t handle) { - __wasm_import_pumpkin_plugin_server_server_drop(handle.__handle); -} - -void pumpkin_plugin_server_server_drop_borrow(pumpkin_plugin_server_borrow_server_t handle) { - __wasm_import_pumpkin_plugin_server_server_drop(handle.__handle); -} - -pumpkin_plugin_server_borrow_server_t pumpkin_plugin_server_borrow_server(pumpkin_plugin_server_own_server_t arg) { - return (pumpkin_plugin_server_borrow_server_t) { arg.__handle }; -} - -void pumpkin_plugin_server_list_own_player_free(pumpkin_plugin_server_list_own_player_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - pumpkin_plugin_server_own_player_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void pumpkin_plugin_server_option_own_player_free(pumpkin_plugin_server_option_own_player_t *ptr) { - if (ptr->is_some) { - } -} - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[resource-drop]block-entity"))) -extern void __wasm_import_pumpkin_plugin_block_entity_block_entity_drop(int32_t handle); - -void pumpkin_plugin_block_entity_block_entity_drop_own(pumpkin_plugin_block_entity_own_block_entity_t handle) { - __wasm_import_pumpkin_plugin_block_entity_block_entity_drop(handle.__handle); -} - -void pumpkin_plugin_block_entity_block_entity_drop_borrow(pumpkin_plugin_block_entity_borrow_block_entity_t handle) { - __wasm_import_pumpkin_plugin_block_entity_block_entity_drop(handle.__handle); -} - -pumpkin_plugin_block_entity_borrow_block_entity_t pumpkin_plugin_block_entity_borrow_block_entity(pumpkin_plugin_block_entity_own_block_entity_t arg) { - return (pumpkin_plugin_block_entity_borrow_block_entity_t) { arg.__handle }; -} - -__attribute__((__import_module__("pumpkin:plugin/block-entity"), __import_name__("[resource-drop]command-block-entity"))) -extern void __wasm_import_pumpkin_plugin_block_entity_command_block_entity_drop(int32_t handle); - -void pumpkin_plugin_block_entity_command_block_entity_drop_own(pumpkin_plugin_block_entity_own_command_block_entity_t handle) { - __wasm_import_pumpkin_plugin_block_entity_command_block_entity_drop(handle.__handle); -} - -void pumpkin_plugin_block_entity_command_block_entity_drop_borrow(pumpkin_plugin_block_entity_borrow_command_block_entity_t handle) { - __wasm_import_pumpkin_plugin_block_entity_command_block_entity_drop(handle.__handle); -} - -pumpkin_plugin_block_entity_borrow_command_block_entity_t pumpkin_plugin_block_entity_borrow_command_block_entity(pumpkin_plugin_block_entity_own_command_block_entity_t arg) { - return (pumpkin_plugin_block_entity_borrow_command_block_entity_t) { arg.__handle }; -} - -void pumpkin_plugin_block_entity_block_entity_type_free(pumpkin_plugin_block_entity_block_entity_type_t *ptr) { - switch ((int32_t) ptr->tag) { - case 0: { - break; - } - } -} - -void pumpkin_plugin_command_number_free(pumpkin_plugin_command_number_t *ptr) { - switch ((int32_t) ptr->tag) { - case 0: { - break; - } - case 1: { - break; - } - case 2: { - break; - } - case 3: { - break; - } - } -} - -void pumpkin_plugin_command_tuple2_number_number_free(pumpkin_plugin_command_tuple2_number_number_t *ptr) { - pumpkin_plugin_command_number_free(&ptr->f0); - pumpkin_plugin_command_number_free(&ptr->f1); -} - -void pumpkin_plugin_command_not_in_bounds_free(pumpkin_plugin_command_not_in_bounds_t *ptr) { - switch ((int32_t) ptr->tag) { - case 0: { - pumpkin_plugin_command_tuple2_number_number_free(&ptr->val.lower_bound); - break; - } - case 1: { - pumpkin_plugin_command_tuple2_number_number_free(&ptr->val.upper_bound); - break; - } - } -} - -void pumpkin_plugin_command_list_own_entity_free(pumpkin_plugin_command_list_own_entity_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - pumpkin_plugin_command_own_entity_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void pumpkin_plugin_command_list_own_player_free(pumpkin_plugin_command_list_own_player_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - pumpkin_plugin_command_own_player_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void pumpkin_plugin_command_result_number_not_in_bounds_free(pumpkin_plugin_command_result_number_not_in_bounds_t *ptr) { - if (!ptr->is_err) { - pumpkin_plugin_command_number_free(&ptr->val.ok); - } else { - pumpkin_plugin_command_not_in_bounds_free(&ptr->val.err); - } -} - -void pumpkin_plugin_command_arg_free(pumpkin_plugin_command_arg_t *ptr) { - switch ((int32_t) ptr->tag) { - case 0: { - pumpkin_plugin_command_list_own_entity_free(&ptr->val.entities); - break; - } - case 1: { - break; - } - case 2: { - pumpkin_plugin_command_list_own_player_free(&ptr->val.players); - break; - } - case 3: { - break; - } - case 4: { - break; - } - case 5: { - break; - } - case 6: { - break; - } - case 7: { - break; - } - case 8: { - break; - } - case 9: { - plugin_string_free(&ptr->val.item); - break; - } - case 10: { - plugin_string_free(&ptr->val.item_predicate); - break; - } - case 11: { - plugin_string_free(&ptr->val.resource_location); - break; - } - case 12: { - plugin_string_free(&ptr->val.block); - break; - } - case 13: { - plugin_string_free(&ptr->val.block_predicate); - break; - } - case 14: { - break; - } - case 15: { - break; - } - case 16: { - plugin_string_free(&ptr->val.particle); - break; - } - case 17: { - plugin_string_free(&ptr->val.msg); - break; - } - case 18: { - break; - } - case 19: { - break; - } - case 20: { - pumpkin_plugin_command_result_number_not_in_bounds_free(&ptr->val.num); - break; - } - case 21: { - break; - } - case 22: { - plugin_string_free(&ptr->val.simple); - break; - } - case 23: { - break; - } - case 24: { - plugin_string_free(&ptr->val.damage_type); - break; - } - case 25: { - plugin_string_free(&ptr->val.effect); - break; - } - case 26: { - plugin_string_free(&ptr->val.enchantment); - break; - } - case 27: { - break; - } - } -} - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[resource-drop]consumed-args"))) -extern void __wasm_import_pumpkin_plugin_command_consumed_args_drop(int32_t handle); - -void pumpkin_plugin_command_consumed_args_drop_own(pumpkin_plugin_command_own_consumed_args_t handle) { - __wasm_import_pumpkin_plugin_command_consumed_args_drop(handle.__handle); -} - -void pumpkin_plugin_command_consumed_args_drop_borrow(pumpkin_plugin_command_borrow_consumed_args_t handle) { - __wasm_import_pumpkin_plugin_command_consumed_args_drop(handle.__handle); -} - -pumpkin_plugin_command_borrow_consumed_args_t pumpkin_plugin_command_borrow_consumed_args(pumpkin_plugin_command_own_consumed_args_t arg) { - return (pumpkin_plugin_command_borrow_consumed_args_t) { arg.__handle }; -} - -void pumpkin_plugin_command_command_sender_type_free(pumpkin_plugin_command_command_sender_type_t *ptr) { - switch ((int32_t) ptr->tag) { - case 2: { - break; - } - case 3: { - break; - } - } -} - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[resource-drop]command-sender"))) -extern void __wasm_import_pumpkin_plugin_command_command_sender_drop(int32_t handle); - -void pumpkin_plugin_command_command_sender_drop_own(pumpkin_plugin_command_own_command_sender_t handle) { - __wasm_import_pumpkin_plugin_command_command_sender_drop(handle.__handle); -} - -void pumpkin_plugin_command_command_sender_drop_borrow(pumpkin_plugin_command_borrow_command_sender_t handle) { - __wasm_import_pumpkin_plugin_command_command_sender_drop(handle.__handle); -} - -pumpkin_plugin_command_borrow_command_sender_t pumpkin_plugin_command_borrow_command_sender(pumpkin_plugin_command_own_command_sender_t arg) { - return (pumpkin_plugin_command_borrow_command_sender_t) { arg.__handle }; -} - -void plugin_tuple2_option_f32_option_f32_free(plugin_tuple2_option_f32_option_f32_t *ptr) { - plugin_option_f32_free(&ptr->f0); - plugin_option_f32_free(&ptr->f1); -} - -void plugin_option_f64_free(plugin_option_f64_t *ptr) { - if (ptr->is_some) { - } -} - -void plugin_tuple2_option_f64_option_f64_free(plugin_tuple2_option_f64_option_f64_t *ptr) { - plugin_option_f64_free(&ptr->f0); - plugin_option_f64_free(&ptr->f1); -} - -void plugin_option_s32_free(plugin_option_s32_t *ptr) { - if (ptr->is_some) { - } -} - -void plugin_tuple2_option_s32_option_s32_free(plugin_tuple2_option_s32_option_s32_t *ptr) { - plugin_option_s32_free(&ptr->f0); - plugin_option_s32_free(&ptr->f1); -} - -void plugin_option_s64_free(plugin_option_s64_t *ptr) { - if (ptr->is_some) { - } -} - -void plugin_tuple2_option_s64_option_s64_free(plugin_tuple2_option_s64_option_s64_t *ptr) { - plugin_option_s64_free(&ptr->f0); - plugin_option_s64_free(&ptr->f1); -} - -void pumpkin_plugin_command_argument_type_free(pumpkin_plugin_command_argument_type_t *ptr) { - switch ((int32_t) ptr->tag) { - case 1: { - plugin_tuple2_option_f32_option_f32_free(&ptr->val.float_); - break; - } - case 2: { - plugin_tuple2_option_f64_option_f64_free(&ptr->val.double_); - break; - } - case 3: { - plugin_tuple2_option_s32_option_s32_free(&ptr->val.integer); - break; - } - case 4: { - plugin_tuple2_option_s64_option_s64_free(&ptr->val.long_); - break; - } - case 5: { - break; - } - case 23: { - break; - } - case 24: { - plugin_string_free(&ptr->val.resource); - break; - } - } -} - -void plugin_option_string_free(plugin_option_string_t *ptr) { - if (ptr->is_some) { - plugin_string_free(&ptr->val); - } -} - -void pumpkin_plugin_command_command_error_free(pumpkin_plugin_command_command_error_t *ptr) { - switch ((int32_t) ptr->tag) { - case 0: { - plugin_option_string_free(&ptr->val.invalid_consumption); - break; - } - case 3: { - break; - } - } -} - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[resource-drop]command-node"))) -extern void __wasm_import_pumpkin_plugin_command_command_node_drop(int32_t handle); - -void pumpkin_plugin_command_command_node_drop_own(pumpkin_plugin_command_own_command_node_t handle) { - __wasm_import_pumpkin_plugin_command_command_node_drop(handle.__handle); -} - -void pumpkin_plugin_command_command_node_drop_borrow(pumpkin_plugin_command_borrow_command_node_t handle) { - __wasm_import_pumpkin_plugin_command_command_node_drop(handle.__handle); -} - -pumpkin_plugin_command_borrow_command_node_t pumpkin_plugin_command_borrow_command_node(pumpkin_plugin_command_own_command_node_t arg) { - return (pumpkin_plugin_command_borrow_command_node_t) { arg.__handle }; -} - -__attribute__((__import_module__("pumpkin:plugin/command"), __import_name__("[resource-drop]command"))) -extern void __wasm_import_pumpkin_plugin_command_command_drop(int32_t handle); - -void pumpkin_plugin_command_command_drop_own(pumpkin_plugin_command_own_command_t handle) { - __wasm_import_pumpkin_plugin_command_command_drop(handle.__handle); -} - -void pumpkin_plugin_command_command_drop_borrow(pumpkin_plugin_command_borrow_command_t handle) { - __wasm_import_pumpkin_plugin_command_command_drop(handle.__handle); -} - -pumpkin_plugin_command_borrow_command_t pumpkin_plugin_command_borrow_command(pumpkin_plugin_command_own_command_t arg) { - return (pumpkin_plugin_command_borrow_command_t) { arg.__handle }; -} - -void pumpkin_plugin_command_option_own_player_free(pumpkin_plugin_command_option_own_player_t *ptr) { - if (ptr->is_some) { - } -} - -void plugin_option_position_free(plugin_option_position_t *ptr) { - if (ptr->is_some) { - } -} - -void pumpkin_plugin_command_option_own_world_free(pumpkin_plugin_command_option_own_world_t *ptr) { - if (ptr->is_some) { - } -} - -void plugin_list_string_free(plugin_list_string_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - plugin_string_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - plugin_string_free(&list_ptr[i]); - } - free(list_ptr); - } -} - -void pumpkin_plugin_event_item_stack_free(pumpkin_plugin_event_item_stack_t *ptr) { - pumpkin_plugin_common_item_stack_free(ptr); -} - -void pumpkin_plugin_event_list_own_player_free(pumpkin_plugin_event_list_own_player_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - pumpkin_plugin_event_own_player_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void pumpkin_plugin_event_player_chat_event_data_free(pumpkin_plugin_event_player_chat_event_data_t *ptr) { - plugin_string_free(&ptr->message); - pumpkin_plugin_event_list_own_player_free(&ptr->recipients); -} - -void pumpkin_plugin_event_player_command_send_event_data_free(pumpkin_plugin_event_player_command_send_event_data_t *ptr) { - plugin_string_free(&ptr->command); -} - -void pumpkin_plugin_event_player_permission_check_event_data_free(pumpkin_plugin_event_player_permission_check_event_data_t *ptr) { - plugin_string_free(&ptr->permission); -} - -void pumpkin_plugin_event_player_custom_payload_event_data_free(pumpkin_plugin_event_player_custom_payload_event_data_t *ptr) { - plugin_string_free(&ptr->channel); - plugin_list_u8_free(&ptr->data); -} - -void pumpkin_plugin_event_player_fish_event_data_free(pumpkin_plugin_event_player_fish_event_data_t *ptr) { - plugin_option_string_free(&ptr->caught_uuid); - plugin_string_free(&ptr->caught_type); - plugin_string_free(&ptr->hook_uuid); -} - -void pumpkin_plugin_event_player_egg_throw_event_data_free(pumpkin_plugin_event_player_egg_throw_event_data_t *ptr) { - plugin_string_free(&ptr->egg_uuid); - plugin_string_free(&ptr->hatching_type); -} - -void plugin_option_block_position_free(plugin_option_block_position_t *ptr) { - if (ptr->is_some) { - } -} - -void pumpkin_plugin_event_player_interact_event_data_free(pumpkin_plugin_event_player_interact_event_data_t *ptr) { - plugin_option_block_position_free(&ptr->clicked_pos); - pumpkin_plugin_event_item_stack_free(&ptr->item); - plugin_string_free(&ptr->block); -} - -void pumpkin_plugin_event_option_own_player_free(pumpkin_plugin_event_option_own_player_t *ptr) { - if (ptr->is_some) { - } -} - -void pumpkin_plugin_event_block_break_event_data_free(pumpkin_plugin_event_block_break_event_data_t *ptr) { - pumpkin_plugin_event_option_own_player_free(&ptr->player); - plugin_string_free(&ptr->block); -} - -void pumpkin_plugin_event_block_burn_event_data_free(pumpkin_plugin_event_block_burn_event_data_t *ptr) { - plugin_string_free(&ptr->igniting_block); - plugin_string_free(&ptr->block); -} - -void pumpkin_plugin_event_block_can_build_event_data_free(pumpkin_plugin_event_block_can_build_event_data_t *ptr) { - plugin_string_free(&ptr->block_to_build); - plugin_string_free(&ptr->block); -} - -void pumpkin_plugin_event_block_grow_event_data_free(pumpkin_plugin_event_block_grow_event_data_t *ptr) { - plugin_string_free(&ptr->old_block); - plugin_string_free(&ptr->new_block); -} - -void pumpkin_plugin_event_block_place_event_data_free(pumpkin_plugin_event_block_place_event_data_t *ptr) { - plugin_string_free(&ptr->block_placed); - plugin_string_free(&ptr->block_placed_against); -} - -void pumpkin_plugin_event_server_command_event_data_free(pumpkin_plugin_event_server_command_event_data_t *ptr) { - plugin_string_free(&ptr->command); -} - -void pumpkin_plugin_event_event_free(pumpkin_plugin_event_event_t *ptr) { - switch ((int32_t) ptr->tag) { - case 0: { - break; - } - case 1: { - break; - } - case 2: { - break; - } - case 3: { - pumpkin_plugin_event_player_chat_event_data_free(&ptr->val.player_chat_event); - break; - } - case 4: { - pumpkin_plugin_event_player_command_send_event_data_free(&ptr->val.player_command_send_event); - break; - } - case 5: { - pumpkin_plugin_event_player_permission_check_event_data_free(&ptr->val.player_permission_check_event); - break; - } - case 6: { - break; - } - case 7: { - break; - } - case 8: { - break; - } - case 9: { - break; - } - case 10: { - break; - } - case 11: { - break; - } - case 12: { - break; - } - case 13: { - pumpkin_plugin_event_player_custom_payload_event_data_free(&ptr->val.player_custom_payload_event); - break; - } - case 14: { - pumpkin_plugin_event_player_fish_event_data_free(&ptr->val.player_fish_event); - break; - } - case 15: { - pumpkin_plugin_event_player_egg_throw_event_data_free(&ptr->val.player_egg_throw_event); - break; - } - case 16: { - break; - } - case 17: { - pumpkin_plugin_event_player_interact_event_data_free(&ptr->val.player_interact_event); - break; - } - case 18: { - break; - } - case 19: { - break; - } - case 20: { - break; - } - case 21: { - break; - } - case 22: { - pumpkin_plugin_event_block_break_event_data_free(&ptr->val.block_break_event); - break; - } - case 23: { - pumpkin_plugin_event_block_burn_event_data_free(&ptr->val.block_burn_event); - break; - } - case 24: { - pumpkin_plugin_event_block_can_build_event_data_free(&ptr->val.block_can_build_event); - break; - } - case 25: { - pumpkin_plugin_event_block_grow_event_data_free(&ptr->val.block_grow_event); - break; - } - case 26: { - pumpkin_plugin_event_block_place_event_data_free(&ptr->val.block_place_event); - break; - } - case 27: { - pumpkin_plugin_event_server_command_event_data_free(&ptr->val.server_command_event); - break; - } - case 28: { - break; - } - case 29: { - break; - } - } -} - -void pumpkin_plugin_context_permission_free(pumpkin_plugin_context_permission_t *ptr) { - pumpkin_plugin_permission_permission_free(ptr); -} - -__attribute__((__import_module__("pumpkin:plugin/context"), __import_name__("[resource-drop]context"))) -extern void __wasm_import_pumpkin_plugin_context_context_drop(int32_t handle); - -void pumpkin_plugin_context_context_drop_own(pumpkin_plugin_context_own_context_t handle) { - __wasm_import_pumpkin_plugin_context_context_drop(handle.__handle); -} - -void pumpkin_plugin_context_context_drop_borrow(pumpkin_plugin_context_borrow_context_t handle) { - __wasm_import_pumpkin_plugin_context_context_drop(handle.__handle); -} - -pumpkin_plugin_context_borrow_context_t pumpkin_plugin_context_borrow_context(pumpkin_plugin_context_own_context_t arg) { - return (pumpkin_plugin_context_borrow_context_t) { arg.__handle }; -} - -void pumpkin_plugin_context_result_void_string_free(pumpkin_plugin_context_result_void_string_t *ptr) { - if (!ptr->is_err) { - } else { - plugin_string_free(&ptr->val.err); - } -} - -void plugin_event_free(plugin_event_t *ptr) { - pumpkin_plugin_event_event_free(ptr); -} - -void plugin_command_error_free(plugin_command_error_t *ptr) { - pumpkin_plugin_command_command_error_free(ptr); -} - -void plugin_result_s32_command_error_free(plugin_result_s32_command_error_t *ptr) { - if (!ptr->is_err) { - } else { - plugin_command_error_free(&ptr->val.err); - } -} - -void exports_pumpkin_plugin_metadata_plugin_metadata_free(exports_pumpkin_plugin_metadata_plugin_metadata_t *ptr) { - plugin_string_free(&ptr->name); - plugin_string_free(&ptr->version); - plugin_string_free(&ptr->description); -} - -void exports_pumpkin_plugin_common_raw_text_component_free(exports_pumpkin_plugin_common_raw_text_component_t *ptr) { - size_t list_len = ptr->len; - if (list_len > 0) { - uint8_t *list_ptr = ptr->ptr; - for (size_t i = 0; i < list_len; i++) { - } - free(list_ptr); - } -} - -void exports_pumpkin_plugin_common_item_stack_free(exports_pumpkin_plugin_common_item_stack_t *ptr) { - plugin_string_free(&ptr->registry_key); -} - -void plugin_string_set(plugin_string_t *ret, const char*s) { - ret->ptr = (uint8_t*) s; - ret->len = strlen(s); -} - -void plugin_string_dup(plugin_string_t *ret, const char*s) { - ret->len = strlen(s); - ret->ptr = (uint8_t*) cabi_realloc(NULL, 0, 1, ret->len * 1); - memcpy(ret->ptr, s, ret->len * 1); -} - -void plugin_string_dup_n(plugin_string_t *ret, const char*s, size_t len) { - ret->len = len; - ret->ptr = (uint8_t*) cabi_realloc(NULL, 0, 1, ret->len * 1); - memcpy(ret->ptr, s, ret->len * 1); -} - -void plugin_string_free(plugin_string_t *ret) { - if (ret->len > 0) { - free(ret->ptr); - } - ret->ptr = NULL; - ret->len = 0; -} - -// Component Adapters - -void pumpkin_plugin_logging_log(pumpkin_plugin_logging_level_t level, plugin_string_t *message) { - __wasm_import_pumpkin_plugin_logging_log((int32_t) level, (uint8_t *) (*message).ptr, (*message).len); -} - -void pumpkin_plugin_logging_log_tracing(plugin_list_u8_t *event) { - __wasm_import_pumpkin_plugin_logging_log_tracing((uint8_t *) (*event).ptr, (*event).len); -} - -pumpkin_plugin_text_own_text_component_t pumpkin_plugin_text_static_text_component_text(plugin_string_t *plain) { - int32_t ret = __wasm_import_pumpkin_plugin_text_static_text_component_text((uint8_t *) (*plain).ptr, (*plain).len); - return (pumpkin_plugin_text_own_text_component_t) { ret }; -} - -pumpkin_plugin_text_own_text_component_t pumpkin_plugin_text_static_text_component_translate(plugin_string_t *key, pumpkin_plugin_text_list_own_text_component_t *with) { - int32_t ret = __wasm_import_pumpkin_plugin_text_static_text_component_translate((uint8_t *) (*key).ptr, (*key).len, (uint8_t *) (*with).ptr, (*with).len); - return (pumpkin_plugin_text_own_text_component_t) { ret }; -} - -void pumpkin_plugin_text_method_text_component_add_child(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_own_text_component_t child) { - __wasm_import_pumpkin_plugin_text_method_text_component_add_child((self).__handle, (child).__handle); -} - -void pumpkin_plugin_text_method_text_component_add_text(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *text) { - __wasm_import_pumpkin_plugin_text_method_text_component_add_text((self).__handle, (uint8_t *) (*text).ptr, (*text).len); -} - -void pumpkin_plugin_text_method_text_component_get_text(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_text_method_text_component_get_text((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -void pumpkin_plugin_text_method_text_component_encode(pumpkin_plugin_text_borrow_text_component_t self, plugin_list_u8_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_text_method_text_component_encode((self).__handle, ptr); - *ret = (plugin_list_u8_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -void pumpkin_plugin_text_method_text_component_color_named(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_named_color_t color) { - __wasm_import_pumpkin_plugin_text_method_text_component_color_named((self).__handle, (int32_t) color); -} - -void pumpkin_plugin_text_method_text_component_color_rgb(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_rgb_color_t *color) { - __wasm_import_pumpkin_plugin_text_method_text_component_color_rgb((self).__handle, (int32_t) ((*color).r), (int32_t) ((*color).g), (int32_t) ((*color).b)); -} - -void pumpkin_plugin_text_method_text_component_bold(pumpkin_plugin_text_borrow_text_component_t self, bool value) { - __wasm_import_pumpkin_plugin_text_method_text_component_bold((self).__handle, value); -} - -void pumpkin_plugin_text_method_text_component_italic(pumpkin_plugin_text_borrow_text_component_t self, bool value) { - __wasm_import_pumpkin_plugin_text_method_text_component_italic((self).__handle, value); -} - -void pumpkin_plugin_text_method_text_component_underlined(pumpkin_plugin_text_borrow_text_component_t self, bool value) { - __wasm_import_pumpkin_plugin_text_method_text_component_underlined((self).__handle, value); -} - -void pumpkin_plugin_text_method_text_component_strikethrough(pumpkin_plugin_text_borrow_text_component_t self, bool value) { - __wasm_import_pumpkin_plugin_text_method_text_component_strikethrough((self).__handle, value); -} - -void pumpkin_plugin_text_method_text_component_obfuscated(pumpkin_plugin_text_borrow_text_component_t self, bool value) { - __wasm_import_pumpkin_plugin_text_method_text_component_obfuscated((self).__handle, value); -} - -void pumpkin_plugin_text_method_text_component_insertion(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *text) { - __wasm_import_pumpkin_plugin_text_method_text_component_insertion((self).__handle, (uint8_t *) (*text).ptr, (*text).len); -} - -void pumpkin_plugin_text_method_text_component_font(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *font) { - __wasm_import_pumpkin_plugin_text_method_text_component_font((self).__handle, (uint8_t *) (*font).ptr, (*font).len); -} - -void pumpkin_plugin_text_method_text_component_shadow_color(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_argb_color_t *color) { - __wasm_import_pumpkin_plugin_text_method_text_component_shadow_color((self).__handle, (int32_t) ((*color).a), (int32_t) ((*color).r), (int32_t) ((*color).g), (int32_t) ((*color).b)); -} - -void pumpkin_plugin_text_method_text_component_click_open_url(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *url) { - __wasm_import_pumpkin_plugin_text_method_text_component_click_open_url((self).__handle, (uint8_t *) (*url).ptr, (*url).len); -} - -void pumpkin_plugin_text_method_text_component_click_run_command(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *command) { - __wasm_import_pumpkin_plugin_text_method_text_component_click_run_command((self).__handle, (uint8_t *) (*command).ptr, (*command).len); -} - -void pumpkin_plugin_text_method_text_component_click_suggest_command(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *command) { - __wasm_import_pumpkin_plugin_text_method_text_component_click_suggest_command((self).__handle, (uint8_t *) (*command).ptr, (*command).len); -} - -void pumpkin_plugin_text_method_text_component_click_copy_to_clipboard(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *text) { - __wasm_import_pumpkin_plugin_text_method_text_component_click_copy_to_clipboard((self).__handle, (uint8_t *) (*text).ptr, (*text).len); -} - -void pumpkin_plugin_text_method_text_component_hover_show_text(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_own_text_component_t text) { - __wasm_import_pumpkin_plugin_text_method_text_component_hover_show_text((self).__handle, (text).__handle); -} - -void pumpkin_plugin_text_method_text_component_hover_show_item(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *item) { - __wasm_import_pumpkin_plugin_text_method_text_component_hover_show_item((self).__handle, (uint8_t *) (*item).ptr, (*item).len); -} - -void pumpkin_plugin_text_method_text_component_hover_show_entity(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *entity_type, plugin_string_t *id, pumpkin_plugin_text_own_text_component_t *maybe_name) { - pumpkin_plugin_text_option_own_text_component_t name; - name.is_some = maybe_name != NULL;if (maybe_name) { - name.val = *maybe_name; - } - int32_t option; - int32_t option1; - if ((name).is_some) { - const pumpkin_plugin_text_own_text_component_t *payload0 = &(name).val; - option = 1; - option1 = (*payload0).__handle; - } else { - option = 0; - option1 = 0; - } - __wasm_import_pumpkin_plugin_text_method_text_component_hover_show_entity((self).__handle, (uint8_t *) (*entity_type).ptr, (*entity_type).len, (uint8_t *) (*id).ptr, (*id).len, option, option1); -} - -pumpkin_plugin_gui_own_gui_t pumpkin_plugin_gui_constructor_gui(pumpkin_plugin_gui_gui_type_t type, pumpkin_plugin_gui_own_text_component_t title) { - int32_t ret = __wasm_import_pumpkin_plugin_gui_constructor_gui((int32_t) type, (title).__handle); - return (pumpkin_plugin_gui_own_gui_t) { ret }; -} - -void pumpkin_plugin_gui_method_gui_set_item(pumpkin_plugin_gui_borrow_gui_t self, uint32_t slot, pumpkin_plugin_gui_item_stack_t *item) { - __wasm_import_pumpkin_plugin_gui_method_gui_set_item((self).__handle, (int32_t) (slot), (uint8_t *) ((*item).registry_key).ptr, ((*item).registry_key).len, (int32_t) ((*item).count)); -} - -bool pumpkin_plugin_gui_method_gui_get_item(pumpkin_plugin_gui_borrow_gui_t self, uint32_t slot, pumpkin_plugin_gui_item_stack_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(4*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_gui_method_gui_get_item((self).__handle, (int32_t) (slot), ptr); - pumpkin_plugin_gui_option_item_stack_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_common_item_stack_t) { - (plugin_string_t) (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + sizeof(void*)))), (*((size_t*) (ptr + (2*sizeof(void*))))) }, - (uint8_t) (uint8_t) ((int32_t) *((uint8_t*) (ptr + (3*sizeof(void*))))), - }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -void pumpkin_plugin_scoreboard_method_scoreboard_add_objective(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name, pumpkin_plugin_scoreboard_own_text_component_t display_name, pumpkin_plugin_scoreboard_render_type_t render_type) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_add_objective((self).__handle, (uint8_t *) (*name).ptr, (*name).len, (display_name).__handle, (int32_t) render_type); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_remove_objective(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_remove_objective((self).__handle, (uint8_t *) (*name).ptr, (*name).len); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_set_display_slot(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, pumpkin_plugin_scoreboard_display_slot_t slot, plugin_string_t *objective_name) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_set_display_slot((self).__handle, (int32_t) slot, (uint8_t *) (*objective_name).ptr, (*objective_name).len); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_update_score(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *entity_name, plugin_string_t *objective_name, int32_t value) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_update_score((self).__handle, (uint8_t *) (*entity_name).ptr, (*entity_name).len, (uint8_t *) (*objective_name).ptr, (*objective_name).len, value); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_remove_score(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *entity_name, plugin_string_t *objective_name) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_remove_score((self).__handle, (uint8_t *) (*entity_name).ptr, (*entity_name).len, (uint8_t *) (*objective_name).ptr, (*objective_name).len); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_create_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name, pumpkin_plugin_scoreboard_team_settings_t *settings) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_create_team((self).__handle, (uint8_t *) (*name).ptr, (*name).len, ((*settings).display_name).__handle, (*settings).friendly_fire, (*settings).see_friendly_invisibles, (int32_t) (*settings).nametag_visibility, (int32_t) (*settings).collision_rule, (int32_t) (*settings).color, ((*settings).prefix).__handle, ((*settings).suffix).__handle); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_remove_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_remove_team((self).__handle, (uint8_t *) (*name).ptr, (*name).len); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_update_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name, pumpkin_plugin_scoreboard_team_settings_t *settings) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_update_team((self).__handle, (uint8_t *) (*name).ptr, (*name).len, ((*settings).display_name).__handle, (*settings).friendly_fire, (*settings).see_friendly_invisibles, (int32_t) (*settings).nametag_visibility, (int32_t) (*settings).collision_rule, (int32_t) (*settings).color, ((*settings).prefix).__handle, ((*settings).suffix).__handle); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_add_player_to_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *team_name, plugin_string_t *player_name) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_add_player_to_team((self).__handle, (uint8_t *) (*team_name).ptr, (*team_name).len, (uint8_t *) (*player_name).ptr, (*player_name).len); -} - -void pumpkin_plugin_scoreboard_method_scoreboard_remove_player_from_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *team_name, plugin_string_t *player_name) { - __wasm_import_pumpkin_plugin_scoreboard_method_scoreboard_remove_player_from_team((self).__handle, (uint8_t *) (*team_name).ptr, (*team_name).len, (uint8_t *) (*player_name).ptr, (*player_name).len); -} - -uint32_t pumpkin_plugin_world_method_entity_get_id(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_get_id((self).__handle); - return (uint32_t) (ret); -} - -void pumpkin_plugin_world_method_entity_get_uuid(pumpkin_plugin_world_borrow_entity_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_entity_get_uuid((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -void pumpkin_plugin_world_method_entity_get_type(pumpkin_plugin_world_borrow_entity_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_entity_get_type((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -void pumpkin_plugin_world_method_entity_get_position(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_position_t *ret) { - __attribute__((__aligned__(8))) - uint8_t ret_area[24]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_entity_get_position((self).__handle, ptr); - *ret = (pumpkin_plugin_common_position_t) { - (double) *((double*) (ptr + 0)), - (double) *((double*) (ptr + 8)), - (double) *((double*) (ptr + 16)), - }; -} - -pumpkin_plugin_world_own_world_t pumpkin_plugin_world_method_entity_get_world(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_get_world((self).__handle); - return (pumpkin_plugin_world_own_world_t) { ret }; -} - -float pumpkin_plugin_world_method_entity_get_yaw(pumpkin_plugin_world_borrow_entity_t self) { - float ret = __wasm_import_pumpkin_plugin_world_method_entity_get_yaw((self).__handle); - return ret; -} - -float pumpkin_plugin_world_method_entity_get_pitch(pumpkin_plugin_world_borrow_entity_t self) { - float ret = __wasm_import_pumpkin_plugin_world_method_entity_get_pitch((self).__handle); - return ret; -} - -float pumpkin_plugin_world_method_entity_get_head_yaw(pumpkin_plugin_world_borrow_entity_t self) { - float ret = __wasm_import_pumpkin_plugin_world_method_entity_get_head_yaw((self).__handle); - return ret; -} - -bool pumpkin_plugin_world_method_entity_is_on_ground(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_is_on_ground((self).__handle); - return ret; -} - -bool pumpkin_plugin_world_method_entity_is_sneaking(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_is_sneaking((self).__handle); - return ret; -} - -bool pumpkin_plugin_world_method_entity_is_sprinting(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_is_sprinting((self).__handle); - return ret; -} - -bool pumpkin_plugin_world_method_entity_is_invisible(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_is_invisible((self).__handle); - return ret; -} - -bool pumpkin_plugin_world_method_entity_is_glowing(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_is_glowing((self).__handle); - return ret; -} - -void pumpkin_plugin_world_method_entity_teleport(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_position_t *pos, pumpkin_plugin_world_own_world_t world_ref) { - __wasm_import_pumpkin_plugin_world_method_entity_teleport((self).__handle, (*pos).f0, (*pos).f1, (*pos).f2, (world_ref).__handle); -} - -void pumpkin_plugin_world_method_entity_set_velocity(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_position_t *velocity) { - __wasm_import_pumpkin_plugin_world_method_entity_set_velocity((self).__handle, (*velocity).f0, (*velocity).f1, (*velocity).f2); -} - -void pumpkin_plugin_world_method_entity_get_velocity(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_position_t *ret) { - __attribute__((__aligned__(8))) - uint8_t ret_area[24]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_entity_get_velocity((self).__handle, ptr); - *ret = (pumpkin_plugin_common_position_t) { - (double) *((double*) (ptr + 0)), - (double) *((double*) (ptr + 8)), - (double) *((double*) (ptr + 16)), - }; -} - -pumpkin_plugin_world_entity_pose_t pumpkin_plugin_world_method_entity_get_pose(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_get_pose((self).__handle); - return ret; -} - -pumpkin_plugin_world_own_text_component_t pumpkin_plugin_world_method_entity_get_name(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_get_name((self).__handle); - return (pumpkin_plugin_world_own_text_component_t) { ret }; -} - -void pumpkin_plugin_world_method_entity_set_custom_name(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_own_text_component_t name) { - __wasm_import_pumpkin_plugin_world_method_entity_set_custom_name((self).__handle, (name).__handle); -} - -bool pumpkin_plugin_world_method_entity_get_custom_name(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_own_text_component_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[8]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_entity_get_custom_name((self).__handle, ptr); - pumpkin_plugin_world_option_own_text_component_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_world_own_text_component_t) { *((int32_t*) (ptr + 4)) }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -void pumpkin_plugin_world_method_entity_set_custom_name_visible(pumpkin_plugin_world_borrow_entity_t self, bool visible) { - __wasm_import_pumpkin_plugin_world_method_entity_set_custom_name_visible((self).__handle, visible); -} - -bool pumpkin_plugin_world_method_entity_is_custom_name_visible(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_is_custom_name_visible((self).__handle); - return ret; -} - -bool pumpkin_plugin_world_method_entity_is_invulnerable(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_is_invulnerable((self).__handle); - return ret; -} - -void pumpkin_plugin_world_method_entity_set_invulnerable(pumpkin_plugin_world_borrow_entity_t self, bool invulnerable) { - __wasm_import_pumpkin_plugin_world_method_entity_set_invulnerable((self).__handle, invulnerable); -} - -int32_t pumpkin_plugin_world_method_entity_get_fire_ticks(pumpkin_plugin_world_borrow_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_entity_get_fire_ticks((self).__handle); - return ret; -} - -void pumpkin_plugin_world_method_entity_set_fire_ticks(pumpkin_plugin_world_borrow_entity_t self, int32_t ticks) { - __wasm_import_pumpkin_plugin_world_method_entity_set_fire_ticks((self).__handle, ticks); -} - -void pumpkin_plugin_world_method_entity_remove(pumpkin_plugin_world_borrow_entity_t self) { - __wasm_import_pumpkin_plugin_world_method_entity_remove((self).__handle); -} - -void pumpkin_plugin_world_method_world_get_id(pumpkin_plugin_world_borrow_world_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_world_get_id((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -uint16_t pumpkin_plugin_world_method_world_get_block_state_id(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_block_pos_t *pos) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_world_get_block_state_id((self).__handle, (*pos).x, (*pos).y, (*pos).z); - return (uint16_t) (ret); -} - -void pumpkin_plugin_world_method_world_get_block_state(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_block_pos_t *pos, pumpkin_plugin_world_block_state_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[16]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_world_get_block_state((self).__handle, (*pos).x, (*pos).y, (*pos).z, ptr); - *ret = (pumpkin_plugin_world_block_state_t) { - (uint16_t) (uint16_t) ((int32_t) *((uint16_t*) (ptr + 0))), - (uint8_t) (uint8_t) ((int32_t) *((uint8_t*) (ptr + 2))), - (uint8_t) (uint8_t) ((int32_t) *((uint8_t*) (ptr + 3))), - (float) *((float*) (ptr + 4)), - (bool) (int32_t) *((uint8_t*) (ptr + 8)), - (bool) (int32_t) *((uint8_t*) (ptr + 9)), - (bool) (int32_t) *((uint8_t*) (ptr + 10)), - (bool) (int32_t) *((uint8_t*) (ptr + 11)), - (pumpkin_plugin_world_piston_behavior_t) (int32_t) *((uint8_t*) (ptr + 12)), - (bool) (int32_t) *((uint8_t*) (ptr + 13)), - }; -} - -void pumpkin_plugin_world_method_world_set_block_state(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_block_pos_t *pos, uint16_t state, pumpkin_plugin_world_block_flags_t update_flags) { - __wasm_import_pumpkin_plugin_world_method_world_set_block_state((self).__handle, (*pos).x, (*pos).y, (*pos).z, (int32_t) (state), update_flags); -} - -uint64_t pumpkin_plugin_world_method_world_get_time_of_day(pumpkin_plugin_world_borrow_world_t self) { - int64_t ret = __wasm_import_pumpkin_plugin_world_method_world_get_time_of_day((self).__handle); - return (uint64_t) (ret); -} - -void pumpkin_plugin_world_method_world_set_time_of_day(pumpkin_plugin_world_borrow_world_t self, uint64_t time) { - __wasm_import_pumpkin_plugin_world_method_world_set_time_of_day((self).__handle, (int64_t) (time)); -} - -uint64_t pumpkin_plugin_world_method_world_get_world_age(pumpkin_plugin_world_borrow_world_t self) { - int64_t ret = __wasm_import_pumpkin_plugin_world_method_world_get_world_age((self).__handle); - return (uint64_t) (ret); -} - -void pumpkin_plugin_world_method_world_get_dimension(pumpkin_plugin_world_borrow_world_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_world_get_dimension((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -int32_t pumpkin_plugin_world_method_world_get_top_block_y(pumpkin_plugin_world_borrow_world_t self, int32_t x, int32_t z) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_world_get_top_block_y((self).__handle, x, z); - return ret; -} - -int32_t pumpkin_plugin_world_method_world_get_motion_blocking_height(pumpkin_plugin_world_borrow_world_t self, int32_t x, int32_t z) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_world_get_motion_blocking_height((self).__handle, x, z); - return ret; -} - -bool pumpkin_plugin_world_method_world_is_raining(pumpkin_plugin_world_borrow_world_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_world_is_raining((self).__handle); - return ret; -} - -void pumpkin_plugin_world_method_world_set_raining(pumpkin_plugin_world_borrow_world_t self, bool raining) { - __wasm_import_pumpkin_plugin_world_method_world_set_raining((self).__handle, raining); -} - -bool pumpkin_plugin_world_method_world_is_thundering(pumpkin_plugin_world_borrow_world_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_world_is_thundering((self).__handle); - return ret; -} - -void pumpkin_plugin_world_method_world_set_thundering(pumpkin_plugin_world_borrow_world_t self, bool thundering) { - __wasm_import_pumpkin_plugin_world_method_world_set_thundering((self).__handle, thundering); -} - -void pumpkin_plugin_world_method_world_broadcast_system_message(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_own_text_component_t message, bool overlay) { - __wasm_import_pumpkin_plugin_world_method_world_broadcast_system_message((self).__handle, (message).__handle, overlay); -} - -pumpkin_plugin_world_own_scoreboard_t pumpkin_plugin_world_method_world_get_scoreboard(pumpkin_plugin_world_borrow_world_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_world_get_scoreboard((self).__handle); - return (pumpkin_plugin_world_own_scoreboard_t) { ret }; -} - -void pumpkin_plugin_world_method_world_play_sound(pumpkin_plugin_world_borrow_world_t self, plugin_string_t *sound, pumpkin_plugin_world_sound_category_t category, pumpkin_plugin_world_position_t *pos, float volume, float pitch) { - __wasm_import_pumpkin_plugin_world_method_world_play_sound((self).__handle, (uint8_t *) (*sound).ptr, (*sound).len, (int32_t) category, (*pos).f0, (*pos).f1, (*pos).f2, volume, pitch); -} - -void pumpkin_plugin_world_method_world_spawn_particle(pumpkin_plugin_world_borrow_world_t self, plugin_string_t *particle, pumpkin_plugin_world_position_t *pos, pumpkin_plugin_world_position_t *offset, float max_speed, int32_t count) { - __wasm_import_pumpkin_plugin_world_method_world_spawn_particle((self).__handle, (uint8_t *) (*particle).ptr, (*particle).len, (*pos).f0, (*pos).f1, (*pos).f2, (*offset).f0, (*offset).f1, (*offset).f2, max_speed, count); -} - -void pumpkin_plugin_world_method_world_create_explosion(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_position_t *pos, float power, bool create_fire, pumpkin_plugin_world_explosion_interaction_t interaction) { - __wasm_import_pumpkin_plugin_world_method_world_create_explosion((self).__handle, (*pos).f0, (*pos).f1, (*pos).f2, power, create_fire, (int32_t) interaction); -} - -int32_t pumpkin_plugin_world_method_world_get_sea_level(pumpkin_plugin_world_borrow_world_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_world_get_sea_level((self).__handle); - return ret; -} - -int32_t pumpkin_plugin_world_method_world_get_min_y(pumpkin_plugin_world_borrow_world_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_world_method_world_get_min_y((self).__handle); - return ret; -} - -void pumpkin_plugin_world_method_world_get_entities(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_list_own_entity_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_world_method_world_get_entities((self).__handle, ptr); - *ret = (pumpkin_plugin_world_list_own_entity_t) { (pumpkin_plugin_world_own_entity_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -pumpkin_plugin_player_own_entity_t pumpkin_plugin_player_method_player_as_entity(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_as_entity((self).__handle); - return (pumpkin_plugin_player_own_entity_t) { ret }; -} - -void pumpkin_plugin_player_method_player_get_id(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_player_method_player_get_id((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -void pumpkin_plugin_player_method_player_get_name(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_player_method_player_get_name((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -void pumpkin_plugin_player_method_player_get_position(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_position_t *ret) { - __attribute__((__aligned__(8))) - uint8_t ret_area[24]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_player_method_player_get_position((self).__handle, ptr); - *ret = (pumpkin_plugin_common_position_t) { - (double) *((double*) (ptr + 0)), - (double) *((double*) (ptr + 8)), - (double) *((double*) (ptr + 16)), - }; -} - -float pumpkin_plugin_player_method_player_get_yaw(pumpkin_plugin_player_borrow_player_t self) { - float ret = __wasm_import_pumpkin_plugin_player_method_player_get_yaw((self).__handle); - return ret; -} - -float pumpkin_plugin_player_method_player_get_pitch(pumpkin_plugin_player_borrow_player_t self) { - float ret = __wasm_import_pumpkin_plugin_player_method_player_get_pitch((self).__handle); - return ret; -} - -pumpkin_plugin_player_own_world_t pumpkin_plugin_player_method_player_get_world(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_world((self).__handle); - return (pumpkin_plugin_player_own_world_t) { ret }; -} - -pumpkin_plugin_player_game_mode_t pumpkin_plugin_player_method_player_get_gamemode(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_gamemode((self).__handle); - return ret; -} - -bool pumpkin_plugin_player_method_player_set_gamemode(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_game_mode_t mode) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_set_gamemode((self).__handle, (int32_t) mode); - return ret; -} - -void pumpkin_plugin_player_method_player_get_locale(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_player_method_player_get_locale((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -uint32_t pumpkin_plugin_player_method_player_get_ping(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_ping((self).__handle); - return (uint32_t) (ret); -} - -pumpkin_plugin_player_permission_level_t pumpkin_plugin_player_method_player_get_permission_level(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_permission_level((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_permission_level(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_permission_level_t level) { - __wasm_import_pumpkin_plugin_player_method_player_set_permission_level((self).__handle, (int32_t) level); -} - -bool pumpkin_plugin_player_method_player_has_permission(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *node) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_has_permission((self).__handle, (uint8_t *) (*node).ptr, (*node).len); - return ret; -} - -pumpkin_plugin_player_own_text_component_t pumpkin_plugin_player_method_player_get_display_name(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_display_name((self).__handle); - return (pumpkin_plugin_player_own_text_component_t) { ret }; -} - -void pumpkin_plugin_player_method_player_send_system_message(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t text, bool overlay) { - __wasm_import_pumpkin_plugin_player_method_player_send_system_message((self).__handle, (text).__handle, overlay); -} - -void pumpkin_plugin_player_method_player_show_title(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t text) { - __wasm_import_pumpkin_plugin_player_method_player_show_title((self).__handle, (text).__handle); -} - -void pumpkin_plugin_player_method_player_show_subtitle(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t text) { - __wasm_import_pumpkin_plugin_player_method_player_show_subtitle((self).__handle, (text).__handle); -} - -void pumpkin_plugin_player_method_player_show_actionbar(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t text) { - __wasm_import_pumpkin_plugin_player_method_player_show_actionbar((self).__handle, (text).__handle); -} - -void pumpkin_plugin_player_method_player_send_title_animation(pumpkin_plugin_player_borrow_player_t self, int32_t fade_in, int32_t stay, int32_t fade_out) { - __wasm_import_pumpkin_plugin_player_method_player_send_title_animation((self).__handle, fade_in, stay, fade_out); -} - -void pumpkin_plugin_player_method_player_teleport(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_position_t *position, float *maybe_yaw, float *maybe_pitch, pumpkin_plugin_player_own_world_t world) { - plugin_option_f32_t yaw; - yaw.is_some = maybe_yaw != NULL;if (maybe_yaw) { - yaw.val = *maybe_yaw; - } - plugin_option_f32_t pitch; - pitch.is_some = maybe_pitch != NULL;if (maybe_pitch) { - pitch.val = *maybe_pitch; - } - int32_t option; - float option1; - if ((yaw).is_some) { - const float *payload0 = &(yaw).val; - option = 1; - option1 = *payload0; - } else { - option = 0; - option1 = 0; - } - int32_t option4; - float option5; - if ((pitch).is_some) { - const float *payload3 = &(pitch).val; - option4 = 1; - option5 = *payload3; - } else { - option4 = 0; - option5 = 0; - } - __wasm_import_pumpkin_plugin_player_method_player_teleport((self).__handle, (*position).f0, (*position).f1, (*position).f2, option, option1, option4, option5, (world).__handle); -} - -void pumpkin_plugin_player_method_player_teleport_world(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_world_t world_ref, pumpkin_plugin_player_position_t *position, float *maybe_yaw, float *maybe_pitch) { - plugin_option_f32_t yaw; - yaw.is_some = maybe_yaw != NULL;if (maybe_yaw) { - yaw.val = *maybe_yaw; - } - plugin_option_f32_t pitch; - pitch.is_some = maybe_pitch != NULL;if (maybe_pitch) { - pitch.val = *maybe_pitch; - } - int32_t option; - float option1; - if ((yaw).is_some) { - const float *payload0 = &(yaw).val; - option = 1; - option1 = *payload0; - } else { - option = 0; - option1 = 0; - } - int32_t option4; - float option5; - if ((pitch).is_some) { - const float *payload3 = &(pitch).val; - option4 = 1; - option5 = *payload3; - } else { - option4 = 0; - option5 = 0; - } - __wasm_import_pumpkin_plugin_player_method_player_teleport_world((self).__handle, (world_ref).__handle, (*position).f0, (*position).f1, (*position).f2, option, option1, option4, option5); -} - -void pumpkin_plugin_player_method_player_kick(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t message) { - __wasm_import_pumpkin_plugin_player_method_player_kick((self).__handle, (message).__handle); -} - -void pumpkin_plugin_player_method_player_respawn(pumpkin_plugin_player_borrow_player_t self) { - __wasm_import_pumpkin_plugin_player_method_player_respawn((self).__handle); -} - -void pumpkin_plugin_player_method_player_open_gui(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_gui_t gui_ref) { - __wasm_import_pumpkin_plugin_player_method_player_open_gui((self).__handle, (gui_ref).__handle); -} - -void pumpkin_plugin_player_method_player_ban(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t *maybe_reason) { - pumpkin_plugin_player_option_own_text_component_t reason; - reason.is_some = maybe_reason != NULL;if (maybe_reason) { - reason.val = *maybe_reason; - } - int32_t option; - int32_t option1; - if ((reason).is_some) { - const pumpkin_plugin_player_own_text_component_t *payload0 = &(reason).val; - option = 1; - option1 = (*payload0).__handle; - } else { - option = 0; - option1 = 0; - } - __wasm_import_pumpkin_plugin_player_method_player_ban((self).__handle, option, option1); -} - -void pumpkin_plugin_player_method_player_ban_ip(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t *maybe_reason) { - pumpkin_plugin_player_option_own_text_component_t reason; - reason.is_some = maybe_reason != NULL;if (maybe_reason) { - reason.val = *maybe_reason; - } - int32_t option; - int32_t option1; - if ((reason).is_some) { - const pumpkin_plugin_player_own_text_component_t *payload0 = &(reason).val; - option = 1; - option1 = (*payload0).__handle; - } else { - option = 0; - option1 = 0; - } - __wasm_import_pumpkin_plugin_player_method_player_ban_ip((self).__handle, option, option1); -} - -uint8_t pumpkin_plugin_player_method_player_get_selected_slot(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_selected_slot((self).__handle); - return (uint8_t) (ret); -} - -bool pumpkin_plugin_player_method_player_get_item_in_hand(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_hand_t hand, pumpkin_plugin_player_item_stack_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(4*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_player_method_player_get_item_in_hand((self).__handle, (int32_t) hand, ptr); - pumpkin_plugin_player_option_item_stack_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_common_item_stack_t) { - (plugin_string_t) (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + sizeof(void*)))), (*((size_t*) (ptr + (2*sizeof(void*))))) }, - (uint8_t) (uint8_t) ((int32_t) *((uint8_t*) (ptr + (3*sizeof(void*))))), - }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -bool pumpkin_plugin_player_method_player_get_inventory_item(pumpkin_plugin_player_borrow_player_t self, uint8_t slot, pumpkin_plugin_player_item_stack_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(4*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_player_method_player_get_inventory_item((self).__handle, (int32_t) (slot), ptr); - pumpkin_plugin_player_option_item_stack_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_common_item_stack_t) { - (plugin_string_t) (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + sizeof(void*)))), (*((size_t*) (ptr + (2*sizeof(void*))))) }, - (uint8_t) (uint8_t) ((int32_t) *((uint8_t*) (ptr + (3*sizeof(void*))))), - }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -float pumpkin_plugin_player_method_player_get_health(pumpkin_plugin_player_borrow_player_t self) { - float ret = __wasm_import_pumpkin_plugin_player_method_player_get_health((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_health(pumpkin_plugin_player_borrow_player_t self, float health) { - __wasm_import_pumpkin_plugin_player_method_player_set_health((self).__handle, health); -} - -float pumpkin_plugin_player_method_player_get_max_health(pumpkin_plugin_player_borrow_player_t self) { - float ret = __wasm_import_pumpkin_plugin_player_method_player_get_max_health((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_max_health(pumpkin_plugin_player_borrow_player_t self, float max_health) { - __wasm_import_pumpkin_plugin_player_method_player_set_max_health((self).__handle, max_health); -} - -uint8_t pumpkin_plugin_player_method_player_get_food_level(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_food_level((self).__handle); - return (uint8_t) (ret); -} - -void pumpkin_plugin_player_method_player_set_food_level(pumpkin_plugin_player_borrow_player_t self, uint8_t food_level) { - __wasm_import_pumpkin_plugin_player_method_player_set_food_level((self).__handle, (int32_t) (food_level)); -} - -float pumpkin_plugin_player_method_player_get_saturation(pumpkin_plugin_player_borrow_player_t self) { - float ret = __wasm_import_pumpkin_plugin_player_method_player_get_saturation((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_saturation(pumpkin_plugin_player_borrow_player_t self, float saturation) { - __wasm_import_pumpkin_plugin_player_method_player_set_saturation((self).__handle, saturation); -} - -float pumpkin_plugin_player_method_player_get_exhaustion(pumpkin_plugin_player_borrow_player_t self) { - float ret = __wasm_import_pumpkin_plugin_player_method_player_get_exhaustion((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_exhaustion(pumpkin_plugin_player_borrow_player_t self, float exhaustion) { - __wasm_import_pumpkin_plugin_player_method_player_set_exhaustion((self).__handle, exhaustion); -} - -float pumpkin_plugin_player_method_player_get_absorption(pumpkin_plugin_player_borrow_player_t self) { - float ret = __wasm_import_pumpkin_plugin_player_method_player_get_absorption((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_absorption(pumpkin_plugin_player_borrow_player_t self, float absorption) { - __wasm_import_pumpkin_plugin_player_method_player_set_absorption((self).__handle, absorption); -} - -int32_t pumpkin_plugin_player_method_player_get_experience_level(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_experience_level((self).__handle); - return ret; -} - -float pumpkin_plugin_player_method_player_get_experience_progress(pumpkin_plugin_player_borrow_player_t self) { - float ret = __wasm_import_pumpkin_plugin_player_method_player_get_experience_progress((self).__handle); - return ret; -} - -int32_t pumpkin_plugin_player_method_player_get_experience_points(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_get_experience_points((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_experience_level(pumpkin_plugin_player_borrow_player_t self, int32_t level) { - __wasm_import_pumpkin_plugin_player_method_player_set_experience_level((self).__handle, level); -} - -void pumpkin_plugin_player_method_player_set_experience_progress(pumpkin_plugin_player_borrow_player_t self, float progress) { - __wasm_import_pumpkin_plugin_player_method_player_set_experience_progress((self).__handle, progress); -} - -void pumpkin_plugin_player_method_player_set_experience_points(pumpkin_plugin_player_borrow_player_t self, int32_t points) { - __wasm_import_pumpkin_plugin_player_method_player_set_experience_points((self).__handle, points); -} - -void pumpkin_plugin_player_method_player_add_experience_levels(pumpkin_plugin_player_borrow_player_t self, int32_t levels) { - __wasm_import_pumpkin_plugin_player_method_player_add_experience_levels((self).__handle, levels); -} - -void pumpkin_plugin_player_method_player_add_experience_points(pumpkin_plugin_player_borrow_player_t self, int32_t points) { - __wasm_import_pumpkin_plugin_player_method_player_add_experience_points((self).__handle, points); -} - -bool pumpkin_plugin_player_method_player_is_sneaking(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_is_sneaking((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_sneaking(pumpkin_plugin_player_borrow_player_t self, bool sneaking) { - __wasm_import_pumpkin_plugin_player_method_player_set_sneaking((self).__handle, sneaking); -} - -bool pumpkin_plugin_player_method_player_is_sprinting(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_is_sprinting((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_sprinting(pumpkin_plugin_player_borrow_player_t self, bool sprinting) { - __wasm_import_pumpkin_plugin_player_method_player_set_sprinting((self).__handle, sprinting); -} - -bool pumpkin_plugin_player_method_player_is_on_ground(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_is_on_ground((self).__handle); - return ret; -} - -bool pumpkin_plugin_player_method_player_is_flying(pumpkin_plugin_player_borrow_player_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_player_method_player_is_flying((self).__handle); - return ret; -} - -void pumpkin_plugin_player_method_player_set_flying(pumpkin_plugin_player_borrow_player_t self, bool flying) { - __wasm_import_pumpkin_plugin_player_method_player_set_flying((self).__handle, flying); -} - -void pumpkin_plugin_player_method_player_get_abilities(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_player_abilities_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[16]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_player_method_player_get_abilities((self).__handle, ptr); - *ret = (pumpkin_plugin_player_player_abilities_t) { - (bool) (int32_t) *((uint8_t*) (ptr + 0)), - (bool) (int32_t) *((uint8_t*) (ptr + 1)), - (bool) (int32_t) *((uint8_t*) (ptr + 2)), - (bool) (int32_t) *((uint8_t*) (ptr + 3)), - (bool) (int32_t) *((uint8_t*) (ptr + 4)), - (float) *((float*) (ptr + 8)), - (float) *((float*) (ptr + 12)), - }; -} - -void pumpkin_plugin_player_method_player_set_abilities(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_player_abilities_t *abilities) { - __wasm_import_pumpkin_plugin_player_method_player_set_abilities((self).__handle, (*abilities).invulnerable, (*abilities).flying, (*abilities).allow_flying, (*abilities).creative, (*abilities).allow_modify_world, (*abilities).fly_speed, (*abilities).walk_speed); -} - -void pumpkin_plugin_player_method_player_get_ip(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_player_method_player_get_ip((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -pumpkin_plugin_server_difficulty_t pumpkin_plugin_server_method_server_get_difficulty(pumpkin_plugin_server_borrow_server_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_server_method_server_get_difficulty((self).__handle); - return ret; -} - -uint32_t pumpkin_plugin_server_method_server_get_player_count(pumpkin_plugin_server_borrow_server_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_server_method_server_get_player_count((self).__handle); - return (uint32_t) (ret); -} - -double pumpkin_plugin_server_method_server_get_mspt(pumpkin_plugin_server_borrow_server_t self) { - double ret = __wasm_import_pumpkin_plugin_server_method_server_get_mspt((self).__handle); - return ret; -} - -double pumpkin_plugin_server_method_server_get_tps(pumpkin_plugin_server_borrow_server_t self) { - double ret = __wasm_import_pumpkin_plugin_server_method_server_get_tps((self).__handle); - return ret; -} - -void pumpkin_plugin_server_method_server_get_all_players(pumpkin_plugin_server_borrow_server_t self, pumpkin_plugin_server_list_own_player_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_server_method_server_get_all_players((self).__handle, ptr); - *ret = (pumpkin_plugin_server_list_own_player_t) { (pumpkin_plugin_server_own_player_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -bool pumpkin_plugin_server_method_server_get_player_by_name(pumpkin_plugin_server_borrow_server_t self, plugin_string_t *name, pumpkin_plugin_server_own_player_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[8]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_server_method_server_get_player_by_name((self).__handle, (uint8_t *) (*name).ptr, (*name).len, ptr); - pumpkin_plugin_server_option_own_player_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_server_own_player_t) { *((int32_t*) (ptr + 4)) }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -bool pumpkin_plugin_server_method_server_get_player_by_uuid(pumpkin_plugin_server_borrow_server_t self, plugin_string_t *id, pumpkin_plugin_server_own_player_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[8]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_server_method_server_get_player_by_uuid((self).__handle, (uint8_t *) (*id).ptr, (*id).len, ptr); - pumpkin_plugin_server_option_own_player_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_server_own_player_t) { *((int32_t*) (ptr + 4)) }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -void pumpkin_plugin_block_entity_method_block_entity_resource_location(pumpkin_plugin_block_entity_borrow_block_entity_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_block_entity_method_block_entity_resource_location((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -void pumpkin_plugin_block_entity_method_block_entity_get_position(pumpkin_plugin_block_entity_borrow_block_entity_t self, pumpkin_plugin_block_entity_block_position_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[12]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_block_entity_method_block_entity_get_position((self).__handle, ptr); - *ret = (pumpkin_plugin_common_block_position_t) { - (int32_t) *((int32_t*) (ptr + 0)), - (int32_t) *((int32_t*) (ptr + 4)), - (int32_t) *((int32_t*) (ptr + 8)), - }; -} - -uint32_t pumpkin_plugin_block_entity_method_block_entity_get_id(pumpkin_plugin_block_entity_borrow_block_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_block_entity_method_block_entity_get_id((self).__handle); - return (uint32_t) (ret); -} - -bool pumpkin_plugin_block_entity_method_block_entity_is_dirty(pumpkin_plugin_block_entity_borrow_block_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_block_entity_method_block_entity_is_dirty((self).__handle); - return ret; -} - -void pumpkin_plugin_block_entity_method_block_entity_clear_dirty(pumpkin_plugin_block_entity_borrow_block_entity_t self) { - __wasm_import_pumpkin_plugin_block_entity_method_block_entity_clear_dirty((self).__handle); -} - -pumpkin_plugin_block_entity_own_block_entity_t pumpkin_plugin_block_entity_method_command_block_entity_get_block_entity(pumpkin_plugin_block_entity_borrow_command_block_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_get_block_entity((self).__handle); - return (pumpkin_plugin_block_entity_own_block_entity_t) { ret }; -} - -void pumpkin_plugin_block_entity_method_command_block_entity_last_output(pumpkin_plugin_block_entity_borrow_command_block_entity_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_last_output((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -bool pumpkin_plugin_block_entity_method_command_block_entity_track_output(pumpkin_plugin_block_entity_borrow_command_block_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_track_output((self).__handle); - return ret; -} - -uint32_t pumpkin_plugin_block_entity_method_command_block_entity_success_count(pumpkin_plugin_block_entity_borrow_command_block_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_success_count((self).__handle); - return (uint32_t) (ret); -} - -void pumpkin_plugin_block_entity_method_command_block_entity_command(pumpkin_plugin_block_entity_borrow_command_block_entity_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_command((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -bool pumpkin_plugin_block_entity_method_command_block_entity_auto(pumpkin_plugin_block_entity_borrow_command_block_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_auto((self).__handle); - return ret; -} - -bool pumpkin_plugin_block_entity_method_command_block_entity_condition_met(pumpkin_plugin_block_entity_borrow_command_block_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_condition_met((self).__handle); - return ret; -} - -bool pumpkin_plugin_block_entity_method_command_block_entity_powered(pumpkin_plugin_block_entity_borrow_command_block_entity_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_block_entity_method_command_block_entity_powered((self).__handle); - return ret; -} - -void pumpkin_plugin_command_method_consumed_args_get_value(pumpkin_plugin_command_borrow_consumed_args_t self, plugin_string_t *key, pumpkin_plugin_command_arg_t *ret) { - __attribute__((__aligned__(8))) - uint8_t ret_area[56]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_command_method_consumed_args_get_value((self).__handle, (uint8_t *) (*key).ptr, (*key).len, ptr); - pumpkin_plugin_command_arg_t variant5; - variant5.tag = (int32_t) *((uint8_t*) (ptr + 0)); - switch ((int32_t) variant5.tag) { - case 0: { - variant5.val.entities = (pumpkin_plugin_command_list_own_entity_t) { (pumpkin_plugin_command_own_entity_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 1: { - variant5.val.entity = (pumpkin_plugin_command_own_entity_t) { *((int32_t*) (ptr + 8)) }; - break; - } - case 2: { - variant5.val.players = (pumpkin_plugin_command_list_own_player_t) { (pumpkin_plugin_command_own_player_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 3: { - variant5.val.block_pos = (pumpkin_plugin_common_block_position_t) { - (int32_t) *((int32_t*) (ptr + 8)), - (int32_t) *((int32_t*) (ptr + 12)), - (int32_t) *((int32_t*) (ptr + 16)), - }; - break; - } - case 4: { - variant5.val.pos3d = (pumpkin_plugin_common_position_t) { - (double) *((double*) (ptr + 8)), - (double) *((double*) (ptr + 16)), - (double) *((double*) (ptr + 24)), - }; - break; - } - case 5: { - variant5.val.pos2d = (plugin_tuple2_f64_f64_t) { - (double) *((double*) (ptr + 8)), - (double) *((double*) (ptr + 16)), - }; - break; - } - case 6: { - variant5.val.rotation = (plugin_tuple4_f32_bool_f32_bool_t) { - (float) *((float*) (ptr + 8)), - (bool) (int32_t) *((uint8_t*) (ptr + 12)), - (float) *((float*) (ptr + 16)), - (bool) (int32_t) *((uint8_t*) (ptr + 20)), - }; - break; - } - case 7: { - variant5.val.game_mode = (int32_t) *((uint8_t*) (ptr + 8)); - break; - } - case 8: { - variant5.val.difficulty = (int32_t) *((uint8_t*) (ptr + 8)); - break; - } - case 9: { - variant5.val.item = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 10: { - variant5.val.item_predicate = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 11: { - variant5.val.resource_location = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 12: { - variant5.val.block = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 13: { - variant5.val.block_predicate = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 14: { - variant5.val.bossbar_color = (int32_t) *((uint8_t*) (ptr + 8)); - break; - } - case 15: { - variant5.val.bossbar_style = (int32_t) *((uint8_t*) (ptr + 8)); - break; - } - case 16: { - variant5.val.particle = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 17: { - variant5.val.msg = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 18: { - variant5.val.text_component = (pumpkin_plugin_command_own_text_component_t) { *((int32_t*) (ptr + 8)) }; - break; - } - case 19: { - variant5.val.time = *((int32_t*) (ptr + 8)); - break; - } - case 20: { - pumpkin_plugin_command_result_number_not_in_bounds_t result; - switch ((int32_t) *((uint8_t*) (ptr + 8))) { - case 0: { - result.is_err = false; - pumpkin_plugin_command_number_t variant; - variant.tag = (int32_t) *((uint8_t*) (ptr + 16)); - switch ((int32_t) variant.tag) { - case 0: { - variant.val.float64 = *((double*) (ptr + 24)); - break; - } - case 1: { - variant.val.float32 = *((float*) (ptr + 24)); - break; - } - case 2: { - variant.val.int32 = *((int32_t*) (ptr + 24)); - break; - } - case 3: { - variant.val.int64 = *((int64_t*) (ptr + 24)); - break; - } - } - - result.val.ok = variant; - break; - } - case 1: { - result.is_err = true; - pumpkin_plugin_command_not_in_bounds_t variant4; - variant4.tag = (int32_t) *((uint8_t*) (ptr + 16)); - switch ((int32_t) variant4.tag) { - case 0: { - pumpkin_plugin_command_number_t variant0; - variant0.tag = (int32_t) *((uint8_t*) (ptr + 24)); - switch ((int32_t) variant0.tag) { - case 0: { - variant0.val.float64 = *((double*) (ptr + 32)); - break; - } - case 1: { - variant0.val.float32 = *((float*) (ptr + 32)); - break; - } - case 2: { - variant0.val.int32 = *((int32_t*) (ptr + 32)); - break; - } - case 3: { - variant0.val.int64 = *((int64_t*) (ptr + 32)); - break; - } - } - pumpkin_plugin_command_number_t variant1; - variant1.tag = (int32_t) *((uint8_t*) (ptr + 40)); - switch ((int32_t) variant1.tag) { - case 0: { - variant1.val.float64 = *((double*) (ptr + 48)); - break; - } - case 1: { - variant1.val.float32 = *((float*) (ptr + 48)); - break; - } - case 2: { - variant1.val.int32 = *((int32_t*) (ptr + 48)); - break; - } - case 3: { - variant1.val.int64 = *((int64_t*) (ptr + 48)); - break; - } - } - variant4.val.lower_bound = (pumpkin_plugin_command_tuple2_number_number_t) { - (pumpkin_plugin_command_number_t) variant0, - (pumpkin_plugin_command_number_t) variant1, - }; - break; - } - case 1: { - pumpkin_plugin_command_number_t variant2; - variant2.tag = (int32_t) *((uint8_t*) (ptr + 24)); - switch ((int32_t) variant2.tag) { - case 0: { - variant2.val.float64 = *((double*) (ptr + 32)); - break; - } - case 1: { - variant2.val.float32 = *((float*) (ptr + 32)); - break; - } - case 2: { - variant2.val.int32 = *((int32_t*) (ptr + 32)); - break; - } - case 3: { - variant2.val.int64 = *((int64_t*) (ptr + 32)); - break; - } - } - pumpkin_plugin_command_number_t variant3; - variant3.tag = (int32_t) *((uint8_t*) (ptr + 40)); - switch ((int32_t) variant3.tag) { - case 0: { - variant3.val.float64 = *((double*) (ptr + 48)); - break; - } - case 1: { - variant3.val.float32 = *((float*) (ptr + 48)); - break; - } - case 2: { - variant3.val.int32 = *((int32_t*) (ptr + 48)); - break; - } - case 3: { - variant3.val.int64 = *((int64_t*) (ptr + 48)); - break; - } - } - variant4.val.upper_bound = (pumpkin_plugin_command_tuple2_number_number_t) { - (pumpkin_plugin_command_number_t) variant2, - (pumpkin_plugin_command_number_t) variant3, - }; - break; - } - } - - result.val.err = variant4; - break; - } - } - variant5.val.num = result; - break; - } - case 21: { - variant5.val.bool_ = (int32_t) *((uint8_t*) (ptr + 8)); - break; - } - case 22: { - variant5.val.simple = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 23: { - variant5.val.sound_category = (int32_t) *((uint8_t*) (ptr + 8)); - break; - } - case 24: { - variant5.val.damage_type = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 25: { - variant5.val.effect = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 26: { - variant5.val.enchantment = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 8))), (*((size_t*) (ptr + (8+1*sizeof(void*))))) }; - break; - } - case 27: { - variant5.val.entity_anchor = (int32_t) *((uint8_t*) (ptr + 8)); - break; - } - } - *ret = variant5; -} - -void pumpkin_plugin_command_method_command_sender_get_command_sender_type(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_command_sender_type_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[12]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_command_method_command_sender_get_command_sender_type((self).__handle, ptr); - pumpkin_plugin_command_command_sender_type_t variant; - variant.tag = (int32_t) *((uint8_t*) (ptr + 0)); - switch ((int32_t) variant.tag) { - case 0: { - break; - } - case 1: { - break; - } - case 2: { - variant.val.player = (pumpkin_plugin_command_own_player_t) { *((int32_t*) (ptr + 4)) }; - break; - } - case 3: { - variant.val.command_block = (pumpkin_plugin_command_tuple2_own_command_block_entity_own_world_t) { - (pumpkin_plugin_command_own_command_block_entity_t) (pumpkin_plugin_command_own_command_block_entity_t) { *((int32_t*) (ptr + 4)) }, - (pumpkin_plugin_command_own_world_t) (pumpkin_plugin_command_own_world_t) { *((int32_t*) (ptr + 8)) }, - }; - break; - } - case 4: { - break; - } - } - *ret = variant; -} - -void pumpkin_plugin_command_method_command_sender_send_message(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_own_text_component_t text) { - __wasm_import_pumpkin_plugin_command_method_command_sender_send_message((self).__handle, (text).__handle); -} - -void pumpkin_plugin_command_method_command_sender_set_success_count(pumpkin_plugin_command_borrow_command_sender_t self, int32_t count) { - __wasm_import_pumpkin_plugin_command_method_command_sender_set_success_count((self).__handle, count); -} - -bool pumpkin_plugin_command_method_command_sender_is_player(pumpkin_plugin_command_borrow_command_sender_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_is_player((self).__handle); - return ret; -} - -bool pumpkin_plugin_command_method_command_sender_is_console(pumpkin_plugin_command_borrow_command_sender_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_is_console((self).__handle); - return ret; -} - -bool pumpkin_plugin_command_method_command_sender_as_player(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_own_player_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[8]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_command_method_command_sender_as_player((self).__handle, ptr); - pumpkin_plugin_command_option_own_player_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_command_own_player_t) { *((int32_t*) (ptr + 4)) }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -pumpkin_plugin_command_permission_level_t pumpkin_plugin_command_method_command_sender_permission_level(pumpkin_plugin_command_borrow_command_sender_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_permission_level((self).__handle); - return ret; -} - -bool pumpkin_plugin_command_method_command_sender_has_permission_level(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_permission_level_t level) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_has_permission_level((self).__handle, (int32_t) level); - return ret; -} - -bool pumpkin_plugin_command_method_command_sender_has_permission(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_borrow_server_t server, plugin_string_t *node) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_has_permission((self).__handle, (server).__handle, (uint8_t *) (*node).ptr, (*node).len); - return ret; -} - -bool pumpkin_plugin_command_method_command_sender_position(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_position_t *ret) { - __attribute__((__aligned__(8))) - uint8_t ret_area[32]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_command_method_command_sender_position((self).__handle, ptr); - plugin_option_position_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_common_position_t) { - (double) *((double*) (ptr + 8)), - (double) *((double*) (ptr + 16)), - (double) *((double*) (ptr + 24)), - }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -bool pumpkin_plugin_command_method_command_sender_world(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_own_world_t *ret) { - __attribute__((__aligned__(4))) - uint8_t ret_area[8]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_command_method_command_sender_world((self).__handle, ptr); - pumpkin_plugin_command_option_own_world_t option; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (pumpkin_plugin_command_own_world_t) { *((int32_t*) (ptr + 4)) }; - break; - } - } - *ret = option.val; - return option.is_some; -} - -pumpkin_plugin_command_locale_t pumpkin_plugin_command_method_command_sender_get_locale(pumpkin_plugin_command_borrow_command_sender_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_get_locale((self).__handle); - return ret; -} - -bool pumpkin_plugin_command_method_command_sender_should_receive_feedback(pumpkin_plugin_command_borrow_command_sender_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_should_receive_feedback((self).__handle); - return ret; -} - -bool pumpkin_plugin_command_method_command_sender_should_broadcast_console_to_ops(pumpkin_plugin_command_borrow_command_sender_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_should_broadcast_console_to_ops((self).__handle); - return ret; -} - -bool pumpkin_plugin_command_method_command_sender_should_track_output(pumpkin_plugin_command_borrow_command_sender_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_command_method_command_sender_should_track_output((self).__handle); - return ret; -} - -pumpkin_plugin_command_own_command_node_t pumpkin_plugin_command_static_command_node_literal(plugin_string_t *name) { - int32_t ret = __wasm_import_pumpkin_plugin_command_static_command_node_literal((uint8_t *) (*name).ptr, (*name).len); - return (pumpkin_plugin_command_own_command_node_t) { ret }; -} - -pumpkin_plugin_command_own_command_node_t pumpkin_plugin_command_static_command_node_argument(plugin_string_t *name, pumpkin_plugin_command_argument_type_t *arg_type) { - int32_t variant; - uint8_t * variant55; - int64_t variant56; - int32_t variant57; - int64_t variant58; - switch ((int32_t) (*arg_type).tag) { - case 0: { - variant = 0; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 1: { - const plugin_tuple2_option_f32_option_f32_t *payload0 = &(*arg_type).val.float_; - int32_t option; - float option3; - if (((*payload0).f0).is_some) { - const float *payload2 = &((*payload0).f0).val; - option = 1; - option3 = *payload2; - } else { - option = 0; - option3 = 0; - } - int32_t option6; - float option7; - if (((*payload0).f1).is_some) { - const float *payload5 = &((*payload0).f1).val; - option6 = 1; - option7 = *payload5; - } else { - option6 = 0; - option7 = 0; - } - variant = 1; - variant55 = (uint8_t *) option; - variant56 = ((union float_int32){ option3 }).b; - variant57 = option6; - variant58 = ((union float_int32){ option7 }).b; - break; - } - case 2: { - const plugin_tuple2_option_f64_option_f64_t *payload8 = &(*arg_type).val.double_; - int32_t option11; - double option12; - if (((*payload8).f0).is_some) { - const double *payload10 = &((*payload8).f0).val; - option11 = 1; - option12 = *payload10; - } else { - option11 = 0; - option12 = 0; - } - int32_t option15; - double option16; - if (((*payload8).f1).is_some) { - const double *payload14 = &((*payload8).f1).val; - option15 = 1; - option16 = *payload14; - } else { - option15 = 0; - option16 = 0; - } - variant = 2; - variant55 = (uint8_t *) option11; - variant56 = ((union double_int64){ option12 }).b; - variant57 = option15; - variant58 = ((union double_int64){ option16 }).b; - break; - } - case 3: { - const plugin_tuple2_option_s32_option_s32_t *payload17 = &(*arg_type).val.integer; - int32_t option20; - int32_t option21; - if (((*payload17).f0).is_some) { - const int32_t *payload19 = &((*payload17).f0).val; - option20 = 1; - option21 = *payload19; - } else { - option20 = 0; - option21 = 0; - } - int32_t option24; - int32_t option25; - if (((*payload17).f1).is_some) { - const int32_t *payload23 = &((*payload17).f1).val; - option24 = 1; - option25 = *payload23; - } else { - option24 = 0; - option25 = 0; - } - variant = 3; - variant55 = (uint8_t *) option20; - variant56 = (int64_t) option21; - variant57 = option24; - variant58 = (int64_t) option25; - break; - } - case 4: { - const plugin_tuple2_option_s64_option_s64_t *payload26 = &(*arg_type).val.long_; - int32_t option29; - int64_t option30; - if (((*payload26).f0).is_some) { - const int64_t *payload28 = &((*payload26).f0).val; - option29 = 1; - option30 = *payload28; - } else { - option29 = 0; - option30 = 0; - } - int32_t option33; - int64_t option34; - if (((*payload26).f1).is_some) { - const int64_t *payload32 = &((*payload26).f1).val; - option33 = 1; - option34 = *payload32; - } else { - option33 = 0; - option34 = 0; - } - variant = 4; - variant55 = (uint8_t *) option29; - variant56 = option30; - variant57 = option33; - variant58 = option34; - break; - } - case 5: { - const pumpkin_plugin_command_string_type_t *payload35 = &(*arg_type).val.string; - variant = 5; - variant55 = (uint8_t *) (int32_t) *payload35; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 6: { - variant = 6; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 7: { - variant = 7; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 8: { - variant = 8; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 9: { - variant = 9; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 10: { - variant = 10; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 11: { - variant = 11; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 12: { - variant = 12; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 13: { - variant = 13; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 14: { - variant = 14; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 15: { - variant = 15; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 16: { - variant = 16; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 17: { - variant = 17; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 18: { - variant = 18; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 19: { - variant = 19; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 20: { - variant = 20; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 21: { - variant = 21; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 22: { - variant = 22; - variant55 = 0; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 23: { - const int32_t *payload53 = &(*arg_type).val.time; - variant = 23; - variant55 = (uint8_t *) *payload53; - variant56 = 0; - variant57 = 0; - variant58 = 0; - break; - } - case 24: { - const plugin_string_t *payload54 = &(*arg_type).val.resource; - variant = 24; - variant55 = (uint8_t *) (*payload54).ptr; - variant56 = (int64_t) (*payload54).len; - variant57 = 0; - variant58 = 0; - break; - } - } - int32_t ret = __wasm_import_pumpkin_plugin_command_static_command_node_argument((uint8_t *) (*name).ptr, (*name).len, variant, variant55, variant56, variant57, variant58); - return (pumpkin_plugin_command_own_command_node_t) { ret }; -} - -void pumpkin_plugin_command_method_command_node_then(pumpkin_plugin_command_borrow_command_node_t self, pumpkin_plugin_command_own_command_node_t node) { - __wasm_import_pumpkin_plugin_command_method_command_node_then((self).__handle, (node).__handle); -} - -void pumpkin_plugin_command_method_command_node_execute_with_handler_id(pumpkin_plugin_command_borrow_command_node_t self, uint32_t handler_id) { - __wasm_import_pumpkin_plugin_command_method_command_node_execute_with_handler_id((self).__handle, (int32_t) (handler_id)); -} - -void pumpkin_plugin_command_method_command_node_require_with_handler_id(pumpkin_plugin_command_borrow_command_node_t self, uint32_t handler_id) { - __wasm_import_pumpkin_plugin_command_method_command_node_require_with_handler_id((self).__handle, (int32_t) (handler_id)); -} - -pumpkin_plugin_command_own_command_t pumpkin_plugin_command_constructor_command(plugin_list_string_t *names, plugin_string_t *description) { - int32_t ret = __wasm_import_pumpkin_plugin_command_constructor_command((uint8_t *) (*names).ptr, (*names).len, (uint8_t *) (*description).ptr, (*description).len); - return (pumpkin_plugin_command_own_command_t) { ret }; -} - -void pumpkin_plugin_command_method_command_then(pumpkin_plugin_command_borrow_command_t self, pumpkin_plugin_command_own_command_node_t node) { - __wasm_import_pumpkin_plugin_command_method_command_then((self).__handle, (node).__handle); -} - -void pumpkin_plugin_command_method_command_execute_with_handler_id(pumpkin_plugin_command_borrow_command_t self, uint32_t handler_id) { - __wasm_import_pumpkin_plugin_command_method_command_execute_with_handler_id((self).__handle, (int32_t) (handler_id)); -} - -void pumpkin_plugin_context_method_context_register_event(pumpkin_plugin_context_borrow_context_t self, uint32_t handler_id, pumpkin_plugin_context_event_type_t event_type, pumpkin_plugin_context_event_priority_t event_priority, bool blocking) { - __wasm_import_pumpkin_plugin_context_method_context_register_event((self).__handle, (int32_t) (handler_id), (int32_t) event_type, (int32_t) event_priority, blocking); -} - -void pumpkin_plugin_context_method_context_register_command(pumpkin_plugin_context_borrow_context_t self, pumpkin_plugin_context_own_command_t command, plugin_string_t *permission) { - __wasm_import_pumpkin_plugin_context_method_context_register_command((self).__handle, (command).__handle, (uint8_t *) (*permission).ptr, (*permission).len); -} - -bool pumpkin_plugin_context_method_context_register_permission(pumpkin_plugin_context_borrow_context_t self, pumpkin_plugin_context_permission_t *permission, plugin_string_t *err) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(3*sizeof(void*))]; - int32_t variant; - int32_t variant2; - switch ((int32_t) ((*permission).default_).tag) { - case 0: { - variant = 0; - variant2 = 0; - break; - } - case 1: { - variant = 1; - variant2 = 0; - break; - } - case 2: { - const pumpkin_plugin_permission_permission_level_t *payload1 = &((*permission).default_).val.op; - variant = 2; - variant2 = (int32_t) *payload1; - break; - } - } - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_context_method_context_register_permission((self).__handle, (uint8_t *) ((*permission).node).ptr, ((*permission).node).len, (uint8_t *) ((*permission).description).ptr, ((*permission).description).len, variant, variant2, (uint8_t *) ((*permission).children).ptr, ((*permission).children).len, ptr); - pumpkin_plugin_context_result_void_string_t result; - switch ((int32_t) *((uint8_t*) (ptr + 0))) { - case 0: { - result.is_err = false; - break; - } - case 1: { - result.is_err = true; - result.val.err = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + sizeof(void*)))), (*((size_t*) (ptr + (2*sizeof(void*))))) }; - break; - } - } - if (!result.is_err) { - return 1; - } else { - *err = result.val.err; - return 0; - } -} - -void pumpkin_plugin_context_method_context_get_data_folder(pumpkin_plugin_context_borrow_context_t self, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_context_method_context_get_data_folder((self).__handle, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -pumpkin_plugin_context_own_server_t pumpkin_plugin_context_method_context_get_server(pumpkin_plugin_context_borrow_context_t self) { - int32_t ret = __wasm_import_pumpkin_plugin_context_method_context_get_server((self).__handle); - return (pumpkin_plugin_context_own_server_t) { ret }; -} - -void pumpkin_plugin_i18n_translate(plugin_string_t *key, pumpkin_plugin_i18n_locale_t locale, plugin_string_t *ret) { - __attribute__((__aligned__(sizeof(void*)))) - uint8_t ret_area[(2*sizeof(void*))]; - uint8_t *ptr = (uint8_t *) &ret_area; - __wasm_import_pumpkin_plugin_i18n_translate((uint8_t *) (*key).ptr, (*key).len, (int32_t) locale, ptr); - *ret = (plugin_string_t) { (uint8_t*)(*((uint8_t **) (ptr + 0))), (*((size_t*) (ptr + sizeof(void*)))) }; -} - -void pumpkin_plugin_i18n_load_translations(plugin_string_t *namespace_, plugin_string_t *json, pumpkin_plugin_i18n_locale_t locale) { - __wasm_import_pumpkin_plugin_i18n_load_translations((uint8_t *) (*namespace_).ptr, (*namespace_).len, (uint8_t *) (*json).ptr, (*json).len, (int32_t) locale); -} - -uint32_t pumpkin_plugin_scheduler_schedule_delayed_task(uint32_t handler_id, uint64_t delay_ticks) { - int32_t ret = __wasm_import_pumpkin_plugin_scheduler_schedule_delayed_task((int32_t) (handler_id), (int64_t) (delay_ticks)); - return (uint32_t) (ret); -} - -uint32_t pumpkin_plugin_scheduler_schedule_repeating_task(uint32_t handler_id, uint64_t delay_ticks, uint64_t period_ticks) { - int32_t ret = __wasm_import_pumpkin_plugin_scheduler_schedule_repeating_task((int32_t) (handler_id), (int64_t) (delay_ticks), (int64_t) (period_ticks)); - return (uint32_t) (ret); -} - -void pumpkin_plugin_scheduler_cancel_task(uint32_t task_id) { - __wasm_import_pumpkin_plugin_scheduler_cancel_task((int32_t) (task_id)); -} - -__attribute__((__export_name__("init-plugin"))) -void __wasm_export_exports_plugin_init_plugin(void) { - exports_plugin_init_plugin(); -} - -__attribute__((__export_name__("on-load"))) -uint8_t * __wasm_export_exports_plugin_on_load(int32_t arg) { - pumpkin_plugin_context_result_void_string_t ret; - plugin_string_t err; - ret.is_err = !exports_plugin_on_load((plugin_own_context_t) { arg }, &err); - if (ret.is_err) { - ret.val.err = err; - } - uint8_t *ptr = (uint8_t *) &RET_AREA; - if ((ret).is_err) { - const plugin_string_t *payload0 = &(ret).val.err;*((int8_t*)(ptr + 0)) = 1; - *((size_t*)(ptr + (2*sizeof(void*)))) = (*payload0).len; - *((uint8_t **)(ptr + sizeof(void*))) = (uint8_t *) (*payload0).ptr; - } else { - *((int8_t*)(ptr + 0)) = 0; - } - return ptr; -} - -__attribute__((__export_name__("on-unload"))) -uint8_t * __wasm_export_exports_plugin_on_unload(int32_t arg) { - pumpkin_plugin_context_result_void_string_t ret; - plugin_string_t err; - ret.is_err = !exports_plugin_on_unload((plugin_own_context_t) { arg }, &err); - if (ret.is_err) { - ret.val.err = err; - } - uint8_t *ptr = (uint8_t *) &RET_AREA; - if ((ret).is_err) { - const plugin_string_t *payload0 = &(ret).val.err;*((int8_t*)(ptr + 0)) = 1; - *((size_t*)(ptr + (2*sizeof(void*)))) = (*payload0).len; - *((uint8_t **)(ptr + sizeof(void*))) = (uint8_t *) (*payload0).ptr; - } else { - *((int8_t*)(ptr + 0)) = 0; - } - return ptr; -} - -__attribute__((__export_name__("handle-event"))) -uint8_t * __wasm_export_exports_plugin_handle_event(int32_t arg, int32_t arg0, int32_t arg1, uint8_t * arg2, int64_t arg3, int64_t arg4, int64_t arg5, int64_t arg6, int64_t arg7, int64_t arg8, size_t arg9, int32_t arg10, uint8_t * arg11, size_t arg12, int32_t arg13) { - pumpkin_plugin_event_event_t variant; - variant.tag = arg1; - switch ((int32_t) variant.tag) { - case 0: { - variant.val.player_join_event = (pumpkin_plugin_event_player_join_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_own_text_component_t) (pumpkin_plugin_event_own_text_component_t) { (int32_t) arg3 }, - (bool) (int32_t) arg4, - }; - break; - } - case 1: { - variant.val.player_leave_event = (pumpkin_plugin_event_player_leave_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_own_text_component_t) (pumpkin_plugin_event_own_text_component_t) { (int32_t) arg3 }, - (bool) (int32_t) arg4, - }; - break; - } - case 2: { - variant.val.player_login_event = (pumpkin_plugin_event_player_login_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_own_text_component_t) (pumpkin_plugin_event_own_text_component_t) { (int32_t) arg3 }, - (bool) (int32_t) arg4, - }; - break; - } - case 3: { - variant.val.player_chat_event = (pumpkin_plugin_event_player_chat_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg3), ((int32_t) arg4) }, - (pumpkin_plugin_event_list_own_player_t) (pumpkin_plugin_event_list_own_player_t) { (pumpkin_plugin_event_own_player_t*)((uint8_t *) arg5), ((int32_t) arg6) }, - (bool) (int32_t) arg7, - }; - break; - } - case 4: { - variant.val.player_command_send_event = (pumpkin_plugin_event_player_command_send_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg3), ((int32_t) arg4) }, - (bool) (int32_t) arg5, - }; - break; - } - case 5: { - variant.val.player_permission_check_event = (pumpkin_plugin_event_player_permission_check_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg3), ((int32_t) arg4) }, - (bool) (int32_t) arg5, - }; - break; - } - case 6: { - variant.val.player_move_event = (pumpkin_plugin_event_player_move_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_position_t) (pumpkin_plugin_common_position_t) { - (double) ((union int64_double){ (int64_t) arg3 }).b, - (double) ((union int64_double){ (int64_t) arg4 }).b, - (double) ((union int64_double){ (int64_t) arg5 }).b, - }, - (pumpkin_plugin_event_position_t) (pumpkin_plugin_common_position_t) { - (double) ((union int64_double){ (int64_t) arg6 }).b, - (double) ((union int64_double){ (int64_t) arg7 }).b, - (double) ((union int64_double){ (int64_t) arg8 }).b, - }, - (bool) arg9, - }; - break; - } - case 7: { - variant.val.player_teleport_event = (pumpkin_plugin_event_player_teleport_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_position_t) (pumpkin_plugin_common_position_t) { - (double) ((union int64_double){ (int64_t) arg3 }).b, - (double) ((union int64_double){ (int64_t) arg4 }).b, - (double) ((union int64_double){ (int64_t) arg5 }).b, - }, - (pumpkin_plugin_event_position_t) (pumpkin_plugin_common_position_t) { - (double) ((union int64_double){ (int64_t) arg6 }).b, - (double) ((union int64_double){ (int64_t) arg7 }).b, - (double) ((union int64_double){ (int64_t) arg8 }).b, - }, - (bool) arg9, - }; - break; - } - case 8: { - variant.val.player_change_world_event = (pumpkin_plugin_event_player_change_world_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_own_world_t) (pumpkin_plugin_event_own_world_t) { (int32_t) arg3 }, - (pumpkin_plugin_event_own_world_t) (pumpkin_plugin_event_own_world_t) { (int32_t) arg4 }, - (pumpkin_plugin_event_position_t) (pumpkin_plugin_common_position_t) { - (double) ((union int64_double){ (int64_t) arg5 }).b, - (double) ((union int64_double){ (int64_t) arg6 }).b, - (double) ((union int64_double){ (int64_t) arg7 }).b, - }, - (float) ((union int32_float){ (int32_t) arg8 }).b, - (float) ((union int32_float){ (int32_t) arg9 }).b, - (bool) arg10, - }; - break; - } - case 9: { - variant.val.player_exp_change_event = (pumpkin_plugin_event_player_exp_change_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (int32_t) (int32_t) arg3, - }; - break; - } - case 10: { - variant.val.player_item_held_event = (pumpkin_plugin_event_player_item_held_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (uint8_t) (uint8_t) ((int32_t) arg3), - (uint8_t) (uint8_t) ((int32_t) arg4), - (bool) (int32_t) arg5, - }; - break; - } - case 11: { - variant.val.player_changed_main_hand_event = (pumpkin_plugin_event_player_changed_main_hand_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_hand_t) (int32_t) arg3, - }; - break; - } - case 12: { - variant.val.player_gamemode_change_event = (pumpkin_plugin_event_player_gamemode_change_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_game_mode_t) (int32_t) arg3, - (pumpkin_plugin_event_game_mode_t) (int32_t) arg4, - (bool) (int32_t) arg5, - }; - break; - } - case 13: { - variant.val.player_custom_payload_event = (pumpkin_plugin_event_player_custom_payload_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg3), ((int32_t) arg4) }, - (plugin_list_u8_t) (plugin_list_u8_t) { (uint8_t*)((uint8_t *) arg5), ((int32_t) arg6) }, - }; - break; - } - case 14: { - plugin_option_string_t option; - switch ((int32_t) arg3) { - case 0: { - option.is_some = false; - break; - } - case 1: { - option.is_some = true; - option.val = (plugin_string_t) { (uint8_t*)((uint8_t *) arg4), ((int32_t) arg5) }; - break; - } - } - variant.val.player_fish_event = (pumpkin_plugin_event_player_fish_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (plugin_option_string_t) option, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg6), ((int32_t) arg7) }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg8), (arg9) }, - (pumpkin_plugin_event_player_fish_state_t) arg10, - (pumpkin_plugin_event_hand_t) (uintptr_t) arg11, - (int32_t) arg12, - (bool) arg13, - }; - break; - } - case 15: { - variant.val.player_egg_throw_event = (pumpkin_plugin_event_player_egg_throw_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg3), ((int32_t) arg4) }, - (bool) (int32_t) arg5, - (uint8_t) (uint8_t) ((int32_t) arg6), - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg7), ((int32_t) arg8) }, - (bool) arg9, - }; - break; - } - case 16: { - variant.val.player_interact_unknown_entity_event = (pumpkin_plugin_event_player_interact_unknown_entity_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (int32_t) (int32_t) arg3, - (pumpkin_plugin_event_entity_interaction_action_t) (int32_t) arg4, - (bool) (int32_t) arg5, - }; - break; - } - case 17: { - plugin_option_block_position_t option14; - switch ((int32_t) arg4) { - case 0: { - option14.is_some = false; - break; - } - case 1: { - option14.is_some = true; - option14.val = (pumpkin_plugin_common_block_position_t) { - (int32_t) (int32_t) arg5, - (int32_t) (int32_t) arg6, - (int32_t) (int32_t) arg7, - }; - break; - } - } - variant.val.player_interact_event = (pumpkin_plugin_event_player_interact_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_interact_action_t) (int32_t) arg3, - (plugin_option_block_position_t) option14, - (pumpkin_plugin_event_item_stack_t) (pumpkin_plugin_common_item_stack_t) { - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg8), (arg9) }, - (uint8_t) (uint8_t) (arg10), - }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)(arg11), (arg12) }, - (bool) arg13, - }; - break; - } - case 18: { - variant.val.player_toggle_sneak_event = (pumpkin_plugin_event_player_toggle_sneak_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (bool) (int32_t) arg3, - (bool) (int32_t) arg4, - }; - break; - } - case 19: { - variant.val.player_toggle_flight_event = (pumpkin_plugin_event_player_toggle_flight_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (bool) (int32_t) arg3, - (bool) (int32_t) arg4, - }; - break; - } - case 20: { - variant.val.player_toggle_sprint_event = (pumpkin_plugin_event_player_toggle_sprint_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (bool) (int32_t) arg3, - (bool) (int32_t) arg4, - }; - break; - } - case 21: { - variant.val.block_redstone_event = (pumpkin_plugin_event_block_redstone_event_data_t) { - (pumpkin_plugin_event_own_world_t) (pumpkin_plugin_event_own_world_t) { (uintptr_t) arg2 }, - (uint16_t) (uint16_t) ((int32_t) arg3), - (pumpkin_plugin_event_block_position_t) (pumpkin_plugin_common_block_position_t) { - (int32_t) (int32_t) arg4, - (int32_t) (int32_t) arg5, - (int32_t) (int32_t) arg6, - }, - (int32_t) (int32_t) arg7, - (int32_t) (int32_t) arg8, - (bool) arg9, - }; - break; - } - case 22: { - pumpkin_plugin_event_option_own_player_t option15; - switch ((uintptr_t) arg2) { - case 0: { - option15.is_some = false; - break; - } - case 1: { - option15.is_some = true; - option15.val = (pumpkin_plugin_event_own_player_t) { (int32_t) arg3 }; - break; - } - } - variant.val.block_break_event = (pumpkin_plugin_event_block_break_event_data_t) { - (pumpkin_plugin_event_option_own_player_t) option15, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg4), ((int32_t) arg5) }, - (pumpkin_plugin_event_block_position_t) (pumpkin_plugin_common_block_position_t) { - (int32_t) (int32_t) arg6, - (int32_t) (int32_t) arg7, - (int32_t) (int32_t) arg8, - }, - (uint32_t) (uint32_t) (arg9), - (bool) arg10, - (bool) (uintptr_t) arg11, - }; - break; - } - case 23: { - variant.val.block_burn_event = (pumpkin_plugin_event_block_burn_event_data_t) { - (plugin_string_t) (plugin_string_t) { (uint8_t*)(arg2), ((int32_t) arg3) }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg4), ((int32_t) arg5) }, - (bool) (int32_t) arg6, - }; - break; - } - case 24: { - variant.val.block_can_build_event = (pumpkin_plugin_event_block_can_build_event_data_t) { - (plugin_string_t) (plugin_string_t) { (uint8_t*)(arg2), ((int32_t) arg3) }, - (bool) (int32_t) arg4, - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (int32_t) arg5 }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg6), ((int32_t) arg7) }, - (bool) (int32_t) arg8, - }; - break; - } - case 25: { - variant.val.block_grow_event = (pumpkin_plugin_event_block_grow_event_data_t) { - (pumpkin_plugin_event_own_world_t) (pumpkin_plugin_event_own_world_t) { (uintptr_t) arg2 }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg3), ((int32_t) arg4) }, - (uint16_t) (uint16_t) ((int32_t) arg5), - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg6), ((int32_t) arg7) }, - (uint16_t) (uint16_t) ((int32_t) arg8), - (pumpkin_plugin_event_block_position_t) (pumpkin_plugin_common_block_position_t) { - (int32_t) arg9, - (int32_t) arg10, - (int32_t) (uintptr_t) arg11, - }, - (bool) arg12, - }; - break; - } - case 26: { - variant.val.block_place_event = (pumpkin_plugin_event_block_place_event_data_t) { - (pumpkin_plugin_event_own_player_t) (pumpkin_plugin_event_own_player_t) { (uintptr_t) arg2 }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg3), ((int32_t) arg4) }, - (plugin_string_t) (plugin_string_t) { (uint8_t*)((uint8_t *) arg5), ((int32_t) arg6) }, - (pumpkin_plugin_event_block_position_t) (pumpkin_plugin_common_block_position_t) { - (int32_t) (int32_t) arg7, - (int32_t) (int32_t) arg8, - (int32_t) arg9, - }, - (bool) arg10, - (bool) (uintptr_t) arg11, - }; - break; - } - case 27: { - variant.val.server_command_event = (pumpkin_plugin_event_server_command_event_data_t) { - (plugin_string_t) (plugin_string_t) { (uint8_t*)(arg2), ((int32_t) arg3) }, - (bool) (int32_t) arg4, - }; - break; - } - case 28: { - variant.val.spawn_change_event = (pumpkin_plugin_event_spawn_change_event_data_t) { - (pumpkin_plugin_event_own_world_t) (pumpkin_plugin_event_own_world_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_block_position_t) (pumpkin_plugin_common_block_position_t) { - (int32_t) (int32_t) arg3, - (int32_t) (int32_t) arg4, - (int32_t) (int32_t) arg5, - }, - (float) ((union int32_float){ (int32_t) arg6 }).b, - (float) ((union int32_float){ (int32_t) arg7 }).b, - (pumpkin_plugin_event_block_position_t) (pumpkin_plugin_common_block_position_t) { - (int32_t) (int32_t) arg8, - (int32_t) arg9, - (int32_t) arg10, - }, - (float) ((union int32_float){ (int32_t) (uintptr_t) arg11 }).b, - (float) ((union int32_float){ (int32_t) arg12 }).b, - }; - break; - } - case 29: { - variant.val.server_broadcast_event = (pumpkin_plugin_event_server_broadcast_event_data_t) { - (pumpkin_plugin_event_own_text_component_t) (pumpkin_plugin_event_own_text_component_t) { (uintptr_t) arg2 }, - (pumpkin_plugin_event_own_text_component_t) (pumpkin_plugin_event_own_text_component_t) { (int32_t) arg3 }, - (bool) (int32_t) arg4, - }; - break; - } - } - plugin_event_t arg16 = variant; - plugin_event_t ret; - exports_plugin_handle_event((uint32_t) (arg), (plugin_own_server_instance_t) { arg0 }, &arg16, &ret); - uint8_t *ptr = (uint8_t *) &RET_AREA; - switch ((int32_t) (ret).tag) { - case 0: { - const pumpkin_plugin_event_player_join_event_data_t *payload = &(ret).val.player_join_event; - *((int8_t*)(ptr + 0)) = 0; - *((int32_t*)(ptr + 8)) = ((*payload).player).__handle; - *((int32_t*)(ptr + 12)) = ((*payload).join_message).__handle; - *((int8_t*)(ptr + 16)) = (*payload).cancelled; - break; - } - case 1: { - const pumpkin_plugin_event_player_leave_event_data_t *payload17 = &(ret).val.player_leave_event; - *((int8_t*)(ptr + 0)) = 1; - *((int32_t*)(ptr + 8)) = ((*payload17).player).__handle; - *((int32_t*)(ptr + 12)) = ((*payload17).leave_message).__handle; - *((int8_t*)(ptr + 16)) = (*payload17).cancelled; - break; - } - case 2: { - const pumpkin_plugin_event_player_login_event_data_t *payload18 = &(ret).val.player_login_event; - *((int8_t*)(ptr + 0)) = 2; - *((int32_t*)(ptr + 8)) = ((*payload18).player).__handle; - *((int32_t*)(ptr + 12)) = ((*payload18).kick_message).__handle; - *((int8_t*)(ptr + 16)) = (*payload18).cancelled; - break; - } - case 3: { - const pumpkin_plugin_event_player_chat_event_data_t *payload19 = &(ret).val.player_chat_event; - *((int8_t*)(ptr + 0)) = 3; - *((int32_t*)(ptr + 8)) = ((*payload19).player).__handle; - *((size_t*)(ptr + (8+2*sizeof(void*)))) = ((*payload19).message).len; - *((uint8_t **)(ptr + (8+1*sizeof(void*)))) = (uint8_t *) ((*payload19).message).ptr; - *((size_t*)(ptr + (8+4*sizeof(void*)))) = ((*payload19).recipients).len; - *((uint8_t **)(ptr + (8+3*sizeof(void*)))) = (uint8_t *) ((*payload19).recipients).ptr; - *((int8_t*)(ptr + (8+5*sizeof(void*)))) = (*payload19).cancelled; - break; - } - case 4: { - const pumpkin_plugin_event_player_command_send_event_data_t *payload20 = &(ret).val.player_command_send_event; - *((int8_t*)(ptr + 0)) = 4; - *((int32_t*)(ptr + 8)) = ((*payload20).player).__handle; - *((size_t*)(ptr + (8+2*sizeof(void*)))) = ((*payload20).command).len; - *((uint8_t **)(ptr + (8+1*sizeof(void*)))) = (uint8_t *) ((*payload20).command).ptr; - *((int8_t*)(ptr + (8+3*sizeof(void*)))) = (*payload20).cancelled; - break; - } - case 5: { - const pumpkin_plugin_event_player_permission_check_event_data_t *payload21 = &(ret).val.player_permission_check_event; - *((int8_t*)(ptr + 0)) = 5; - *((int32_t*)(ptr + 8)) = ((*payload21).player).__handle; - *((size_t*)(ptr + (8+2*sizeof(void*)))) = ((*payload21).permission).len; - *((uint8_t **)(ptr + (8+1*sizeof(void*)))) = (uint8_t *) ((*payload21).permission).ptr; - *((int8_t*)(ptr + (8+3*sizeof(void*)))) = (*payload21).permission_result; - break; - } - case 6: { - const pumpkin_plugin_event_player_move_event_data_t *payload22 = &(ret).val.player_move_event; - *((int8_t*)(ptr + 0)) = 6; - *((int32_t*)(ptr + 8)) = ((*payload22).player).__handle; - *((double*)(ptr + 16)) = ((*payload22).from_position).f0; - *((double*)(ptr + 24)) = ((*payload22).from_position).f1; - *((double*)(ptr + 32)) = ((*payload22).from_position).f2; - *((double*)(ptr + 40)) = ((*payload22).to_position).f0; - *((double*)(ptr + 48)) = ((*payload22).to_position).f1; - *((double*)(ptr + 56)) = ((*payload22).to_position).f2; - *((int8_t*)(ptr + 64)) = (*payload22).cancelled; - break; - } - case 7: { - const pumpkin_plugin_event_player_teleport_event_data_t *payload23 = &(ret).val.player_teleport_event; - *((int8_t*)(ptr + 0)) = 7; - *((int32_t*)(ptr + 8)) = ((*payload23).player).__handle; - *((double*)(ptr + 16)) = ((*payload23).from_position).f0; - *((double*)(ptr + 24)) = ((*payload23).from_position).f1; - *((double*)(ptr + 32)) = ((*payload23).from_position).f2; - *((double*)(ptr + 40)) = ((*payload23).to_position).f0; - *((double*)(ptr + 48)) = ((*payload23).to_position).f1; - *((double*)(ptr + 56)) = ((*payload23).to_position).f2; - *((int8_t*)(ptr + 64)) = (*payload23).cancelled; - break; - } - case 8: { - const pumpkin_plugin_event_player_change_world_event_data_t *payload24 = &(ret).val.player_change_world_event; - *((int8_t*)(ptr + 0)) = 8; - *((int32_t*)(ptr + 8)) = ((*payload24).player).__handle; - *((int32_t*)(ptr + 12)) = ((*payload24).previous_world).__handle; - *((int32_t*)(ptr + 16)) = ((*payload24).new_world).__handle; - *((double*)(ptr + 24)) = ((*payload24).position).f0; - *((double*)(ptr + 32)) = ((*payload24).position).f1; - *((double*)(ptr + 40)) = ((*payload24).position).f2; - *((float*)(ptr + 48)) = (*payload24).yaw; - *((float*)(ptr + 52)) = (*payload24).pitch; - *((int8_t*)(ptr + 56)) = (*payload24).cancelled; - break; - } - case 9: { - const pumpkin_plugin_event_player_exp_change_event_data_t *payload25 = &(ret).val.player_exp_change_event; - *((int8_t*)(ptr + 0)) = 9; - *((int32_t*)(ptr + 8)) = ((*payload25).player).__handle; - *((int32_t*)(ptr + 12)) = (*payload25).amount; - break; - } - case 10: { - const pumpkin_plugin_event_player_item_held_event_data_t *payload26 = &(ret).val.player_item_held_event; - *((int8_t*)(ptr + 0)) = 10; - *((int32_t*)(ptr + 8)) = ((*payload26).player).__handle; - *((int8_t*)(ptr + 12)) = (int32_t) ((*payload26).previous_slot); - *((int8_t*)(ptr + 13)) = (int32_t) ((*payload26).new_slot); - *((int8_t*)(ptr + 14)) = (*payload26).cancelled; - break; - } - case 11: { - const pumpkin_plugin_event_player_changed_main_hand_event_data_t *payload27 = &(ret).val.player_changed_main_hand_event; - *((int8_t*)(ptr + 0)) = 11; - *((int32_t*)(ptr + 8)) = ((*payload27).player).__handle; - *((int8_t*)(ptr + 12)) = (int32_t) (*payload27).main_hand; - break; - } - case 12: { - const pumpkin_plugin_event_player_gamemode_change_event_data_t *payload28 = &(ret).val.player_gamemode_change_event; - *((int8_t*)(ptr + 0)) = 12; - *((int32_t*)(ptr + 8)) = ((*payload28).player).__handle; - *((int8_t*)(ptr + 12)) = (int32_t) (*payload28).previous_gamemode; - *((int8_t*)(ptr + 13)) = (int32_t) (*payload28).new_gamemode; - *((int8_t*)(ptr + 14)) = (*payload28).cancelled; - break; - } - case 13: { - const pumpkin_plugin_event_player_custom_payload_event_data_t *payload29 = &(ret).val.player_custom_payload_event; - *((int8_t*)(ptr + 0)) = 13; - *((int32_t*)(ptr + 8)) = ((*payload29).player).__handle; - *((size_t*)(ptr + (8+2*sizeof(void*)))) = ((*payload29).channel).len; - *((uint8_t **)(ptr + (8+1*sizeof(void*)))) = (uint8_t *) ((*payload29).channel).ptr; - *((size_t*)(ptr + (8+4*sizeof(void*)))) = ((*payload29).data).len; - *((uint8_t **)(ptr + (8+3*sizeof(void*)))) = (uint8_t *) ((*payload29).data).ptr; - break; - } - case 14: { - const pumpkin_plugin_event_player_fish_event_data_t *payload30 = &(ret).val.player_fish_event; - *((int8_t*)(ptr + 0)) = 14; - *((int32_t*)(ptr + 8)) = ((*payload30).player).__handle; - if (((*payload30).caught_uuid).is_some) { - const plugin_string_t *payload32 = &((*payload30).caught_uuid).val; - *((int8_t*)(ptr + (8+1*sizeof(void*)))) = 1; - *((size_t*)(ptr + (8+3*sizeof(void*)))) = (*payload32).len; - *((uint8_t **)(ptr + (8+2*sizeof(void*)))) = (uint8_t *) (*payload32).ptr; - } else { - *((int8_t*)(ptr + (8+1*sizeof(void*)))) = 0; - } - *((size_t*)(ptr + (8+5*sizeof(void*)))) = ((*payload30).caught_type).len; - *((uint8_t **)(ptr + (8+4*sizeof(void*)))) = (uint8_t *) ((*payload30).caught_type).ptr; - *((size_t*)(ptr + (8+7*sizeof(void*)))) = ((*payload30).hook_uuid).len; - *((uint8_t **)(ptr + (8+6*sizeof(void*)))) = (uint8_t *) ((*payload30).hook_uuid).ptr; - *((int8_t*)(ptr + (8+8*sizeof(void*)))) = (int32_t) (*payload30).state; - *((int8_t*)(ptr + (9+8*sizeof(void*)))) = (int32_t) (*payload30).hand; - *((int32_t*)(ptr + (12+8*sizeof(void*)))) = (*payload30).exp_to_drop; - *((int8_t*)(ptr + (16+8*sizeof(void*)))) = (*payload30).cancelled; - break; - } - case 15: { - const pumpkin_plugin_event_player_egg_throw_event_data_t *payload33 = &(ret).val.player_egg_throw_event; - *((int8_t*)(ptr + 0)) = 15; - *((int32_t*)(ptr + 8)) = ((*payload33).player).__handle; - *((size_t*)(ptr + (8+2*sizeof(void*)))) = ((*payload33).egg_uuid).len; - *((uint8_t **)(ptr + (8+1*sizeof(void*)))) = (uint8_t *) ((*payload33).egg_uuid).ptr; - *((int8_t*)(ptr + (8+3*sizeof(void*)))) = (*payload33).hatching; - *((int8_t*)(ptr + (9+3*sizeof(void*)))) = (int32_t) ((*payload33).num_hatches); - *((size_t*)(ptr + (8+5*sizeof(void*)))) = ((*payload33).hatching_type).len; - *((uint8_t **)(ptr + (8+4*sizeof(void*)))) = (uint8_t *) ((*payload33).hatching_type).ptr; - *((int8_t*)(ptr + (8+6*sizeof(void*)))) = (*payload33).cancelled; - break; - } - case 16: { - const pumpkin_plugin_event_player_interact_unknown_entity_event_data_t *payload34 = &(ret).val.player_interact_unknown_entity_event; - *((int8_t*)(ptr + 0)) = 16; - *((int32_t*)(ptr + 8)) = ((*payload34).player).__handle; - *((int32_t*)(ptr + 12)) = (*payload34).entity_id; - *((int8_t*)(ptr + 16)) = (int32_t) (*payload34).action; - *((int8_t*)(ptr + 17)) = (*payload34).cancelled; - break; - } - case 17: { - const pumpkin_plugin_event_player_interact_event_data_t *payload35 = &(ret).val.player_interact_event; - *((int8_t*)(ptr + 0)) = 17; - *((int32_t*)(ptr + 8)) = ((*payload35).player).__handle; - *((int8_t*)(ptr + 12)) = (int32_t) (*payload35).action; - if (((*payload35).clicked_pos).is_some) { - const pumpkin_plugin_event_block_position_t *payload37 = &((*payload35).clicked_pos).val; - *((int8_t*)(ptr + 16)) = 1; - *((int32_t*)(ptr + 20)) = (*payload37).f0; - *((int32_t*)(ptr + 24)) = (*payload37).f1; - *((int32_t*)(ptr + 28)) = (*payload37).f2; - } else { - *((int8_t*)(ptr + 16)) = 0; - } - *((size_t*)(ptr + (32+1*sizeof(void*)))) = (((*payload35).item).registry_key).len; - *((uint8_t **)(ptr + 32)) = (uint8_t *) (((*payload35).item).registry_key).ptr; - *((int8_t*)(ptr + (32+2*sizeof(void*)))) = (int32_t) (((*payload35).item).count); - *((size_t*)(ptr + (32+4*sizeof(void*)))) = ((*payload35).block).len; - *((uint8_t **)(ptr + (32+3*sizeof(void*)))) = (uint8_t *) ((*payload35).block).ptr; - *((int8_t*)(ptr + (32+5*sizeof(void*)))) = (*payload35).cancelled; - break; - } - case 18: { - const pumpkin_plugin_event_player_toggle_sneak_event_data_t *payload38 = &(ret).val.player_toggle_sneak_event; - *((int8_t*)(ptr + 0)) = 18; - *((int32_t*)(ptr + 8)) = ((*payload38).player).__handle; - *((int8_t*)(ptr + 12)) = (*payload38).is_sneaking; - *((int8_t*)(ptr + 13)) = (*payload38).cancelled; - break; - } - case 19: { - const pumpkin_plugin_event_player_toggle_flight_event_data_t *payload39 = &(ret).val.player_toggle_flight_event; - *((int8_t*)(ptr + 0)) = 19; - *((int32_t*)(ptr + 8)) = ((*payload39).player).__handle; - *((int8_t*)(ptr + 12)) = (*payload39).is_flying; - *((int8_t*)(ptr + 13)) = (*payload39).cancelled; - break; - } - case 20: { - const pumpkin_plugin_event_player_toggle_sprint_event_data_t *payload40 = &(ret).val.player_toggle_sprint_event; - *((int8_t*)(ptr + 0)) = 20; - *((int32_t*)(ptr + 8)) = ((*payload40).player).__handle; - *((int8_t*)(ptr + 12)) = (*payload40).is_sprinting; - *((int8_t*)(ptr + 13)) = (*payload40).cancelled; - break; - } - case 21: { - const pumpkin_plugin_event_block_redstone_event_data_t *payload41 = &(ret).val.block_redstone_event; - *((int8_t*)(ptr + 0)) = 21; - *((int32_t*)(ptr + 8)) = ((*payload41).target_world).__handle; - *((int16_t*)(ptr + 12)) = (int32_t) ((*payload41).state_id); - *((int32_t*)(ptr + 16)) = ((*payload41).block_position).f0; - *((int32_t*)(ptr + 20)) = ((*payload41).block_position).f1; - *((int32_t*)(ptr + 24)) = ((*payload41).block_position).f2; - *((int32_t*)(ptr + 28)) = (*payload41).old_current; - *((int32_t*)(ptr + 32)) = (*payload41).new_current; - *((int8_t*)(ptr + 36)) = (*payload41).cancelled; - break; - } - case 22: { - const pumpkin_plugin_event_block_break_event_data_t *payload42 = &(ret).val.block_break_event; - *((int8_t*)(ptr + 0)) = 22; - if (((*payload42).player).is_some) { - const pumpkin_plugin_event_own_player_t *payload44 = &((*payload42).player).val; - *((int8_t*)(ptr + 8)) = 1; - *((int32_t*)(ptr + 12)) = (*payload44).__handle; - } else { - *((int8_t*)(ptr + 8)) = 0; - } - *((size_t*)(ptr + (16+1*sizeof(void*)))) = ((*payload42).block).len; - *((uint8_t **)(ptr + 16)) = (uint8_t *) ((*payload42).block).ptr; - *((int32_t*)(ptr + (16+2*sizeof(void*)))) = ((*payload42).block_position).f0; - *((int32_t*)(ptr + (20+2*sizeof(void*)))) = ((*payload42).block_position).f1; - *((int32_t*)(ptr + (24+2*sizeof(void*)))) = ((*payload42).block_position).f2; - *((int32_t*)(ptr + (28+2*sizeof(void*)))) = (int32_t) ((*payload42).exp); - *((int8_t*)(ptr + (32+2*sizeof(void*)))) = (*payload42).should_drop; - *((int8_t*)(ptr + (33+2*sizeof(void*)))) = (*payload42).cancelled; - break; - } - case 23: { - const pumpkin_plugin_event_block_burn_event_data_t *payload45 = &(ret).val.block_burn_event; - *((int8_t*)(ptr + 0)) = 23; - *((size_t*)(ptr + (8+1*sizeof(void*)))) = ((*payload45).igniting_block).len; - *((uint8_t **)(ptr + 8)) = (uint8_t *) ((*payload45).igniting_block).ptr; - *((size_t*)(ptr + (8+3*sizeof(void*)))) = ((*payload45).block).len; - *((uint8_t **)(ptr + (8+2*sizeof(void*)))) = (uint8_t *) ((*payload45).block).ptr; - *((int8_t*)(ptr + (8+4*sizeof(void*)))) = (*payload45).cancelled; - break; - } - case 24: { - const pumpkin_plugin_event_block_can_build_event_data_t *payload46 = &(ret).val.block_can_build_event; - *((int8_t*)(ptr + 0)) = 24; - *((size_t*)(ptr + (8+1*sizeof(void*)))) = ((*payload46).block_to_build).len; - *((uint8_t **)(ptr + 8)) = (uint8_t *) ((*payload46).block_to_build).ptr; - *((int8_t*)(ptr + (8+2*sizeof(void*)))) = (*payload46).buildable; - *((int32_t*)(ptr + (12+2*sizeof(void*)))) = ((*payload46).player).__handle; - *((size_t*)(ptr + (16+3*sizeof(void*)))) = ((*payload46).block).len; - *((uint8_t **)(ptr + (16+2*sizeof(void*)))) = (uint8_t *) ((*payload46).block).ptr; - *((int8_t*)(ptr + (16+4*sizeof(void*)))) = (*payload46).cancelled; - break; - } - case 25: { - const pumpkin_plugin_event_block_grow_event_data_t *payload47 = &(ret).val.block_grow_event; - *((int8_t*)(ptr + 0)) = 25; - *((int32_t*)(ptr + 8)) = ((*payload47).target_world).__handle; - *((size_t*)(ptr + (8+2*sizeof(void*)))) = ((*payload47).old_block).len; - *((uint8_t **)(ptr + (8+1*sizeof(void*)))) = (uint8_t *) ((*payload47).old_block).ptr; - *((int16_t*)(ptr + (8+3*sizeof(void*)))) = (int32_t) ((*payload47).old_state_id); - *((size_t*)(ptr + (8+5*sizeof(void*)))) = ((*payload47).new_block).len; - *((uint8_t **)(ptr + (8+4*sizeof(void*)))) = (uint8_t *) ((*payload47).new_block).ptr; - *((int16_t*)(ptr + (8+6*sizeof(void*)))) = (int32_t) ((*payload47).new_state_id); - *((int32_t*)(ptr + (12+6*sizeof(void*)))) = ((*payload47).block_position).f0; - *((int32_t*)(ptr + (16+6*sizeof(void*)))) = ((*payload47).block_position).f1; - *((int32_t*)(ptr + (20+6*sizeof(void*)))) = ((*payload47).block_position).f2; - *((int8_t*)(ptr + (24+6*sizeof(void*)))) = (*payload47).cancelled; - break; - } - case 26: { - const pumpkin_plugin_event_block_place_event_data_t *payload48 = &(ret).val.block_place_event; - *((int8_t*)(ptr + 0)) = 26; - *((int32_t*)(ptr + 8)) = ((*payload48).player).__handle; - *((size_t*)(ptr + (8+2*sizeof(void*)))) = ((*payload48).block_placed).len; - *((uint8_t **)(ptr + (8+1*sizeof(void*)))) = (uint8_t *) ((*payload48).block_placed).ptr; - *((size_t*)(ptr + (8+4*sizeof(void*)))) = ((*payload48).block_placed_against).len; - *((uint8_t **)(ptr + (8+3*sizeof(void*)))) = (uint8_t *) ((*payload48).block_placed_against).ptr; - *((int32_t*)(ptr + (8+5*sizeof(void*)))) = ((*payload48).block_position).f0; - *((int32_t*)(ptr + (12+5*sizeof(void*)))) = ((*payload48).block_position).f1; - *((int32_t*)(ptr + (16+5*sizeof(void*)))) = ((*payload48).block_position).f2; - *((int8_t*)(ptr + (20+5*sizeof(void*)))) = (*payload48).can_build; - *((int8_t*)(ptr + (21+5*sizeof(void*)))) = (*payload48).cancelled; - break; - } - case 27: { - const pumpkin_plugin_event_server_command_event_data_t *payload49 = &(ret).val.server_command_event; - *((int8_t*)(ptr + 0)) = 27; - *((size_t*)(ptr + (8+1*sizeof(void*)))) = ((*payload49).command).len; - *((uint8_t **)(ptr + 8)) = (uint8_t *) ((*payload49).command).ptr; - *((int8_t*)(ptr + (8+2*sizeof(void*)))) = (*payload49).cancelled; - break; - } - case 28: { - const pumpkin_plugin_event_spawn_change_event_data_t *payload50 = &(ret).val.spawn_change_event; - *((int8_t*)(ptr + 0)) = 28; - *((int32_t*)(ptr + 8)) = ((*payload50).target_world).__handle; - *((int32_t*)(ptr + 12)) = ((*payload50).previous_position).f0; - *((int32_t*)(ptr + 16)) = ((*payload50).previous_position).f1; - *((int32_t*)(ptr + 20)) = ((*payload50).previous_position).f2; - *((float*)(ptr + 24)) = (*payload50).previous_yaw; - *((float*)(ptr + 28)) = (*payload50).previous_pitch; - *((int32_t*)(ptr + 32)) = ((*payload50).new_position).f0; - *((int32_t*)(ptr + 36)) = ((*payload50).new_position).f1; - *((int32_t*)(ptr + 40)) = ((*payload50).new_position).f2; - *((float*)(ptr + 44)) = (*payload50).new_yaw; - *((float*)(ptr + 48)) = (*payload50).new_pitch; - break; - } - case 29: { - const pumpkin_plugin_event_server_broadcast_event_data_t *payload51 = &(ret).val.server_broadcast_event; - *((int8_t*)(ptr + 0)) = 29; - *((int32_t*)(ptr + 8)) = ((*payload51).message).__handle; - *((int32_t*)(ptr + 12)) = ((*payload51).sender).__handle; - *((int8_t*)(ptr + 16)) = (*payload51).cancelled; - break; - } - } - return ptr; -} - -__attribute__((__export_name__("handle-command"))) -uint8_t * __wasm_export_exports_plugin_handle_command(int32_t arg, int32_t arg0, int32_t arg1, int32_t arg2) { - plugin_result_s32_command_error_t ret; - int32_t ok; - plugin_command_error_t err; - ret.is_err = !exports_plugin_handle_command((uint32_t) (arg), (plugin_own_command_sender_t) { arg0 }, (plugin_own_server_instance_t) { arg1 }, (plugin_own_consumed_args_t) { arg2 }, &ok, &err); - if (ret.is_err) { - ret.val.err = err; - } - if (!ret.is_err) { - ret.val.ok = ok; - } - uint8_t *ptr = (uint8_t *) &RET_AREA; - if ((ret).is_err) { - const plugin_command_error_t *payload3 = &(ret).val.err;*((int8_t*)(ptr + 0)) = 1; - switch ((int32_t) (*payload3).tag) { - case 0: { - const plugin_option_string_t *payload4 = &(*payload3).val.invalid_consumption; - *((int8_t*)(ptr + sizeof(void*))) = 0; - if ((*payload4).is_some) { - const plugin_string_t *payload6 = &(*payload4).val; - *((int8_t*)(ptr + (2*sizeof(void*)))) = 1; - *((size_t*)(ptr + (4*sizeof(void*)))) = (*payload6).len; - *((uint8_t **)(ptr + (3*sizeof(void*)))) = (uint8_t *) (*payload6).ptr; - } else { - *((int8_t*)(ptr + (2*sizeof(void*)))) = 0; - } - break; - } - case 1: { - *((int8_t*)(ptr + sizeof(void*))) = 1; - break; - } - case 2: { - *((int8_t*)(ptr + sizeof(void*))) = 2; - break; - } - case 3: { - const pumpkin_plugin_command_own_text_component_t *payload9 = &(*payload3).val.command_failed; - *((int8_t*)(ptr + sizeof(void*))) = 3; - *((int32_t*)(ptr + (2*sizeof(void*)))) = (*payload9).__handle; - break; - } - } - } else { - const int32_t *payload = &(ret).val.ok;*((int8_t*)(ptr + 0)) = 0; - *((int32_t*)(ptr + sizeof(void*))) = *payload; - } - return ptr; -} - -__attribute__((__export_name__("handle-task"))) -void __wasm_export_exports_plugin_handle_task(int32_t arg, int32_t arg0) { - exports_plugin_handle_task((uint32_t) (arg), (plugin_own_server_instance_t) { arg0 }); -} - -__attribute__((__export_name__("pumpkin:plugin/metadata#get-metadata"))) -uint8_t * __wasm_export_exports_pumpkin_plugin_metadata_get_metadata(void) { - exports_pumpkin_plugin_metadata_plugin_metadata_t ret; - exports_pumpkin_plugin_metadata_get_metadata(&ret); - uint8_t *ptr = (uint8_t *) &RET_AREA; - *((size_t*)(ptr + sizeof(void*))) = ((ret).name).len; - *((uint8_t **)(ptr + 0)) = (uint8_t *) ((ret).name).ptr; - *((size_t*)(ptr + (3*sizeof(void*)))) = ((ret).version).len; - *((uint8_t **)(ptr + (2*sizeof(void*)))) = (uint8_t *) ((ret).version).ptr; - *((size_t*)(ptr + (5*sizeof(void*)))) = ((ret).authors).len; - *((uint8_t **)(ptr + (4*sizeof(void*)))) = (uint8_t *) ((ret).authors).ptr; - *((size_t*)(ptr + (7*sizeof(void*)))) = ((ret).description).len; - *((uint8_t **)(ptr + (6*sizeof(void*)))) = (uint8_t *) ((ret).description).ptr; - *((size_t*)(ptr + (9*sizeof(void*)))) = ((ret).dependencies).len; - *((uint8_t **)(ptr + (8*sizeof(void*)))) = (uint8_t *) ((ret).dependencies).ptr; - return ptr; -} - -// Ensure that the *_component_type.o object is linked in - -extern void __component_type_object_force_link_plugin(void); -__attribute__((used)) -void __component_type_object_force_link_plugin_public_use_in_this_compilation_unit(void) { - __component_type_object_force_link_plugin(); -} diff --git a/src/gen/plugin.h b/src/gen/plugin.h deleted file mode 100644 index f0ed255..0000000 --- a/src/gen/plugin.h +++ /dev/null @@ -1,2369 +0,0 @@ -// Generated by `wit-bindgen` 0.56.0. DO NOT EDIT! -#ifndef __BINDINGS_PLUGIN_H -#define __BINDINGS_PLUGIN_H -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include -#include - -typedef struct plugin_string_t { - uint8_t*ptr; - size_t len; -} plugin_string_t; - -typedef uint8_t pumpkin_plugin_logging_level_t; - -#define PUMPKIN_PLUGIN_LOGGING_LEVEL_TRACE 0 -#define PUMPKIN_PLUGIN_LOGGING_LEVEL_DEBUG 1 -#define PUMPKIN_PLUGIN_LOGGING_LEVEL_INFO 2 -#define PUMPKIN_PLUGIN_LOGGING_LEVEL_WARN 3 -#define PUMPKIN_PLUGIN_LOGGING_LEVEL_ERROR 4 - -typedef struct { - uint8_t *ptr; - size_t len; -} plugin_list_u8_t; - -// Serialized text component as a postcard byte array. -// @deprecated Use the text-component resource from the text interface instead. -typedef struct pumpkin_plugin_common_raw_text_component_t { - uint8_t *ptr; - size_t len; -} pumpkin_plugin_common_raw_text_component_t; - -// A position in the world grid (integers). -typedef struct pumpkin_plugin_common_block_position_t { - int32_t f0; - int32_t f1; - int32_t f2; -} pumpkin_plugin_common_block_position_t; - -// A precise coordinate in the world (floats). -typedef struct pumpkin_plugin_common_position_t { - double f0; - double f1; - double f2; -} pumpkin_plugin_common_position_t; - -// Represents the hands of a player. -typedef uint8_t pumpkin_plugin_common_hand_t; - -#define PUMPKIN_PLUGIN_COMMON_HAND_LEFT 0 -#define PUMPKIN_PLUGIN_COMMON_HAND_RIGHT 1 - -// Represents the game modes available in Minecraft. -typedef uint8_t pumpkin_plugin_common_game_mode_t; - -#define PUMPKIN_PLUGIN_COMMON_GAME_MODE_SURVIVAL 0 -#define PUMPKIN_PLUGIN_COMMON_GAME_MODE_CREATIVE 1 -#define PUMPKIN_PLUGIN_COMMON_GAME_MODE_ADVENTURE 2 -#define PUMPKIN_PLUGIN_COMMON_GAME_MODE_SPECTATOR 3 - -// The 16 base Minecraft colors. -typedef uint8_t pumpkin_plugin_common_named_color_t; - -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_BLACK 0 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_BLUE 1 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_GREEN 2 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_AQUA 3 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_RED 4 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_PURPLE 5 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_GOLD 6 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_GRAY 7 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_GRAY 8 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_BLUE 9 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_GREEN 10 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_AQUA 11 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_RED 12 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_LIGHT_PURPLE 13 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_YELLOW 14 -#define PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_WHITE 15 - -// An RGB color represented by its red, green, and blue components. -typedef struct pumpkin_plugin_common_rgb_color_t { - uint8_t r; - uint8_t g; - uint8_t b; -} pumpkin_plugin_common_rgb_color_t; - -// An ARGB color with alpha (transparency) channel. -typedef struct pumpkin_plugin_common_argb_color_t { - uint8_t a; - uint8_t r; - uint8_t g; - uint8_t b; -} pumpkin_plugin_common_argb_color_t; - -// Represents a stack of items with its type and count. -typedef struct pumpkin_plugin_common_item_stack_t { - // The unique registry key (e.g., "minecraft:diamond"). - plugin_string_t registry_key; - // The number of items in the stack. - uint8_t count; -} pumpkin_plugin_common_item_stack_t; - -// Represents the various poses an entity can be in. -typedef uint8_t pumpkin_plugin_common_entity_pose_t; - -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_STANDING 0 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_FALL_FLYING 1 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SLEEPING 2 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SWIMMING 3 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SPIN_ATTACK 4 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_CROUCHING 5 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_LONG_JUMPING 6 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_DYING 7 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_CROAKING 8 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_USING_TONGUE 9 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SITTING 10 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_ROARING 11 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SNIFFING 12 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_EMERGING 13 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_DIGGING 14 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SLIDING 15 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SHOOTING 16 -#define PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_INHALING 17 - -// All Minecraft-supported locales. -typedef uint8_t pumpkin_plugin_common_locale_t; - -#define PUMPKIN_PLUGIN_COMMON_LOCALE_AF_ZA 0 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_AR_SA 1 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_AST_ES 2 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_AZ_AZ 3 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_BA_RU 4 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_BAR 5 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_BE_BY 6 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_BG_BG 7 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_BR_FR 8 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_BRB 9 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_BS_BA 10 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_CA_ES 11 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_CS_CZ 12 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_CY_GB 13 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_DA_DK 14 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_DE_AT 15 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_DE_CH 16 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_DE_DE 17 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EL_GR 18 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EN_AU 19 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EN_CA 20 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EN_GB 21 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EN_NZ 22 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EN_PT 23 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EN_UD 24 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EN_US 25 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ENP 26 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ENWS 27 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EO_UY 28 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ES_AR 29 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ES_CL 30 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ES_EC 31 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ES_ES 32 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ES_MX 33 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ES_UY 34 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ES_VE 35 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ESAN 36 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ET_EE 37 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_EU_ES 38 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FA_IR 39 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FI_FI 40 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FIL_PH 41 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FO_FO 42 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FR_CA 43 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FR_FR 44 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FRA_DE 45 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FUR_IT 46 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_FY_NL 47 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_GA_IE 48 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_GD_GB 49 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_GL_ES 50 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_HAW_US 51 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_HE_IL 52 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_HI_IN 53 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_HR_HR 54 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_HU_HU 55 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_HY_AM 56 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ID_ID 57 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_IG_NG 58 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_IO_EN 59 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_IS_IS 60 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ISV 61 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_IT_IT 62 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_JA_JP 63 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_JBO_EN 64 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_KA_GE 65 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_KK_KZ 66 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_KN_IN 67 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_KO_KR 68 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_KSH 69 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_KW_GB 70 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LA_LA 71 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LB_LU 72 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LI_LI 73 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LMO 74 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LO_LA 75 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LOL_US 76 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LT_LT 77 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LV_LV 78 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_LZH 79 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_MK_MK 80 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_MN_MN 81 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_MS_MY 82 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_MT_MT 83 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_NAH 84 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_NDS_DE 85 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_NL_BE 86 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_NL_NL 87 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_NN_NO 88 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_NO_NO 89 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_OC_FR 90 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_OVD 91 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_PL_PL 92 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_PT_BR 93 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_PT_PT 94 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_QYA_AA 95 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_RO_RO 96 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_RPR 97 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_RU_RU 98 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_RY_UA 99 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SAH_SAH 100 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SE_NO 101 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SK_SK 102 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SL_SI 103 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SO_SO 104 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SQ_AL 105 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SR_CS 106 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SR_SP 107 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SV_SE 108 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SXU 109 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_SZL 110 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_TA_IN 111 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_TH_TH 112 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_TL_PH 113 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_TLH_AA 114 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_TOK 115 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_TR_TR 116 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_TT_RU 117 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_UK_UA 118 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_VAL_ES 119 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_VEC_IT 120 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_VI_VN 121 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_YI_DE 122 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_YO_NG 123 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ZH_CN 124 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ZH_HK 125 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ZH_TW 126 -#define PUMPKIN_PLUGIN_COMMON_LOCALE_ZLM_ARAB 127 - -typedef pumpkin_plugin_common_named_color_t pumpkin_plugin_text_named_color_t; - -typedef pumpkin_plugin_common_rgb_color_t pumpkin_plugin_text_rgb_color_t; - -typedef pumpkin_plugin_common_argb_color_t pumpkin_plugin_text_argb_color_t; - -typedef struct pumpkin_plugin_text_own_text_component_t { - int32_t __handle; -} pumpkin_plugin_text_own_text_component_t; - -typedef struct pumpkin_plugin_text_borrow_text_component_t { - int32_t __handle; -} pumpkin_plugin_text_borrow_text_component_t; - -typedef struct { - pumpkin_plugin_text_own_text_component_t *ptr; - size_t len; -} pumpkin_plugin_text_list_own_text_component_t; - -typedef struct { - bool is_some; - pumpkin_plugin_text_own_text_component_t val; -} pumpkin_plugin_text_option_own_text_component_t; - -typedef pumpkin_plugin_common_item_stack_t pumpkin_plugin_gui_item_stack_t; - -typedef uint8_t pumpkin_plugin_gui_gui_type_t; - -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_GENERIC_9X1 0 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_GENERIC_9X2 1 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_GENERIC_9X3 2 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_GENERIC_9X4 3 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_GENERIC_9X5 4 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_GENERIC_9X6 5 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_GENERIC_3X3 6 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_CRAFTER_3X3 7 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_ANVIL 8 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_BEACON 9 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_BLAST_FURNACE 10 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_BREWING_STAND 11 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_CRAFTING 12 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_ENCHANTMENT 13 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_FURNACE 14 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_GRINDSTONE 15 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_HOPPER 16 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_LECTERN 17 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_LOOM 18 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_MERCHANT 19 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_SHULKER_BOX 20 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_SMITHING 21 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_SMOKER 22 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_CARTOGRAPHY_TABLE 23 -#define PUMPKIN_PLUGIN_GUI_GUI_TYPE_STONECUTTER 24 - -typedef struct pumpkin_plugin_gui_own_gui_t { - int32_t __handle; -} pumpkin_plugin_gui_own_gui_t; - -typedef struct pumpkin_plugin_gui_borrow_gui_t { - int32_t __handle; -} pumpkin_plugin_gui_borrow_gui_t; - -typedef pumpkin_plugin_text_own_text_component_t pumpkin_plugin_gui_own_text_component_t; - -typedef struct { - bool is_some; - pumpkin_plugin_gui_item_stack_t val; -} pumpkin_plugin_gui_option_item_stack_t; - -typedef pumpkin_plugin_common_named_color_t pumpkin_plugin_scoreboard_named_color_t; - -typedef uint8_t pumpkin_plugin_scoreboard_render_type_t; - -#define PUMPKIN_PLUGIN_SCOREBOARD_RENDER_TYPE_INTEGER 0 -#define PUMPKIN_PLUGIN_SCOREBOARD_RENDER_TYPE_HEARTS 1 - -typedef uint8_t pumpkin_plugin_scoreboard_display_slot_t; - -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_PLAYER_LIST 0 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR 1 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_BELOW_NAME 2 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_BLACK 3 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_DARK_BLUE 4 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_DARK_GREEN 5 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_DARK_AQUA 6 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_DARK_RED 7 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_DARK_PURPLE 8 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_GOLD 9 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_GRAY 10 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_DARK_GRAY 11 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_BLUE 12 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_GREEN 13 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_AQUA 14 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_RED 15 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_LIGHT_PURPLE 16 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_YELLOW 17 -#define PUMPKIN_PLUGIN_SCOREBOARD_DISPLAY_SLOT_SIDEBAR_TEAM_WHITE 18 - -typedef uint8_t pumpkin_plugin_scoreboard_nametag_visibility_t; - -#define PUMPKIN_PLUGIN_SCOREBOARD_NAMETAG_VISIBILITY_ALWAYS 0 -#define PUMPKIN_PLUGIN_SCOREBOARD_NAMETAG_VISIBILITY_NEVER 1 -#define PUMPKIN_PLUGIN_SCOREBOARD_NAMETAG_VISIBILITY_HIDE_FOR_OTHER_TEAMS 2 -#define PUMPKIN_PLUGIN_SCOREBOARD_NAMETAG_VISIBILITY_HIDE_FOR_OWN_TEAM 3 - -typedef uint8_t pumpkin_plugin_scoreboard_collision_rule_t; - -#define PUMPKIN_PLUGIN_SCOREBOARD_COLLISION_RULE_ALWAYS 0 -#define PUMPKIN_PLUGIN_SCOREBOARD_COLLISION_RULE_NEVER 1 -#define PUMPKIN_PLUGIN_SCOREBOARD_COLLISION_RULE_PUSH_OTHER_TEAMS 2 -#define PUMPKIN_PLUGIN_SCOREBOARD_COLLISION_RULE_PUSH_OWN_TEAM 3 - -typedef pumpkin_plugin_text_own_text_component_t pumpkin_plugin_scoreboard_own_text_component_t; - -typedef struct pumpkin_plugin_scoreboard_team_settings_t { - pumpkin_plugin_scoreboard_own_text_component_t display_name; - bool friendly_fire; - bool see_friendly_invisibles; - pumpkin_plugin_scoreboard_nametag_visibility_t nametag_visibility; - pumpkin_plugin_scoreboard_collision_rule_t collision_rule; - pumpkin_plugin_scoreboard_named_color_t color; - pumpkin_plugin_scoreboard_own_text_component_t prefix; - pumpkin_plugin_scoreboard_own_text_component_t suffix; -} pumpkin_plugin_scoreboard_team_settings_t; - -typedef struct pumpkin_plugin_scoreboard_own_scoreboard_t { - int32_t __handle; -} pumpkin_plugin_scoreboard_own_scoreboard_t; - -typedef struct pumpkin_plugin_scoreboard_borrow_scoreboard_t { - int32_t __handle; -} pumpkin_plugin_scoreboard_borrow_scoreboard_t; - -typedef pumpkin_plugin_common_position_t pumpkin_plugin_world_position_t; - -typedef pumpkin_plugin_common_entity_pose_t pumpkin_plugin_world_entity_pose_t; - -// Defines how a block reacts when pushed by a piston. -typedef uint8_t pumpkin_plugin_world_piston_behavior_t; - -// Normal behavior; the block can be pushed and pulled. -#define PUMPKIN_PLUGIN_WORLD_PISTON_BEHAVIOR_NORMAL 0 -// The block is destroyed when pushed. -#define PUMPKIN_PLUGIN_WORLD_PISTON_BEHAVIOR_DESTROY 1 -// The block cannot be pushed or pulled. -#define PUMPKIN_PLUGIN_WORLD_PISTON_BEHAVIOR_BLOCK 2 -// The block is ignored by pistons. -#define PUMPKIN_PLUGIN_WORLD_PISTON_BEHAVIOR_IGNORE 3 -// The block can only be pushed, not pulled. -#define PUMPKIN_PLUGIN_WORLD_PISTON_BEHAVIOR_PUSH_ONLY 4 - -// Categories for sounds to control their volume independently. -typedef uint8_t pumpkin_plugin_world_sound_category_t; - -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_MASTER 0 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_MUSIC 1 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_RECORDS 2 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_WEATHER 3 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_BLOCKS 4 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_HOSTILE 5 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_NEUTRAL 6 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_PLAYERS 7 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_AMBIENT 8 -#define PUMPKIN_PLUGIN_WORLD_SOUND_CATEGORY_VOICE 9 - -// Defines how an explosion interacts with blocks in the world. -typedef uint8_t pumpkin_plugin_world_explosion_interaction_t; - -// No interaction with blocks. -#define PUMPKIN_PLUGIN_WORLD_EXPLOSION_INTERACTION_NONE 0 -// Blocks are destroyed and may drop loot. -#define PUMPKIN_PLUGIN_WORLD_EXPLOSION_INTERACTION_BLOCK 1 -// Interaction typical for mob-caused explosions. -#define PUMPKIN_PLUGIN_WORLD_EXPLOSION_INTERACTION_MOB 2 -// Interaction typical for TNT explosions. -#define PUMPKIN_PLUGIN_WORLD_EXPLOSION_INTERACTION_TNT 3 -// Triggers specific block behaviors. -#define PUMPKIN_PLUGIN_WORLD_EXPLOSION_INTERACTION_TRIGGER 4 - -// Flags used to control block updates and notifications. -typedef uint8_t pumpkin_plugin_world_block_flags_t; - -// Notifies neighbor blocks of the change. -#define PUMPKIN_PLUGIN_WORLD_BLOCK_FLAGS_NOTIFY_NEIGHBORS (1 << 0) -// Notifies client listeners of the change. -#define PUMPKIN_PLUGIN_WORLD_BLOCK_FLAGS_NOTIFY_LISTENERS (1 << 1) -// Forces the block state even if it's the same. -#define PUMPKIN_PLUGIN_WORLD_BLOCK_FLAGS_FORCE_STATE (1 << 2) -// Skips dropping items when the block is removed. -#define PUMPKIN_PLUGIN_WORLD_BLOCK_FLAGS_SKIP_DROPS (1 << 3) -// Indicates the block was moved (e.g., by a piston). -#define PUMPKIN_PLUGIN_WORLD_BLOCK_FLAGS_MOVED (1 << 4) -// Skips state replacement for redstone wires. -#define PUMPKIN_PLUGIN_WORLD_BLOCK_FLAGS_SKIP_REDSTONE_WIRE_STATE_REPLACEMENT (1 << 5) -// Skips the callback when a block entity is replaced. -#define PUMPKIN_PLUGIN_WORLD_BLOCK_FLAGS_SKIP_BLOCK_ENTITY_REPLACED_CALLBACK (1 << 6) -// Skips the callback when a block is added. -#define PUMPKIN_PLUGIN_WORLD_BLOCK_FLAGS_SKIP_BLOCK_ADDED_CALLBACK (1 << 7) - -// Detailed information about a block's state. -typedef struct pumpkin_plugin_world_block_state_t { - // The internal numerical ID of the block state. - uint16_t id; - // The light level emitted by this block (0-15). - uint8_t luminance; - // How much light this block blocks. - uint8_t opacity; - // The hardness of the block, determining mining speed. - float hardness; - // Whether this block is considered air. - bool is_air; - // Whether this block is a liquid. - bool is_liquid; - // Whether this block is a solid. - bool is_solid; - // Whether this block occupies a full cube. - bool is_full_cube; - // How this block behaves when pushed by a piston. - pumpkin_plugin_world_piston_behavior_t piston_behavior; - // Whether this block receives random ticks. - bool has_random_ticks; -} pumpkin_plugin_world_block_state_t; - -// A simple wrapper for a block state ID. -typedef struct pumpkin_plugin_world_block_state_id_t { - uint16_t id; -} pumpkin_plugin_world_block_state_id_t; - -// A position in the world grid. -typedef struct pumpkin_plugin_world_block_pos_t { - int32_t x; - int32_t y; - int32_t z; -} pumpkin_plugin_world_block_pos_t; - -typedef struct pumpkin_plugin_world_own_entity_t { - int32_t __handle; -} pumpkin_plugin_world_own_entity_t; - -typedef struct pumpkin_plugin_world_borrow_entity_t { - int32_t __handle; -} pumpkin_plugin_world_borrow_entity_t; - -typedef struct pumpkin_plugin_world_own_world_t { - int32_t __handle; -} pumpkin_plugin_world_own_world_t; - -typedef struct pumpkin_plugin_world_borrow_world_t { - int32_t __handle; -} pumpkin_plugin_world_borrow_world_t; - -typedef pumpkin_plugin_text_own_text_component_t pumpkin_plugin_world_own_text_component_t; - -typedef struct { - bool is_some; - pumpkin_plugin_world_own_text_component_t val; -} pumpkin_plugin_world_option_own_text_component_t; - -typedef pumpkin_plugin_scoreboard_own_scoreboard_t pumpkin_plugin_world_own_scoreboard_t; - -typedef struct { - pumpkin_plugin_world_own_entity_t *ptr; - size_t len; -} pumpkin_plugin_world_list_own_entity_t; - -// Represents the player's permission level -// -// Permission levels determine the player's access to commands and server operations. -// Each numeric level corresponds to a specific role: -// - `Zero`: `normal`: Player can use basic commands. -// - `One`: `moderator`: Player can bypass spawn protection. -// - `Two`: `gamemaster`: Player or executor can use more commands and player can use command blocks. -// - `Three`: `admin`: Player or executor can use commands related to multiplayer management. -// - `Four`: `owner`: Player or executor can use all of the commands, including commands related to server management. -typedef uint8_t pumpkin_plugin_permission_permission_level_t; - -#define PUMPKIN_PLUGIN_PERMISSION_PERMISSION_LEVEL_ZERO 0 -#define PUMPKIN_PLUGIN_PERMISSION_PERMISSION_LEVEL_ONE 1 -#define PUMPKIN_PLUGIN_PERMISSION_PERMISSION_LEVEL_TWO 2 -#define PUMPKIN_PLUGIN_PERMISSION_PERMISSION_LEVEL_THREE 3 -#define PUMPKIN_PLUGIN_PERMISSION_PERMISSION_LEVEL_FOUR 4 - -// Describes the default behavior for permissions -typedef struct pumpkin_plugin_permission_permission_default_t { - uint8_t tag; - union { - pumpkin_plugin_permission_permission_level_t op; - } val; -} pumpkin_plugin_permission_permission_default_t; - -// Permission is not granted by default -#define PUMPKIN_PLUGIN_PERMISSION_PERMISSION_DEFAULT_DENY 0 -// Permission is granted by default -#define PUMPKIN_PLUGIN_PERMISSION_PERMISSION_DEFAULT_ALLOW 1 -// Permission is granted by default to operators -#define PUMPKIN_PLUGIN_PERMISSION_PERMISSION_DEFAULT_OP 2 - -// A child permission entry -typedef struct pumpkin_plugin_permission_permission_child_t { - plugin_string_t node; - bool value; -} pumpkin_plugin_permission_permission_child_t; - -typedef struct { - pumpkin_plugin_permission_permission_child_t *ptr; - size_t len; -} pumpkin_plugin_permission_list_permission_child_t; - -// Defines a permission node in the system -typedef struct pumpkin_plugin_permission_permission_t { - // The full node name (e.g., "minecraft:command.gamemode") - plugin_string_t node; - // Description of what this permission does - plugin_string_t description; - // The default value of this permission - pumpkin_plugin_permission_permission_default_t default_; - // Children nodes that are affected by this permission - pumpkin_plugin_permission_list_permission_child_t children; -} pumpkin_plugin_permission_permission_t; - -typedef pumpkin_plugin_common_hand_t pumpkin_plugin_player_hand_t; - -typedef pumpkin_plugin_common_item_stack_t pumpkin_plugin_player_item_stack_t; - -typedef pumpkin_plugin_common_position_t pumpkin_plugin_player_position_t; - -typedef pumpkin_plugin_common_game_mode_t pumpkin_plugin_player_game_mode_t; - -typedef pumpkin_plugin_permission_permission_level_t pumpkin_plugin_player_permission_level_t; - -// Various abilities a player can have. -typedef struct pumpkin_plugin_player_player_abilities_t { - // Whether the player is invulnerable to damage. - bool invulnerable; - // Whether the player is currently flying. - bool flying; - // Whether the player is allowed to fly. - bool allow_flying; - // Whether the player is in creative mode. - bool creative; - // Whether the player can modify the world. - bool allow_modify_world; - // The speed at which the player flies. - float fly_speed; - // The speed at which the player walks. - float walk_speed; -} pumpkin_plugin_player_player_abilities_t; - -typedef struct pumpkin_plugin_player_own_player_t { - int32_t __handle; -} pumpkin_plugin_player_own_player_t; - -typedef struct pumpkin_plugin_player_borrow_player_t { - int32_t __handle; -} pumpkin_plugin_player_borrow_player_t; - -typedef pumpkin_plugin_world_own_entity_t pumpkin_plugin_player_own_entity_t; - -typedef pumpkin_plugin_world_own_world_t pumpkin_plugin_player_own_world_t; - -typedef pumpkin_plugin_text_own_text_component_t pumpkin_plugin_player_own_text_component_t; - -typedef struct { - bool is_some; - float val; -} plugin_option_f32_t; - -typedef pumpkin_plugin_gui_own_gui_t pumpkin_plugin_player_own_gui_t; - -typedef struct { - bool is_some; - pumpkin_plugin_player_own_text_component_t val; -} pumpkin_plugin_player_option_own_text_component_t; - -typedef struct { - bool is_some; - pumpkin_plugin_player_item_stack_t val; -} pumpkin_plugin_player_option_item_stack_t; - -// Represents the difficulty setting of a Minecraft server. -typedef uint8_t pumpkin_plugin_server_difficulty_t; - -// Hostile mobs do not spawn. Players regain health automatically. -#define PUMPKIN_PLUGIN_SERVER_DIFFICULTY_PEACEFUL 0 -// Hostile mobs deal less damage. -#define PUMPKIN_PLUGIN_SERVER_DIFFICULTY_EASY 1 -// Standard Minecraft difficulty. -#define PUMPKIN_PLUGIN_SERVER_DIFFICULTY_NORMAL 2 -// Hostile mobs deal more damage. -#define PUMPKIN_PLUGIN_SERVER_DIFFICULTY_HARD 3 - -typedef struct pumpkin_plugin_server_own_server_t { - int32_t __handle; -} pumpkin_plugin_server_own_server_t; - -typedef struct pumpkin_plugin_server_borrow_server_t { - int32_t __handle; -} pumpkin_plugin_server_borrow_server_t; - -typedef pumpkin_plugin_player_own_player_t pumpkin_plugin_server_own_player_t; - -typedef struct { - pumpkin_plugin_server_own_player_t *ptr; - size_t len; -} pumpkin_plugin_server_list_own_player_t; - -typedef struct { - bool is_some; - pumpkin_plugin_server_own_player_t val; -} pumpkin_plugin_server_option_own_player_t; - -typedef pumpkin_plugin_common_block_position_t pumpkin_plugin_block_entity_block_position_t; - -typedef struct pumpkin_plugin_block_entity_own_block_entity_t { - int32_t __handle; -} pumpkin_plugin_block_entity_own_block_entity_t; - -typedef struct pumpkin_plugin_block_entity_borrow_block_entity_t { - int32_t __handle; -} pumpkin_plugin_block_entity_borrow_block_entity_t; - -typedef struct pumpkin_plugin_block_entity_own_command_block_entity_t { - int32_t __handle; -} pumpkin_plugin_block_entity_own_command_block_entity_t; - -typedef struct pumpkin_plugin_block_entity_borrow_command_block_entity_t { - int32_t __handle; -} pumpkin_plugin_block_entity_borrow_command_block_entity_t; - -typedef struct pumpkin_plugin_block_entity_block_entity_type_t { - uint8_t tag; - union { - pumpkin_plugin_block_entity_own_command_block_entity_t command_block_entity; - } val; -} pumpkin_plugin_block_entity_block_entity_type_t; - -#define PUMPKIN_PLUGIN_BLOCK_ENTITY_BLOCK_ENTITY_TYPE_COMMAND_BLOCK_ENTITY 0 - -typedef pumpkin_plugin_common_position_t pumpkin_plugin_command_position_t; - -typedef pumpkin_plugin_common_block_position_t pumpkin_plugin_command_block_position_t; - -typedef pumpkin_plugin_common_locale_t pumpkin_plugin_command_locale_t; - -typedef pumpkin_plugin_server_difficulty_t pumpkin_plugin_command_difficulty_t; - -typedef uint8_t pumpkin_plugin_command_gamemode_t; - -#define PUMPKIN_PLUGIN_COMMAND_GAMEMODE_SURVIVAL 0 -#define PUMPKIN_PLUGIN_COMMAND_GAMEMODE_CREATIVE 1 -#define PUMPKIN_PLUGIN_COMMAND_GAMEMODE_ADVENTURE 2 -#define PUMPKIN_PLUGIN_COMMAND_GAMEMODE_SPECTATOR 3 - -typedef uint8_t pumpkin_plugin_command_bossbar_color_t; - -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_COLOR_PINK 0 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_COLOR_BLUE 1 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_COLOR_RED 2 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_COLOR_GREEN 3 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_COLOR_YELLOW 4 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_COLOR_PURPLE 5 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_COLOR_WHITE 6 - -typedef uint8_t pumpkin_plugin_command_bossbar_style_t; - -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_STYLE_NO_DIVISION 0 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_STYLE_NOTCHES6 1 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_STYLE_NOTCHES10 2 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_STYLE_NOTCHES12 3 -#define PUMPKIN_PLUGIN_COMMAND_BOSSBAR_STYLE_NOTCHES20 4 - -typedef uint8_t pumpkin_plugin_command_sound_category_t; - -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_MASTER 0 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_MUSIC 1 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_RECORDS 2 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_WEATHER 3 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_BLOCKS 4 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_HOSTILE 5 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_NEUTRAL 6 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_PLAYERS 7 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_AMBIENT 8 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_VOICE 9 -#define PUMPKIN_PLUGIN_COMMAND_SOUND_CATEGORY_UI 10 - -typedef uint8_t pumpkin_plugin_command_entity_anchor_t; - -#define PUMPKIN_PLUGIN_COMMAND_ENTITY_ANCHOR_FEET 0 -#define PUMPKIN_PLUGIN_COMMAND_ENTITY_ANCHOR_EYES 1 - -typedef struct pumpkin_plugin_command_number_t { - uint8_t tag; - union { - double float64; - float float32; - int32_t int32; - int64_t int64; - } val; -} pumpkin_plugin_command_number_t; - -#define PUMPKIN_PLUGIN_COMMAND_NUMBER_FLOAT64 0 -#define PUMPKIN_PLUGIN_COMMAND_NUMBER_FLOAT32 1 -#define PUMPKIN_PLUGIN_COMMAND_NUMBER_INT32 2 -#define PUMPKIN_PLUGIN_COMMAND_NUMBER_INT64 3 - -typedef struct { - pumpkin_plugin_command_number_t f0; - pumpkin_plugin_command_number_t f1; -} pumpkin_plugin_command_tuple2_number_number_t; - -typedef struct pumpkin_plugin_command_not_in_bounds_t { - uint8_t tag; - union { - pumpkin_plugin_command_tuple2_number_number_t lower_bound; - pumpkin_plugin_command_tuple2_number_number_t upper_bound; - } val; -} pumpkin_plugin_command_not_in_bounds_t; - -#define PUMPKIN_PLUGIN_COMMAND_NOT_IN_BOUNDS_LOWER_BOUND 0 -#define PUMPKIN_PLUGIN_COMMAND_NOT_IN_BOUNDS_UPPER_BOUND 1 - -typedef pumpkin_plugin_world_own_entity_t pumpkin_plugin_command_own_entity_t; - -typedef struct { - pumpkin_plugin_command_own_entity_t *ptr; - size_t len; -} pumpkin_plugin_command_list_own_entity_t; - -typedef pumpkin_plugin_player_own_player_t pumpkin_plugin_command_own_player_t; - -typedef struct { - pumpkin_plugin_command_own_player_t *ptr; - size_t len; -} pumpkin_plugin_command_list_own_player_t; - -typedef struct { - double f0; - double f1; -} plugin_tuple2_f64_f64_t; - -typedef struct { - float f0; - bool f1; - float f2; - bool f3; -} plugin_tuple4_f32_bool_f32_bool_t; - -typedef pumpkin_plugin_text_own_text_component_t pumpkin_plugin_command_own_text_component_t; - -typedef struct { - bool is_err; - union { - pumpkin_plugin_command_number_t ok; - pumpkin_plugin_command_not_in_bounds_t err; - } val; -} pumpkin_plugin_command_result_number_not_in_bounds_t; - -typedef struct pumpkin_plugin_command_arg_t { - uint8_t tag; - union { - pumpkin_plugin_command_list_own_entity_t entities; - pumpkin_plugin_command_own_entity_t entity; - pumpkin_plugin_command_list_own_player_t players; - pumpkin_plugin_command_block_position_t block_pos; - pumpkin_plugin_command_position_t pos3d; - plugin_tuple2_f64_f64_t pos2d; - plugin_tuple4_f32_bool_f32_bool_t rotation; - pumpkin_plugin_command_gamemode_t game_mode; - pumpkin_plugin_command_difficulty_t difficulty; - plugin_string_t item; - plugin_string_t item_predicate; - plugin_string_t resource_location; - plugin_string_t block; - plugin_string_t block_predicate; - pumpkin_plugin_command_bossbar_color_t bossbar_color; - pumpkin_plugin_command_bossbar_style_t bossbar_style; - plugin_string_t particle; - plugin_string_t msg; - pumpkin_plugin_command_own_text_component_t text_component; - int32_t time; - pumpkin_plugin_command_result_number_not_in_bounds_t num; - bool bool_; - plugin_string_t simple; - pumpkin_plugin_command_sound_category_t sound_category; - plugin_string_t damage_type; - plugin_string_t effect; - plugin_string_t enchantment; - pumpkin_plugin_command_entity_anchor_t entity_anchor; - } val; -} pumpkin_plugin_command_arg_t; - -#define PUMPKIN_PLUGIN_COMMAND_ARG_ENTITIES 0 -#define PUMPKIN_PLUGIN_COMMAND_ARG_ENTITY 1 -#define PUMPKIN_PLUGIN_COMMAND_ARG_PLAYERS 2 -#define PUMPKIN_PLUGIN_COMMAND_ARG_BLOCK_POS 3 -#define PUMPKIN_PLUGIN_COMMAND_ARG_POS3D 4 -#define PUMPKIN_PLUGIN_COMMAND_ARG_POS2D 5 -#define PUMPKIN_PLUGIN_COMMAND_ARG_ROTATION 6 -#define PUMPKIN_PLUGIN_COMMAND_ARG_GAME_MODE 7 -#define PUMPKIN_PLUGIN_COMMAND_ARG_DIFFICULTY 8 -#define PUMPKIN_PLUGIN_COMMAND_ARG_ITEM 9 -#define PUMPKIN_PLUGIN_COMMAND_ARG_ITEM_PREDICATE 10 -#define PUMPKIN_PLUGIN_COMMAND_ARG_RESOURCE_LOCATION 11 -#define PUMPKIN_PLUGIN_COMMAND_ARG_BLOCK 12 -#define PUMPKIN_PLUGIN_COMMAND_ARG_BLOCK_PREDICATE 13 -#define PUMPKIN_PLUGIN_COMMAND_ARG_BOSSBAR_COLOR 14 -#define PUMPKIN_PLUGIN_COMMAND_ARG_BOSSBAR_STYLE 15 -#define PUMPKIN_PLUGIN_COMMAND_ARG_PARTICLE 16 -#define PUMPKIN_PLUGIN_COMMAND_ARG_MSG 17 -#define PUMPKIN_PLUGIN_COMMAND_ARG_TEXT_COMPONENT 18 -#define PUMPKIN_PLUGIN_COMMAND_ARG_TIME 19 -#define PUMPKIN_PLUGIN_COMMAND_ARG_NUM 20 -#define PUMPKIN_PLUGIN_COMMAND_ARG_BOOL 21 -#define PUMPKIN_PLUGIN_COMMAND_ARG_SIMPLE 22 -#define PUMPKIN_PLUGIN_COMMAND_ARG_SOUND_CATEGORY 23 -#define PUMPKIN_PLUGIN_COMMAND_ARG_DAMAGE_TYPE 24 -#define PUMPKIN_PLUGIN_COMMAND_ARG_EFFECT 25 -#define PUMPKIN_PLUGIN_COMMAND_ARG_ENCHANTMENT 26 -#define PUMPKIN_PLUGIN_COMMAND_ARG_ENTITY_ANCHOR 27 - -typedef struct pumpkin_plugin_command_own_consumed_args_t { - int32_t __handle; -} pumpkin_plugin_command_own_consumed_args_t; - -typedef struct pumpkin_plugin_command_borrow_consumed_args_t { - int32_t __handle; -} pumpkin_plugin_command_borrow_consumed_args_t; - -typedef pumpkin_plugin_block_entity_own_command_block_entity_t pumpkin_plugin_command_own_command_block_entity_t; - -typedef pumpkin_plugin_world_own_world_t pumpkin_plugin_command_own_world_t; - -typedef struct { - pumpkin_plugin_command_own_command_block_entity_t f0; - pumpkin_plugin_command_own_world_t f1; -} pumpkin_plugin_command_tuple2_own_command_block_entity_own_world_t; - -typedef struct pumpkin_plugin_command_command_sender_type_t { - uint8_t tag; - union { - pumpkin_plugin_command_own_player_t player; - pumpkin_plugin_command_tuple2_own_command_block_entity_own_world_t command_block; - } val; -} pumpkin_plugin_command_command_sender_type_t; - -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_SENDER_TYPE_RCON 0 -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_SENDER_TYPE_CONSOLE 1 -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_SENDER_TYPE_PLAYER 2 -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_SENDER_TYPE_COMMAND_BLOCK 3 -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_SENDER_TYPE_DUMMY 4 - -typedef uint8_t pumpkin_plugin_command_permission_level_t; - -#define PUMPKIN_PLUGIN_COMMAND_PERMISSION_LEVEL_ZERO 0 -#define PUMPKIN_PLUGIN_COMMAND_PERMISSION_LEVEL_ONE 1 -#define PUMPKIN_PLUGIN_COMMAND_PERMISSION_LEVEL_TWO 2 -#define PUMPKIN_PLUGIN_COMMAND_PERMISSION_LEVEL_THREE 3 -#define PUMPKIN_PLUGIN_COMMAND_PERMISSION_LEVEL_FOUR 4 - -typedef struct pumpkin_plugin_command_own_command_sender_t { - int32_t __handle; -} pumpkin_plugin_command_own_command_sender_t; - -typedef struct pumpkin_plugin_command_borrow_command_sender_t { - int32_t __handle; -} pumpkin_plugin_command_borrow_command_sender_t; - -typedef uint8_t pumpkin_plugin_command_string_type_t; - -#define PUMPKIN_PLUGIN_COMMAND_STRING_TYPE_SINGLE_WORD 0 -#define PUMPKIN_PLUGIN_COMMAND_STRING_TYPE_QUOTABLE 1 -#define PUMPKIN_PLUGIN_COMMAND_STRING_TYPE_GREEDY 2 - -typedef struct { - plugin_option_f32_t f0; - plugin_option_f32_t f1; -} plugin_tuple2_option_f32_option_f32_t; - -typedef struct { - bool is_some; - double val; -} plugin_option_f64_t; - -typedef struct { - plugin_option_f64_t f0; - plugin_option_f64_t f1; -} plugin_tuple2_option_f64_option_f64_t; - -typedef struct { - bool is_some; - int32_t val; -} plugin_option_s32_t; - -typedef struct { - plugin_option_s32_t f0; - plugin_option_s32_t f1; -} plugin_tuple2_option_s32_option_s32_t; - -typedef struct { - bool is_some; - int64_t val; -} plugin_option_s64_t; - -typedef struct { - plugin_option_s64_t f0; - plugin_option_s64_t f1; -} plugin_tuple2_option_s64_option_s64_t; - -typedef struct pumpkin_plugin_command_argument_type_t { - uint8_t tag; - union { - plugin_tuple2_option_f32_option_f32_t float_; - plugin_tuple2_option_f64_option_f64_t double_; - plugin_tuple2_option_s32_option_s32_t integer; - plugin_tuple2_option_s64_option_s64_t long_; - pumpkin_plugin_command_string_type_t string; - int32_t time; - plugin_string_t resource; - } val; -} pumpkin_plugin_command_argument_type_t; - -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_BOOL 0 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_FLOAT 1 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_DOUBLE 2 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_INTEGER 3 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_LONG 4 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_STRING 5 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_ENTITIES 6 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_ENTITY 7 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_PLAYERS 8 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_GAME_PROFILE 9 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_BLOCK_POS 10 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_POSITION3D 11 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_POSITION2D 12 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_BLOCK_STATE 13 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_BLOCK_PREDICATE 14 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_ITEM 15 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_ITEM_PREDICATE 16 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_COMPONENT 17 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_ROTATION 18 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_RESOURCE_LOCATION 19 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_ENTITY_ANCHOR 20 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_GAMEMODE 21 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_DIFFICULTY 22 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_TIME 23 -#define PUMPKIN_PLUGIN_COMMAND_ARGUMENT_TYPE_RESOURCE 24 - -typedef struct { - bool is_some; - plugin_string_t val; -} plugin_option_string_t; - -typedef struct pumpkin_plugin_command_command_error_t { - uint8_t tag; - union { - plugin_option_string_t invalid_consumption; - pumpkin_plugin_command_own_text_component_t command_failed; - } val; -} pumpkin_plugin_command_command_error_t; - -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_ERROR_INVALID_CONSUMPTION 0 -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_ERROR_INVALID_REQUIREMENT 1 -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_ERROR_PERMISSION_DENIED 2 -#define PUMPKIN_PLUGIN_COMMAND_COMMAND_ERROR_COMMAND_FAILED 3 - -typedef struct pumpkin_plugin_command_own_command_node_t { - int32_t __handle; -} pumpkin_plugin_command_own_command_node_t; - -typedef struct pumpkin_plugin_command_borrow_command_node_t { - int32_t __handle; -} pumpkin_plugin_command_borrow_command_node_t; - -typedef struct pumpkin_plugin_command_own_command_t { - int32_t __handle; -} pumpkin_plugin_command_own_command_t; - -typedef struct pumpkin_plugin_command_borrow_command_t { - int32_t __handle; -} pumpkin_plugin_command_borrow_command_t; - -typedef struct { - bool is_some; - pumpkin_plugin_command_own_player_t val; -} pumpkin_plugin_command_option_own_player_t; - -typedef pumpkin_plugin_server_borrow_server_t pumpkin_plugin_command_borrow_server_t; - -typedef struct { - bool is_some; - pumpkin_plugin_command_position_t val; -} plugin_option_position_t; - -typedef struct { - bool is_some; - pumpkin_plugin_command_own_world_t val; -} pumpkin_plugin_command_option_own_world_t; - -typedef struct { - plugin_string_t *ptr; - size_t len; -} plugin_list_string_t; - -typedef pumpkin_plugin_common_block_position_t pumpkin_plugin_event_block_position_t; - -typedef pumpkin_plugin_common_game_mode_t pumpkin_plugin_event_game_mode_t; - -typedef pumpkin_plugin_common_hand_t pumpkin_plugin_event_hand_t; - -typedef pumpkin_plugin_common_item_stack_t pumpkin_plugin_event_item_stack_t; - -typedef pumpkin_plugin_common_position_t pumpkin_plugin_event_position_t; - -typedef uint8_t pumpkin_plugin_event_event_priority_t; - -#define PUMPKIN_PLUGIN_EVENT_EVENT_PRIORITY_HIGHEST 0 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PRIORITY_HIGH 1 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PRIORITY_NORMAL 2 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PRIORITY_LOW 3 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PRIORITY_LOWEST 4 - -typedef pumpkin_plugin_player_own_player_t pumpkin_plugin_event_own_player_t; - -typedef pumpkin_plugin_text_own_text_component_t pumpkin_plugin_event_own_text_component_t; - -typedef struct pumpkin_plugin_event_player_join_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_own_text_component_t join_message; - bool cancelled; -} pumpkin_plugin_event_player_join_event_data_t; - -typedef struct pumpkin_plugin_event_player_leave_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_own_text_component_t leave_message; - bool cancelled; -} pumpkin_plugin_event_player_leave_event_data_t; - -typedef struct pumpkin_plugin_event_player_login_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_own_text_component_t kick_message; - bool cancelled; -} pumpkin_plugin_event_player_login_event_data_t; - -typedef struct { - pumpkin_plugin_event_own_player_t *ptr; - size_t len; -} pumpkin_plugin_event_list_own_player_t; - -typedef struct pumpkin_plugin_event_player_chat_event_data_t { - pumpkin_plugin_event_own_player_t player; - plugin_string_t message; - pumpkin_plugin_event_list_own_player_t recipients; - bool cancelled; -} pumpkin_plugin_event_player_chat_event_data_t; - -typedef struct pumpkin_plugin_event_player_command_send_event_data_t { - pumpkin_plugin_event_own_player_t player; - plugin_string_t command; - bool cancelled; -} pumpkin_plugin_event_player_command_send_event_data_t; - -typedef struct pumpkin_plugin_event_player_permission_check_event_data_t { - pumpkin_plugin_event_own_player_t player; - plugin_string_t permission; - bool permission_result; -} pumpkin_plugin_event_player_permission_check_event_data_t; - -typedef struct pumpkin_plugin_event_player_move_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_position_t from_position; - pumpkin_plugin_event_position_t to_position; - bool cancelled; -} pumpkin_plugin_event_player_move_event_data_t; - -typedef struct pumpkin_plugin_event_player_teleport_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_position_t from_position; - pumpkin_plugin_event_position_t to_position; - bool cancelled; -} pumpkin_plugin_event_player_teleport_event_data_t; - -typedef pumpkin_plugin_world_own_world_t pumpkin_plugin_event_own_world_t; - -typedef struct pumpkin_plugin_event_player_change_world_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_own_world_t previous_world; - pumpkin_plugin_event_own_world_t new_world; - pumpkin_plugin_event_position_t position; - float yaw; - float pitch; - bool cancelled; -} pumpkin_plugin_event_player_change_world_event_data_t; - -typedef struct pumpkin_plugin_event_player_exp_change_event_data_t { - pumpkin_plugin_event_own_player_t player; - int32_t amount; -} pumpkin_plugin_event_player_exp_change_event_data_t; - -typedef struct pumpkin_plugin_event_player_item_held_event_data_t { - pumpkin_plugin_event_own_player_t player; - uint8_t previous_slot; - uint8_t new_slot; - bool cancelled; -} pumpkin_plugin_event_player_item_held_event_data_t; - -typedef struct pumpkin_plugin_event_player_changed_main_hand_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_hand_t main_hand; -} pumpkin_plugin_event_player_changed_main_hand_event_data_t; - -typedef struct pumpkin_plugin_event_player_gamemode_change_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_game_mode_t previous_gamemode; - pumpkin_plugin_event_game_mode_t new_gamemode; - bool cancelled; -} pumpkin_plugin_event_player_gamemode_change_event_data_t; - -typedef struct pumpkin_plugin_event_player_custom_payload_event_data_t { - pumpkin_plugin_event_own_player_t player; - plugin_string_t channel; - plugin_list_u8_t data; -} pumpkin_plugin_event_player_custom_payload_event_data_t; - -typedef uint8_t pumpkin_plugin_event_player_fish_state_t; - -#define PUMPKIN_PLUGIN_EVENT_PLAYER_FISH_STATE_FISHING 0 -#define PUMPKIN_PLUGIN_EVENT_PLAYER_FISH_STATE_CAUGHT_FISH 1 -#define PUMPKIN_PLUGIN_EVENT_PLAYER_FISH_STATE_CAUGHT_ENTITY 2 -#define PUMPKIN_PLUGIN_EVENT_PLAYER_FISH_STATE_IN_GROUND 3 -#define PUMPKIN_PLUGIN_EVENT_PLAYER_FISH_STATE_FAILED_ATTEMPT 4 -#define PUMPKIN_PLUGIN_EVENT_PLAYER_FISH_STATE_REEL_IN 5 -#define PUMPKIN_PLUGIN_EVENT_PLAYER_FISH_STATE_BITE 6 - -typedef struct pumpkin_plugin_event_player_fish_event_data_t { - pumpkin_plugin_event_own_player_t player; - plugin_option_string_t caught_uuid; - plugin_string_t caught_type; - plugin_string_t hook_uuid; - pumpkin_plugin_event_player_fish_state_t state; - pumpkin_plugin_event_hand_t hand; - int32_t exp_to_drop; - bool cancelled; -} pumpkin_plugin_event_player_fish_event_data_t; - -typedef struct pumpkin_plugin_event_player_egg_throw_event_data_t { - pumpkin_plugin_event_own_player_t player; - plugin_string_t egg_uuid; - bool hatching; - uint8_t num_hatches; - plugin_string_t hatching_type; - bool cancelled; -} pumpkin_plugin_event_player_egg_throw_event_data_t; - -typedef uint8_t pumpkin_plugin_event_entity_interaction_action_t; - -#define PUMPKIN_PLUGIN_EVENT_ENTITY_INTERACTION_ACTION_INTERACT 0 -#define PUMPKIN_PLUGIN_EVENT_ENTITY_INTERACTION_ACTION_ATTACK 1 -#define PUMPKIN_PLUGIN_EVENT_ENTITY_INTERACTION_ACTION_INTERACT_AT 2 - -typedef uint8_t pumpkin_plugin_event_interact_action_t; - -#define PUMPKIN_PLUGIN_EVENT_INTERACT_ACTION_LEFT_CLICK_BLOCK 0 -#define PUMPKIN_PLUGIN_EVENT_INTERACT_ACTION_LEFT_CLICK_AIR 1 -#define PUMPKIN_PLUGIN_EVENT_INTERACT_ACTION_RIGHT_CLICK_AIR 2 -#define PUMPKIN_PLUGIN_EVENT_INTERACT_ACTION_RIGHT_CLICK_BLOCK 3 - -typedef struct { - bool is_some; - pumpkin_plugin_event_block_position_t val; -} plugin_option_block_position_t; - -typedef struct pumpkin_plugin_event_player_interact_event_data_t { - pumpkin_plugin_event_own_player_t player; - pumpkin_plugin_event_interact_action_t action; - plugin_option_block_position_t clicked_pos; - pumpkin_plugin_event_item_stack_t item; - plugin_string_t block; - bool cancelled; -} pumpkin_plugin_event_player_interact_event_data_t; - -typedef struct pumpkin_plugin_event_player_toggle_sneak_event_data_t { - pumpkin_plugin_event_own_player_t player; - bool is_sneaking; - bool cancelled; -} pumpkin_plugin_event_player_toggle_sneak_event_data_t; - -typedef struct pumpkin_plugin_event_player_toggle_flight_event_data_t { - pumpkin_plugin_event_own_player_t player; - bool is_flying; - bool cancelled; -} pumpkin_plugin_event_player_toggle_flight_event_data_t; - -typedef struct pumpkin_plugin_event_player_toggle_sprint_event_data_t { - pumpkin_plugin_event_own_player_t player; - bool is_sprinting; - bool cancelled; -} pumpkin_plugin_event_player_toggle_sprint_event_data_t; - -typedef struct pumpkin_plugin_event_player_interact_unknown_entity_event_data_t { - pumpkin_plugin_event_own_player_t player; - int32_t entity_id; - pumpkin_plugin_event_entity_interaction_action_t action; - bool cancelled; -} pumpkin_plugin_event_player_interact_unknown_entity_event_data_t; - -typedef struct pumpkin_plugin_event_block_redstone_event_data_t { - pumpkin_plugin_event_own_world_t target_world; - uint16_t state_id; - pumpkin_plugin_event_block_position_t block_position; - int32_t old_current; - int32_t new_current; - bool cancelled; -} pumpkin_plugin_event_block_redstone_event_data_t; - -typedef struct { - bool is_some; - pumpkin_plugin_event_own_player_t val; -} pumpkin_plugin_event_option_own_player_t; - -typedef struct pumpkin_plugin_event_block_break_event_data_t { - pumpkin_plugin_event_option_own_player_t player; - plugin_string_t block; - pumpkin_plugin_event_block_position_t block_position; - uint32_t exp; - bool should_drop; - bool cancelled; -} pumpkin_plugin_event_block_break_event_data_t; - -typedef struct pumpkin_plugin_event_block_burn_event_data_t { - plugin_string_t igniting_block; - plugin_string_t block; - bool cancelled; -} pumpkin_plugin_event_block_burn_event_data_t; - -typedef struct pumpkin_plugin_event_block_can_build_event_data_t { - plugin_string_t block_to_build; - bool buildable; - pumpkin_plugin_event_own_player_t player; - plugin_string_t block; - bool cancelled; -} pumpkin_plugin_event_block_can_build_event_data_t; - -typedef struct pumpkin_plugin_event_block_grow_event_data_t { - pumpkin_plugin_event_own_world_t target_world; - plugin_string_t old_block; - uint16_t old_state_id; - plugin_string_t new_block; - uint16_t new_state_id; - pumpkin_plugin_event_block_position_t block_position; - bool cancelled; -} pumpkin_plugin_event_block_grow_event_data_t; - -typedef struct pumpkin_plugin_event_block_place_event_data_t { - pumpkin_plugin_event_own_player_t player; - plugin_string_t block_placed; - plugin_string_t block_placed_against; - pumpkin_plugin_event_block_position_t block_position; - bool can_build; - bool cancelled; -} pumpkin_plugin_event_block_place_event_data_t; - -typedef struct pumpkin_plugin_event_server_command_event_data_t { - plugin_string_t command; - bool cancelled; -} pumpkin_plugin_event_server_command_event_data_t; - -typedef struct pumpkin_plugin_event_spawn_change_event_data_t { - pumpkin_plugin_event_own_world_t target_world; - pumpkin_plugin_event_block_position_t previous_position; - float previous_yaw; - float previous_pitch; - pumpkin_plugin_event_block_position_t new_position; - float new_yaw; - float new_pitch; -} pumpkin_plugin_event_spawn_change_event_data_t; - -typedef struct pumpkin_plugin_event_server_broadcast_event_data_t { - pumpkin_plugin_event_own_text_component_t message; - pumpkin_plugin_event_own_text_component_t sender; - bool cancelled; -} pumpkin_plugin_event_server_broadcast_event_data_t; - -typedef uint8_t pumpkin_plugin_event_event_type_t; - -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_JOIN_EVENT 0 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_LEAVE_EVENT 1 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_LOGIN_EVENT 2 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_CHAT_EVENT 3 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_COMMAND_SEND_EVENT 4 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_PERMISSION_CHECK_EVENT 5 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_MOVE_EVENT 6 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_TELEPORT_EVENT 7 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_CHANGE_WORLD_EVENT 8 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_EXP_CHANGE_EVENT 9 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_ITEM_HELD_EVENT 10 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_CHANGED_MAIN_HAND_EVENT 11 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_GAMEMODE_CHANGE_EVENT 12 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_CUSTOM_PAYLOAD_EVENT 13 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_FISH_EVENT 14 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_EGG_THROW_EVENT 15 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_INTERACT_UNKNOWN_ENTITY_EVENT 16 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_INTERACT_EVENT 17 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_TOGGLE_SNEAK_EVENT 18 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_TOGGLE_FLIGHT_EVENT 19 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_PLAYER_TOGGLE_SPRINT_EVENT 20 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_BLOCK_REDSTONE_EVENT 21 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_BLOCK_BREAK_EVENT 22 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_BLOCK_BURN_EVENT 23 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_BLOCK_CAN_BUILD_EVENT 24 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_BLOCK_GROW_EVENT 25 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_BLOCK_PLACE_EVENT 26 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_SERVER_COMMAND_EVENT 27 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_SPAWN_CHANGE_EVENT 28 -#define PUMPKIN_PLUGIN_EVENT_EVENT_TYPE_SERVER_BROADCAST_EVENT 29 - -typedef struct pumpkin_plugin_event_event_t { - uint8_t tag; - union { - pumpkin_plugin_event_player_join_event_data_t player_join_event; - pumpkin_plugin_event_player_leave_event_data_t player_leave_event; - pumpkin_plugin_event_player_login_event_data_t player_login_event; - pumpkin_plugin_event_player_chat_event_data_t player_chat_event; - pumpkin_plugin_event_player_command_send_event_data_t player_command_send_event; - pumpkin_plugin_event_player_permission_check_event_data_t player_permission_check_event; - pumpkin_plugin_event_player_move_event_data_t player_move_event; - pumpkin_plugin_event_player_teleport_event_data_t player_teleport_event; - pumpkin_plugin_event_player_change_world_event_data_t player_change_world_event; - pumpkin_plugin_event_player_exp_change_event_data_t player_exp_change_event; - pumpkin_plugin_event_player_item_held_event_data_t player_item_held_event; - pumpkin_plugin_event_player_changed_main_hand_event_data_t player_changed_main_hand_event; - pumpkin_plugin_event_player_gamemode_change_event_data_t player_gamemode_change_event; - pumpkin_plugin_event_player_custom_payload_event_data_t player_custom_payload_event; - pumpkin_plugin_event_player_fish_event_data_t player_fish_event; - pumpkin_plugin_event_player_egg_throw_event_data_t player_egg_throw_event; - pumpkin_plugin_event_player_interact_unknown_entity_event_data_t player_interact_unknown_entity_event; - pumpkin_plugin_event_player_interact_event_data_t player_interact_event; - pumpkin_plugin_event_player_toggle_sneak_event_data_t player_toggle_sneak_event; - pumpkin_plugin_event_player_toggle_flight_event_data_t player_toggle_flight_event; - pumpkin_plugin_event_player_toggle_sprint_event_data_t player_toggle_sprint_event; - pumpkin_plugin_event_block_redstone_event_data_t block_redstone_event; - pumpkin_plugin_event_block_break_event_data_t block_break_event; - pumpkin_plugin_event_block_burn_event_data_t block_burn_event; - pumpkin_plugin_event_block_can_build_event_data_t block_can_build_event; - pumpkin_plugin_event_block_grow_event_data_t block_grow_event; - pumpkin_plugin_event_block_place_event_data_t block_place_event; - pumpkin_plugin_event_server_command_event_data_t server_command_event; - pumpkin_plugin_event_spawn_change_event_data_t spawn_change_event; - pumpkin_plugin_event_server_broadcast_event_data_t server_broadcast_event; - } val; -} pumpkin_plugin_event_event_t; - -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_JOIN_EVENT 0 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_LEAVE_EVENT 1 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_LOGIN_EVENT 2 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_CHAT_EVENT 3 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_COMMAND_SEND_EVENT 4 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_PERMISSION_CHECK_EVENT 5 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_MOVE_EVENT 6 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_TELEPORT_EVENT 7 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_CHANGE_WORLD_EVENT 8 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_EXP_CHANGE_EVENT 9 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_ITEM_HELD_EVENT 10 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_CHANGED_MAIN_HAND_EVENT 11 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_GAMEMODE_CHANGE_EVENT 12 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_CUSTOM_PAYLOAD_EVENT 13 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_FISH_EVENT 14 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_EGG_THROW_EVENT 15 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_INTERACT_UNKNOWN_ENTITY_EVENT 16 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_INTERACT_EVENT 17 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_TOGGLE_SNEAK_EVENT 18 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_TOGGLE_FLIGHT_EVENT 19 -#define PUMPKIN_PLUGIN_EVENT_EVENT_PLAYER_TOGGLE_SPRINT_EVENT 20 -#define PUMPKIN_PLUGIN_EVENT_EVENT_BLOCK_REDSTONE_EVENT 21 -#define PUMPKIN_PLUGIN_EVENT_EVENT_BLOCK_BREAK_EVENT 22 -#define PUMPKIN_PLUGIN_EVENT_EVENT_BLOCK_BURN_EVENT 23 -#define PUMPKIN_PLUGIN_EVENT_EVENT_BLOCK_CAN_BUILD_EVENT 24 -#define PUMPKIN_PLUGIN_EVENT_EVENT_BLOCK_GROW_EVENT 25 -#define PUMPKIN_PLUGIN_EVENT_EVENT_BLOCK_PLACE_EVENT 26 -#define PUMPKIN_PLUGIN_EVENT_EVENT_SERVER_COMMAND_EVENT 27 -#define PUMPKIN_PLUGIN_EVENT_EVENT_SPAWN_CHANGE_EVENT 28 -#define PUMPKIN_PLUGIN_EVENT_EVENT_SERVER_BROADCAST_EVENT 29 - -typedef pumpkin_plugin_event_event_type_t pumpkin_plugin_context_event_type_t; - -typedef pumpkin_plugin_event_event_priority_t pumpkin_plugin_context_event_priority_t; - -typedef pumpkin_plugin_permission_permission_t pumpkin_plugin_context_permission_t; - -typedef struct pumpkin_plugin_context_own_context_t { - int32_t __handle; -} pumpkin_plugin_context_own_context_t; - -typedef struct pumpkin_plugin_context_borrow_context_t { - int32_t __handle; -} pumpkin_plugin_context_borrow_context_t; - -typedef pumpkin_plugin_command_own_command_t pumpkin_plugin_context_own_command_t; - -typedef struct { - bool is_err; - union { - plugin_string_t err; - } val; -} pumpkin_plugin_context_result_void_string_t; - -typedef pumpkin_plugin_server_own_server_t pumpkin_plugin_context_own_server_t; - -typedef pumpkin_plugin_common_locale_t pumpkin_plugin_i18n_locale_t; - -typedef pumpkin_plugin_event_event_t plugin_event_t; - -typedef pumpkin_plugin_command_command_error_t plugin_command_error_t; - -typedef pumpkin_plugin_context_own_context_t plugin_own_context_t; - -typedef pumpkin_plugin_server_own_server_t plugin_own_server_instance_t; - -typedef pumpkin_plugin_command_own_command_sender_t plugin_own_command_sender_t; - -typedef pumpkin_plugin_command_own_consumed_args_t plugin_own_consumed_args_t; - -typedef struct { - bool is_err; - union { - int32_t ok; - plugin_command_error_t err; - } val; -} plugin_result_s32_command_error_t; - -typedef struct exports_pumpkin_plugin_metadata_plugin_metadata_t { - // Name of the plugin. - plugin_string_t name; - // Plugin version (semver). - plugin_string_t version; - // Plugin authors. - plugin_list_string_t authors; - // Short description of the plugin. - plugin_string_t description; - // Plugin dependencies. - plugin_list_string_t dependencies; -} exports_pumpkin_plugin_metadata_plugin_metadata_t; - -// Serialized text component as a postcard byte array. -// @deprecated Use the text-component resource from the text interface instead. -typedef struct exports_pumpkin_plugin_common_raw_text_component_t { - uint8_t *ptr; - size_t len; -} exports_pumpkin_plugin_common_raw_text_component_t; - -// A position in the world grid (integers). -typedef struct exports_pumpkin_plugin_common_block_position_t { - int32_t f0; - int32_t f1; - int32_t f2; -} exports_pumpkin_plugin_common_block_position_t; - -// A precise coordinate in the world (floats). -typedef struct exports_pumpkin_plugin_common_position_t { - double f0; - double f1; - double f2; -} exports_pumpkin_plugin_common_position_t; - -// Represents the hands of a player. -typedef uint8_t exports_pumpkin_plugin_common_hand_t; - -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_HAND_LEFT 0 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_HAND_RIGHT 1 - -// Represents the game modes available in Minecraft. -typedef uint8_t exports_pumpkin_plugin_common_game_mode_t; - -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_GAME_MODE_SURVIVAL 0 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_GAME_MODE_CREATIVE 1 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_GAME_MODE_ADVENTURE 2 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_GAME_MODE_SPECTATOR 3 - -// The 16 base Minecraft colors. -typedef uint8_t exports_pumpkin_plugin_common_named_color_t; - -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_BLACK 0 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_BLUE 1 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_GREEN 2 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_AQUA 3 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_RED 4 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_PURPLE 5 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_GOLD 6 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_GRAY 7 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_DARK_GRAY 8 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_BLUE 9 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_GREEN 10 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_AQUA 11 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_RED 12 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_LIGHT_PURPLE 13 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_YELLOW 14 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_NAMED_COLOR_WHITE 15 - -// An RGB color represented by its red, green, and blue components. -typedef struct exports_pumpkin_plugin_common_rgb_color_t { - uint8_t r; - uint8_t g; - uint8_t b; -} exports_pumpkin_plugin_common_rgb_color_t; - -// An ARGB color with alpha (transparency) channel. -typedef struct exports_pumpkin_plugin_common_argb_color_t { - uint8_t a; - uint8_t r; - uint8_t g; - uint8_t b; -} exports_pumpkin_plugin_common_argb_color_t; - -// Represents a stack of items with its type and count. -typedef struct exports_pumpkin_plugin_common_item_stack_t { - // The unique registry key (e.g., "minecraft:diamond"). - plugin_string_t registry_key; - // The number of items in the stack. - uint8_t count; -} exports_pumpkin_plugin_common_item_stack_t; - -// Represents the various poses an entity can be in. -typedef uint8_t exports_pumpkin_plugin_common_entity_pose_t; - -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_STANDING 0 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_FALL_FLYING 1 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SLEEPING 2 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SWIMMING 3 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SPIN_ATTACK 4 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_CROUCHING 5 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_LONG_JUMPING 6 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_DYING 7 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_CROAKING 8 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_USING_TONGUE 9 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SITTING 10 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_ROARING 11 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SNIFFING 12 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_EMERGING 13 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_DIGGING 14 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SLIDING 15 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_SHOOTING 16 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_ENTITY_POSE_INHALING 17 - -// All Minecraft-supported locales. -typedef uint8_t exports_pumpkin_plugin_common_locale_t; - -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_AF_ZA 0 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_AR_SA 1 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_AST_ES 2 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_AZ_AZ 3 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_BA_RU 4 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_BAR 5 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_BE_BY 6 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_BG_BG 7 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_BR_FR 8 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_BRB 9 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_BS_BA 10 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_CA_ES 11 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_CS_CZ 12 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_CY_GB 13 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_DA_DK 14 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_DE_AT 15 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_DE_CH 16 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_DE_DE 17 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EL_GR 18 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EN_AU 19 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EN_CA 20 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EN_GB 21 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EN_NZ 22 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EN_PT 23 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EN_UD 24 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EN_US 25 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ENP 26 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ENWS 27 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EO_UY 28 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ES_AR 29 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ES_CL 30 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ES_EC 31 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ES_ES 32 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ES_MX 33 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ES_UY 34 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ES_VE 35 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ESAN 36 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ET_EE 37 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_EU_ES 38 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FA_IR 39 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FI_FI 40 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FIL_PH 41 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FO_FO 42 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FR_CA 43 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FR_FR 44 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FRA_DE 45 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FUR_IT 46 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_FY_NL 47 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_GA_IE 48 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_GD_GB 49 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_GL_ES 50 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_HAW_US 51 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_HE_IL 52 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_HI_IN 53 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_HR_HR 54 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_HU_HU 55 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_HY_AM 56 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ID_ID 57 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_IG_NG 58 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_IO_EN 59 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_IS_IS 60 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ISV 61 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_IT_IT 62 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_JA_JP 63 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_JBO_EN 64 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_KA_GE 65 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_KK_KZ 66 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_KN_IN 67 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_KO_KR 68 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_KSH 69 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_KW_GB 70 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LA_LA 71 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LB_LU 72 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LI_LI 73 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LMO 74 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LO_LA 75 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LOL_US 76 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LT_LT 77 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LV_LV 78 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_LZH 79 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_MK_MK 80 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_MN_MN 81 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_MS_MY 82 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_MT_MT 83 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_NAH 84 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_NDS_DE 85 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_NL_BE 86 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_NL_NL 87 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_NN_NO 88 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_NO_NO 89 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_OC_FR 90 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_OVD 91 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_PL_PL 92 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_PT_BR 93 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_PT_PT 94 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_QYA_AA 95 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_RO_RO 96 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_RPR 97 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_RU_RU 98 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_RY_UA 99 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SAH_SAH 100 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SE_NO 101 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SK_SK 102 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SL_SI 103 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SO_SO 104 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SQ_AL 105 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SR_CS 106 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SR_SP 107 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SV_SE 108 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SXU 109 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_SZL 110 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_TA_IN 111 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_TH_TH 112 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_TL_PH 113 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_TLH_AA 114 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_TOK 115 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_TR_TR 116 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_TT_RU 117 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_UK_UA 118 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_VAL_ES 119 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_VEC_IT 120 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_VI_VN 121 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_YI_DE 122 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_YO_NG 123 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ZH_CN 124 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ZH_HK 125 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ZH_TW 126 -#define EXPORTS_PUMPKIN_PLUGIN_COMMON_LOCALE_ZLM_ARAB 127 - -// Imported Functions from `pumpkin:plugin/logging` -// log any general purpose message -extern void pumpkin_plugin_logging_log(pumpkin_plugin_logging_level_t level, plugin_string_t *message); -// This function is meant to be used by the tracing crate. -extern void pumpkin_plugin_logging_log_tracing(plugin_list_u8_t *event); - -// Imported Functions from `pumpkin:plugin/text` -extern pumpkin_plugin_text_own_text_component_t pumpkin_plugin_text_static_text_component_text(plugin_string_t *plain); -extern pumpkin_plugin_text_own_text_component_t pumpkin_plugin_text_static_text_component_translate(plugin_string_t *key, pumpkin_plugin_text_list_own_text_component_t *with); -extern void pumpkin_plugin_text_method_text_component_add_child(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_own_text_component_t child); -extern void pumpkin_plugin_text_method_text_component_add_text(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *text); -extern void pumpkin_plugin_text_method_text_component_get_text(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *ret); -extern void pumpkin_plugin_text_method_text_component_encode(pumpkin_plugin_text_borrow_text_component_t self, plugin_list_u8_t *ret); -// Style -extern void pumpkin_plugin_text_method_text_component_color_named(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_named_color_t color); -extern void pumpkin_plugin_text_method_text_component_color_rgb(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_rgb_color_t *color); -extern void pumpkin_plugin_text_method_text_component_bold(pumpkin_plugin_text_borrow_text_component_t self, bool value); -extern void pumpkin_plugin_text_method_text_component_italic(pumpkin_plugin_text_borrow_text_component_t self, bool value); -extern void pumpkin_plugin_text_method_text_component_underlined(pumpkin_plugin_text_borrow_text_component_t self, bool value); -extern void pumpkin_plugin_text_method_text_component_strikethrough(pumpkin_plugin_text_borrow_text_component_t self, bool value); -extern void pumpkin_plugin_text_method_text_component_obfuscated(pumpkin_plugin_text_borrow_text_component_t self, bool value); -// Text inserted into chat when shift-clicked -extern void pumpkin_plugin_text_method_text_component_insertion(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *text); -extern void pumpkin_plugin_text_method_text_component_font(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *font); -extern void pumpkin_plugin_text_method_text_component_shadow_color(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_argb_color_t *color); -// Click events -extern void pumpkin_plugin_text_method_text_component_click_open_url(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *url); -extern void pumpkin_plugin_text_method_text_component_click_run_command(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *command); -extern void pumpkin_plugin_text_method_text_component_click_suggest_command(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *command); -extern void pumpkin_plugin_text_method_text_component_click_copy_to_clipboard(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *text); -// Hover events -extern void pumpkin_plugin_text_method_text_component_hover_show_text(pumpkin_plugin_text_borrow_text_component_t self, pumpkin_plugin_text_own_text_component_t text); -// Item data as SNBT string -extern void pumpkin_plugin_text_method_text_component_hover_show_item(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *item); -extern void pumpkin_plugin_text_method_text_component_hover_show_entity(pumpkin_plugin_text_borrow_text_component_t self, plugin_string_t *entity_type, plugin_string_t *id, pumpkin_plugin_text_own_text_component_t *maybe_name); - -// Imported Functions from `pumpkin:plugin/gui` -extern pumpkin_plugin_gui_own_gui_t pumpkin_plugin_gui_constructor_gui(pumpkin_plugin_gui_gui_type_t type, pumpkin_plugin_gui_own_text_component_t title); -extern void pumpkin_plugin_gui_method_gui_set_item(pumpkin_plugin_gui_borrow_gui_t self, uint32_t slot, pumpkin_plugin_gui_item_stack_t *item); -extern bool pumpkin_plugin_gui_method_gui_get_item(pumpkin_plugin_gui_borrow_gui_t self, uint32_t slot, pumpkin_plugin_gui_item_stack_t *ret); - -// Imported Functions from `pumpkin:plugin/scoreboard` -extern void pumpkin_plugin_scoreboard_method_scoreboard_add_objective(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name, pumpkin_plugin_scoreboard_own_text_component_t display_name, pumpkin_plugin_scoreboard_render_type_t render_type); -extern void pumpkin_plugin_scoreboard_method_scoreboard_remove_objective(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name); -extern void pumpkin_plugin_scoreboard_method_scoreboard_set_display_slot(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, pumpkin_plugin_scoreboard_display_slot_t slot, plugin_string_t *objective_name); -extern void pumpkin_plugin_scoreboard_method_scoreboard_update_score(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *entity_name, plugin_string_t *objective_name, int32_t value); -extern void pumpkin_plugin_scoreboard_method_scoreboard_remove_score(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *entity_name, plugin_string_t *objective_name); -extern void pumpkin_plugin_scoreboard_method_scoreboard_create_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name, pumpkin_plugin_scoreboard_team_settings_t *settings); -extern void pumpkin_plugin_scoreboard_method_scoreboard_remove_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name); -extern void pumpkin_plugin_scoreboard_method_scoreboard_update_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *name, pumpkin_plugin_scoreboard_team_settings_t *settings); -extern void pumpkin_plugin_scoreboard_method_scoreboard_add_player_to_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *team_name, plugin_string_t *player_name); -extern void pumpkin_plugin_scoreboard_method_scoreboard_remove_player_from_team(pumpkin_plugin_scoreboard_borrow_scoreboard_t self, plugin_string_t *team_name, plugin_string_t *player_name); - -// Imported Functions from `pumpkin:plugin/world` -extern uint32_t pumpkin_plugin_world_method_entity_get_id(pumpkin_plugin_world_borrow_entity_t self); -extern void pumpkin_plugin_world_method_entity_get_uuid(pumpkin_plugin_world_borrow_entity_t self, plugin_string_t *ret); -extern void pumpkin_plugin_world_method_entity_get_type(pumpkin_plugin_world_borrow_entity_t self, plugin_string_t *ret); -extern void pumpkin_plugin_world_method_entity_get_position(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_position_t *ret); -extern pumpkin_plugin_world_own_world_t pumpkin_plugin_world_method_entity_get_world(pumpkin_plugin_world_borrow_entity_t self); -extern float pumpkin_plugin_world_method_entity_get_yaw(pumpkin_plugin_world_borrow_entity_t self); -extern float pumpkin_plugin_world_method_entity_get_pitch(pumpkin_plugin_world_borrow_entity_t self); -extern float pumpkin_plugin_world_method_entity_get_head_yaw(pumpkin_plugin_world_borrow_entity_t self); -extern bool pumpkin_plugin_world_method_entity_is_on_ground(pumpkin_plugin_world_borrow_entity_t self); -extern bool pumpkin_plugin_world_method_entity_is_sneaking(pumpkin_plugin_world_borrow_entity_t self); -extern bool pumpkin_plugin_world_method_entity_is_sprinting(pumpkin_plugin_world_borrow_entity_t self); -extern bool pumpkin_plugin_world_method_entity_is_invisible(pumpkin_plugin_world_borrow_entity_t self); -extern bool pumpkin_plugin_world_method_entity_is_glowing(pumpkin_plugin_world_borrow_entity_t self); -extern void pumpkin_plugin_world_method_entity_teleport(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_position_t *pos, pumpkin_plugin_world_own_world_t world_ref); -extern void pumpkin_plugin_world_method_entity_set_velocity(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_position_t *velocity); -extern void pumpkin_plugin_world_method_entity_get_velocity(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_position_t *ret); -extern pumpkin_plugin_world_entity_pose_t pumpkin_plugin_world_method_entity_get_pose(pumpkin_plugin_world_borrow_entity_t self); -extern pumpkin_plugin_world_own_text_component_t pumpkin_plugin_world_method_entity_get_name(pumpkin_plugin_world_borrow_entity_t self); -extern void pumpkin_plugin_world_method_entity_set_custom_name(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_own_text_component_t name); -extern bool pumpkin_plugin_world_method_entity_get_custom_name(pumpkin_plugin_world_borrow_entity_t self, pumpkin_plugin_world_own_text_component_t *ret); -extern void pumpkin_plugin_world_method_entity_set_custom_name_visible(pumpkin_plugin_world_borrow_entity_t self, bool visible); -extern bool pumpkin_plugin_world_method_entity_is_custom_name_visible(pumpkin_plugin_world_borrow_entity_t self); -extern bool pumpkin_plugin_world_method_entity_is_invulnerable(pumpkin_plugin_world_borrow_entity_t self); -extern void pumpkin_plugin_world_method_entity_set_invulnerable(pumpkin_plugin_world_borrow_entity_t self, bool invulnerable); -extern int32_t pumpkin_plugin_world_method_entity_get_fire_ticks(pumpkin_plugin_world_borrow_entity_t self); -extern void pumpkin_plugin_world_method_entity_set_fire_ticks(pumpkin_plugin_world_borrow_entity_t self, int32_t ticks); -extern void pumpkin_plugin_world_method_entity_remove(pumpkin_plugin_world_borrow_entity_t self); -// Returns the unique identifier of this world. -extern void pumpkin_plugin_world_method_world_get_id(pumpkin_plugin_world_borrow_world_t self, plugin_string_t *ret); -// Gets the block state ID at the specified position. -extern uint16_t pumpkin_plugin_world_method_world_get_block_state_id(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_block_pos_t *pos); -// Gets detailed block state information at the specified position. -extern void pumpkin_plugin_world_method_world_get_block_state(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_block_pos_t *pos, pumpkin_plugin_world_block_state_t *ret); -// Sets the block state at the specified position. -extern void pumpkin_plugin_world_method_world_set_block_state(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_block_pos_t *pos, uint16_t state, pumpkin_plugin_world_block_flags_t update_flags); -// Returns the current time of day in ticks. -extern uint64_t pumpkin_plugin_world_method_world_get_time_of_day(pumpkin_plugin_world_borrow_world_t self); -// Sets the current time of day in ticks. -extern void pumpkin_plugin_world_method_world_set_time_of_day(pumpkin_plugin_world_borrow_world_t self, uint64_t time); -// Returns the total age of the world in ticks. -extern uint64_t pumpkin_plugin_world_method_world_get_world_age(pumpkin_plugin_world_borrow_world_t self); -// Returns the dimension type (e.g., "minecraft:overworld"). -extern void pumpkin_plugin_world_method_world_get_dimension(pumpkin_plugin_world_borrow_world_t self, plugin_string_t *ret); -// Gets the highest non-air block Y coordinate at the specified X and Z. -extern int32_t pumpkin_plugin_world_method_world_get_top_block_y(pumpkin_plugin_world_borrow_world_t self, int32_t x, int32_t z); -// Gets the highest motion-blocking block Y coordinate. -extern int32_t pumpkin_plugin_world_method_world_get_motion_blocking_height(pumpkin_plugin_world_borrow_world_t self, int32_t x, int32_t z); -// Returns whether it is currently raining or snowing. -extern bool pumpkin_plugin_world_method_world_is_raining(pumpkin_plugin_world_borrow_world_t self); -// Sets whether it should be raining or snowing. -extern void pumpkin_plugin_world_method_world_set_raining(pumpkin_plugin_world_borrow_world_t self, bool raining); -// Returns whether there is currently a thunderstorm. -extern bool pumpkin_plugin_world_method_world_is_thundering(pumpkin_plugin_world_borrow_world_t self); -// Sets whether there should be a thunderstorm. -extern void pumpkin_plugin_world_method_world_set_thundering(pumpkin_plugin_world_borrow_world_t self, bool thundering); -// Broadcasts a system message to all players in this world. -extern void pumpkin_plugin_world_method_world_broadcast_system_message(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_own_text_component_t message, bool overlay); -// Returns the scoreboard associated with this world. -extern pumpkin_plugin_world_own_scoreboard_t pumpkin_plugin_world_method_world_get_scoreboard(pumpkin_plugin_world_borrow_world_t self); -// Plays a sound at the specified position for all players in the world. -extern void pumpkin_plugin_world_method_world_play_sound(pumpkin_plugin_world_borrow_world_t self, plugin_string_t *sound, pumpkin_plugin_world_sound_category_t category, pumpkin_plugin_world_position_t *pos, float volume, float pitch); -// Spawns particles at the specified position. -extern void pumpkin_plugin_world_method_world_spawn_particle(pumpkin_plugin_world_borrow_world_t self, plugin_string_t *particle, pumpkin_plugin_world_position_t *pos, pumpkin_plugin_world_position_t *offset, float max_speed, int32_t count); -// Creates an explosion at the specified position. -extern void pumpkin_plugin_world_method_world_create_explosion(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_position_t *pos, float power, bool create_fire, pumpkin_plugin_world_explosion_interaction_t interaction); -// Returns the sea level of this world. -extern int32_t pumpkin_plugin_world_method_world_get_sea_level(pumpkin_plugin_world_borrow_world_t self); -// Returns the minimum Y coordinate (bottom of the world). -extern int32_t pumpkin_plugin_world_method_world_get_min_y(pumpkin_plugin_world_borrow_world_t self); -// Returns a list of all entities in this world. -extern void pumpkin_plugin_world_method_world_get_entities(pumpkin_plugin_world_borrow_world_t self, pumpkin_plugin_world_list_own_entity_t *ret); - -// Imported Functions from `pumpkin:plugin/player` -// Returns the player as an entity. -extern pumpkin_plugin_player_own_entity_t pumpkin_plugin_player_method_player_as_entity(pumpkin_plugin_player_borrow_player_t self); -// Returns the player's unique UUID as a string. -extern void pumpkin_plugin_player_method_player_get_id(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *ret); -// Returns the player's username. -extern void pumpkin_plugin_player_method_player_get_name(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *ret); -// Basic state -// Returns the player's current position in the world. -extern void pumpkin_plugin_player_method_player_get_position(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_position_t *ret); -// Returns the player's current yaw (horizontal rotation). -extern float pumpkin_plugin_player_method_player_get_yaw(pumpkin_plugin_player_borrow_player_t self); -// Returns the player's current pitch (vertical rotation). -extern float pumpkin_plugin_player_method_player_get_pitch(pumpkin_plugin_player_borrow_player_t self); -// Returns the world the player is currently in. -extern pumpkin_plugin_player_own_world_t pumpkin_plugin_player_method_player_get_world(pumpkin_plugin_player_borrow_player_t self); -// Returns the player's current game mode. -extern pumpkin_plugin_player_game_mode_t pumpkin_plugin_player_method_player_get_gamemode(pumpkin_plugin_player_borrow_player_t self); -// Changes the player's game mode. Returns true if successful. -extern bool pumpkin_plugin_player_method_player_set_gamemode(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_game_mode_t mode); -// Returns the player's locale (e.g., "en_us"). -extern void pumpkin_plugin_player_method_player_get_locale(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *ret); -// Returns the player's current ping in milliseconds. -extern uint32_t pumpkin_plugin_player_method_player_get_ping(pumpkin_plugin_player_borrow_player_t self); -// Permissions & metadata -// Returns the player's permission level (0-4). -extern pumpkin_plugin_player_permission_level_t pumpkin_plugin_player_method_player_get_permission_level(pumpkin_plugin_player_borrow_player_t self); -// Sets the player's permission level. -extern void pumpkin_plugin_player_method_player_set_permission_level(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_permission_level_t level); -// Checks if the player has a specific permission node. -extern bool pumpkin_plugin_player_method_player_has_permission(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *node); -// Returns the player's display name, which may include formatting. -extern pumpkin_plugin_player_own_text_component_t pumpkin_plugin_player_method_player_get_display_name(pumpkin_plugin_player_borrow_player_t self); -// Messaging & titles -// Sends a system message to the player's chat. -extern void pumpkin_plugin_player_method_player_send_system_message(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t text, bool overlay); -// Shows a large title on the player's screen. -extern void pumpkin_plugin_player_method_player_show_title(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t text); -// Shows a smaller subtitle on the player's screen. -extern void pumpkin_plugin_player_method_player_show_subtitle(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t text); -// Shows a message in the action bar area. -extern void pumpkin_plugin_player_method_player_show_actionbar(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t text); -// Sets the fade-in, stay, and fade-out times for titles. -extern void pumpkin_plugin_player_method_player_send_title_animation(pumpkin_plugin_player_borrow_player_t self, int32_t fade_in, int32_t stay, int32_t fade_out); -// Teleport & kick -// Teleports the player to a position in a world. -extern void pumpkin_plugin_player_method_player_teleport(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_position_t *position, float *maybe_yaw, float *maybe_pitch, pumpkin_plugin_player_own_world_t world); -// Teleports the player to another world at a specific position. -extern void pumpkin_plugin_player_method_player_teleport_world(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_world_t world_ref, pumpkin_plugin_player_position_t *position, float *maybe_yaw, float *maybe_pitch); -// Kicks the player from the server with the specified reason. -extern void pumpkin_plugin_player_method_player_kick(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t message); -// Forces the player to respawn. -extern void pumpkin_plugin_player_method_player_respawn(pumpkin_plugin_player_borrow_player_t self); -// Opens a GUI for the player. -extern void pumpkin_plugin_player_method_player_open_gui(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_gui_t gui_ref); -// Bans the player with an optional reason. -extern void pumpkin_plugin_player_method_player_ban(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t *maybe_reason); -// Bans the player's IP address with an optional reason. -extern void pumpkin_plugin_player_method_player_ban_ip(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_own_text_component_t *maybe_reason); -// Inventory -// Returns the index of the currently selected hotbar slot (0-8). -extern uint8_t pumpkin_plugin_player_method_player_get_selected_slot(pumpkin_plugin_player_borrow_player_t self); -// Returns the item currently in the specified hand. -extern bool pumpkin_plugin_player_method_player_get_item_in_hand(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_hand_t hand, pumpkin_plugin_player_item_stack_t *ret); -// Returns the item in the specified inventory slot. -extern bool pumpkin_plugin_player_method_player_get_inventory_item(pumpkin_plugin_player_borrow_player_t self, uint8_t slot, pumpkin_plugin_player_item_stack_t *ret); -// Status -// Returns the player's current health. -extern float pumpkin_plugin_player_method_player_get_health(pumpkin_plugin_player_borrow_player_t self); -// Sets the player's current health. -extern void pumpkin_plugin_player_method_player_set_health(pumpkin_plugin_player_borrow_player_t self, float health); -// Returns the player's maximum health. -extern float pumpkin_plugin_player_method_player_get_max_health(pumpkin_plugin_player_borrow_player_t self); -// Sets the player's maximum health. -extern void pumpkin_plugin_player_method_player_set_max_health(pumpkin_plugin_player_borrow_player_t self, float max_health); -// Returns the player's food level (0-20). -extern uint8_t pumpkin_plugin_player_method_player_get_food_level(pumpkin_plugin_player_borrow_player_t self); -// Sets the player's food level. -extern void pumpkin_plugin_player_method_player_set_food_level(pumpkin_plugin_player_borrow_player_t self, uint8_t food_level); -// Returns the player's food saturation level. -extern float pumpkin_plugin_player_method_player_get_saturation(pumpkin_plugin_player_borrow_player_t self); -// Sets the player's food saturation level. -extern void pumpkin_plugin_player_method_player_set_saturation(pumpkin_plugin_player_borrow_player_t self, float saturation); -// Returns the player's food exhaustion level. -extern float pumpkin_plugin_player_method_player_get_exhaustion(pumpkin_plugin_player_borrow_player_t self); -// Sets the player's food exhaustion level. -extern void pumpkin_plugin_player_method_player_set_exhaustion(pumpkin_plugin_player_borrow_player_t self, float exhaustion); -// Returns the player's current absorption amount. -extern float pumpkin_plugin_player_method_player_get_absorption(pumpkin_plugin_player_borrow_player_t self); -// Sets the player's current absorption amount. -extern void pumpkin_plugin_player_method_player_set_absorption(pumpkin_plugin_player_borrow_player_t self, float absorption); -// Returns the player's total experience level. -extern int32_t pumpkin_plugin_player_method_player_get_experience_level(pumpkin_plugin_player_borrow_player_t self); -// Returns the player's progress toward the next level (0.0 to 1.0). -extern float pumpkin_plugin_player_method_player_get_experience_progress(pumpkin_plugin_player_borrow_player_t self); -// Returns the total experience points the player has. -extern int32_t pumpkin_plugin_player_method_player_get_experience_points(pumpkin_plugin_player_borrow_player_t self); -// Sets the player's total experience level. -extern void pumpkin_plugin_player_method_player_set_experience_level(pumpkin_plugin_player_borrow_player_t self, int32_t level); -// Sets the player's progress toward the next level. -extern void pumpkin_plugin_player_method_player_set_experience_progress(pumpkin_plugin_player_borrow_player_t self, float progress); -// Sets the player's total experience points. -extern void pumpkin_plugin_player_method_player_set_experience_points(pumpkin_plugin_player_borrow_player_t self, int32_t points); -// Adds experience levels to the player. -extern void pumpkin_plugin_player_method_player_add_experience_levels(pumpkin_plugin_player_borrow_player_t self, int32_t levels); -// Adds experience points to the player. -extern void pumpkin_plugin_player_method_player_add_experience_points(pumpkin_plugin_player_borrow_player_t self, int32_t points); -// Returns whether the player is currently sneaking. -extern bool pumpkin_plugin_player_method_player_is_sneaking(pumpkin_plugin_player_borrow_player_t self); -// Sets whether the player is currently sneaking. -extern void pumpkin_plugin_player_method_player_set_sneaking(pumpkin_plugin_player_borrow_player_t self, bool sneaking); -// Returns whether the player is currently sprinting. -extern bool pumpkin_plugin_player_method_player_is_sprinting(pumpkin_plugin_player_borrow_player_t self); -// Sets whether the player is currently sprinting. -extern void pumpkin_plugin_player_method_player_set_sprinting(pumpkin_plugin_player_borrow_player_t self, bool sprinting); -// Returns whether the player is currently on the ground. -extern bool pumpkin_plugin_player_method_player_is_on_ground(pumpkin_plugin_player_borrow_player_t self); -// Returns whether the player is currently flying. -extern bool pumpkin_plugin_player_method_player_is_flying(pumpkin_plugin_player_borrow_player_t self); -// Sets whether the player should be flying. -extern void pumpkin_plugin_player_method_player_set_flying(pumpkin_plugin_player_borrow_player_t self, bool flying); -// Returns the player's current abilities. -extern void pumpkin_plugin_player_method_player_get_abilities(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_player_abilities_t *ret); -// Updates the player's abilities. -extern void pumpkin_plugin_player_method_player_set_abilities(pumpkin_plugin_player_borrow_player_t self, pumpkin_plugin_player_player_abilities_t *abilities); -// Returns the player's IP address. -extern void pumpkin_plugin_player_method_player_get_ip(pumpkin_plugin_player_borrow_player_t self, plugin_string_t *ret); - -// Imported Functions from `pumpkin:plugin/server` -// Returns the current difficulty level of the server. -extern pumpkin_plugin_server_difficulty_t pumpkin_plugin_server_method_server_get_difficulty(pumpkin_plugin_server_borrow_server_t self); -// Returns the total number of players currently connected to the server. -extern uint32_t pumpkin_plugin_server_method_server_get_player_count(pumpkin_plugin_server_borrow_server_t self); -// Returns the rolling average Milliseconds Per Tick (MSPT). -// A value below 50.0 is required for a stable 20 TPS. -extern double pumpkin_plugin_server_method_server_get_mspt(pumpkin_plugin_server_borrow_server_t self); -// Returns the effective Ticks Per Second (TPS). -// Ideal value is 20.0. -extern double pumpkin_plugin_server_method_server_get_tps(pumpkin_plugin_server_borrow_server_t self); -// Returns a list of all online players across all worlds. -extern void pumpkin_plugin_server_method_server_get_all_players(pumpkin_plugin_server_borrow_server_t self, pumpkin_plugin_server_list_own_player_t *ret); -// Searches for a player by their exact name. -extern bool pumpkin_plugin_server_method_server_get_player_by_name(pumpkin_plugin_server_borrow_server_t self, plugin_string_t *name, pumpkin_plugin_server_own_player_t *ret); -// Searches for a player by their UUID string. -extern bool pumpkin_plugin_server_method_server_get_player_by_uuid(pumpkin_plugin_server_borrow_server_t self, plugin_string_t *id, pumpkin_plugin_server_own_player_t *ret); - -// Imported Functions from `pumpkin:plugin/block-entity` -extern void pumpkin_plugin_block_entity_method_block_entity_resource_location(pumpkin_plugin_block_entity_borrow_block_entity_t self, plugin_string_t *ret); -extern void pumpkin_plugin_block_entity_method_block_entity_get_position(pumpkin_plugin_block_entity_borrow_block_entity_t self, pumpkin_plugin_block_entity_block_position_t *ret); -extern uint32_t pumpkin_plugin_block_entity_method_block_entity_get_id(pumpkin_plugin_block_entity_borrow_block_entity_t self); -// write-nbt: func(nbt: nbt-compound); -// from-nbt: func(nbt: nbt-compound, position: block-position) -> entity; -// tick: func(world: simple-world); -// write-internal: func(nbt: nbt-compound); -// chunk-data-nbt: func() -> option option; -// set-block-state: func(block-state: block-state-id); -// on-block-replaced: func(world: simple-world, position: block-position); -extern bool pumpkin_plugin_block_entity_method_block_entity_is_dirty(pumpkin_plugin_block_entity_borrow_block_entity_t self); -extern void pumpkin_plugin_block_entity_method_block_entity_clear_dirty(pumpkin_plugin_block_entity_borrow_block_entity_t self); -extern pumpkin_plugin_block_entity_own_block_entity_t pumpkin_plugin_block_entity_method_command_block_entity_get_block_entity(pumpkin_plugin_block_entity_borrow_command_block_entity_t self); -extern void pumpkin_plugin_block_entity_method_command_block_entity_last_output(pumpkin_plugin_block_entity_borrow_command_block_entity_t self, plugin_string_t *ret); -extern bool pumpkin_plugin_block_entity_method_command_block_entity_track_output(pumpkin_plugin_block_entity_borrow_command_block_entity_t self); -extern uint32_t pumpkin_plugin_block_entity_method_command_block_entity_success_count(pumpkin_plugin_block_entity_borrow_command_block_entity_t self); -extern void pumpkin_plugin_block_entity_method_command_block_entity_command(pumpkin_plugin_block_entity_borrow_command_block_entity_t self, plugin_string_t *ret); -extern bool pumpkin_plugin_block_entity_method_command_block_entity_auto(pumpkin_plugin_block_entity_borrow_command_block_entity_t self); -extern bool pumpkin_plugin_block_entity_method_command_block_entity_condition_met(pumpkin_plugin_block_entity_borrow_command_block_entity_t self); -extern bool pumpkin_plugin_block_entity_method_command_block_entity_powered(pumpkin_plugin_block_entity_borrow_command_block_entity_t self); - -// Imported Functions from `pumpkin:plugin/command` -extern void pumpkin_plugin_command_method_consumed_args_get_value(pumpkin_plugin_command_borrow_consumed_args_t self, plugin_string_t *key, pumpkin_plugin_command_arg_t *ret); -extern void pumpkin_plugin_command_method_command_sender_get_command_sender_type(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_command_sender_type_t *ret); -extern void pumpkin_plugin_command_method_command_sender_send_message(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_own_text_component_t text); -extern void pumpkin_plugin_command_method_command_sender_set_success_count(pumpkin_plugin_command_borrow_command_sender_t self, int32_t count); -extern bool pumpkin_plugin_command_method_command_sender_is_player(pumpkin_plugin_command_borrow_command_sender_t self); -extern bool pumpkin_plugin_command_method_command_sender_is_console(pumpkin_plugin_command_borrow_command_sender_t self); -extern bool pumpkin_plugin_command_method_command_sender_as_player(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_own_player_t *ret); -extern pumpkin_plugin_command_permission_level_t pumpkin_plugin_command_method_command_sender_permission_level(pumpkin_plugin_command_borrow_command_sender_t self); -extern bool pumpkin_plugin_command_method_command_sender_has_permission_level(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_permission_level_t level); -extern bool pumpkin_plugin_command_method_command_sender_has_permission(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_borrow_server_t server, plugin_string_t *node); -extern bool pumpkin_plugin_command_method_command_sender_position(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_position_t *ret); -extern bool pumpkin_plugin_command_method_command_sender_world(pumpkin_plugin_command_borrow_command_sender_t self, pumpkin_plugin_command_own_world_t *ret); -extern pumpkin_plugin_command_locale_t pumpkin_plugin_command_method_command_sender_get_locale(pumpkin_plugin_command_borrow_command_sender_t self); -extern bool pumpkin_plugin_command_method_command_sender_should_receive_feedback(pumpkin_plugin_command_borrow_command_sender_t self); -extern bool pumpkin_plugin_command_method_command_sender_should_broadcast_console_to_ops(pumpkin_plugin_command_borrow_command_sender_t self); -extern bool pumpkin_plugin_command_method_command_sender_should_track_output(pumpkin_plugin_command_borrow_command_sender_t self); -extern pumpkin_plugin_command_own_command_node_t pumpkin_plugin_command_static_command_node_literal(plugin_string_t *name); -extern pumpkin_plugin_command_own_command_node_t pumpkin_plugin_command_static_command_node_argument(plugin_string_t *name, pumpkin_plugin_command_argument_type_t *arg_type); -extern void pumpkin_plugin_command_method_command_node_then(pumpkin_plugin_command_borrow_command_node_t self, pumpkin_plugin_command_own_command_node_t node); -extern void pumpkin_plugin_command_method_command_node_execute_with_handler_id(pumpkin_plugin_command_borrow_command_node_t self, uint32_t handler_id); -extern void pumpkin_plugin_command_method_command_node_require_with_handler_id(pumpkin_plugin_command_borrow_command_node_t self, uint32_t handler_id); -// First name is primary, rest are aliases -extern pumpkin_plugin_command_own_command_t pumpkin_plugin_command_constructor_command(plugin_list_string_t *names, plugin_string_t *description); -extern void pumpkin_plugin_command_method_command_then(pumpkin_plugin_command_borrow_command_t self, pumpkin_plugin_command_own_command_node_t node); -extern void pumpkin_plugin_command_method_command_execute_with_handler_id(pumpkin_plugin_command_borrow_command_t self, uint32_t handler_id); - -// Imported Functions from `pumpkin:plugin/context` -// Registers a handler for a specific event. -// -// * `handler-id`: Unique ID for the event handler. -// * `event-type`: The type of event to listen for. -// * `event-priority`: When this handler should be called relative to others. -// * `blocking`: Whether the event should wait for this handler to finish. -extern void pumpkin_plugin_context_method_context_register_event(pumpkin_plugin_context_borrow_context_t self, uint32_t handler_id, pumpkin_plugin_context_event_type_t event_type, pumpkin_plugin_context_event_priority_t event_priority, bool blocking); -// Registers a new command. -// -// * `command`: The command definition. -// * `permission`: The required permission node to execute this command. -extern void pumpkin_plugin_context_method_context_register_command(pumpkin_plugin_context_borrow_context_t self, pumpkin_plugin_context_own_command_t command, plugin_string_t *permission); -// Registers a permission node with the server. -extern bool pumpkin_plugin_context_method_context_register_permission(pumpkin_plugin_context_borrow_context_t self, pumpkin_plugin_context_permission_t *permission, plugin_string_t *err); -// Returns the path to the plugin's private data folder. -extern void pumpkin_plugin_context_method_context_get_data_folder(pumpkin_plugin_context_borrow_context_t self, plugin_string_t *ret); -// Returns the global server instance. -extern pumpkin_plugin_context_own_server_t pumpkin_plugin_context_method_context_get_server(pumpkin_plugin_context_borrow_context_t self); - -// Imported Functions from `pumpkin:plugin/i18n` -// Retrieves a translated string from the host. -// -// # Arguments -// * `key`: The namespaced translation key (e.g. `pumpkin:my_key`). -// * `locale`: The target locale. -// -// # Returns -// The localized string, falling back to English or the key itself. -extern void pumpkin_plugin_i18n_translate(plugin_string_t *key, pumpkin_plugin_i18n_locale_t locale, plugin_string_t *ret); -// Loads custom translations from a JSON string. -// -// # Arguments -// * `namespace`: The namespace to associate these keys with. -// * `json`: A JSON string containing a flat map of translations. -// * `locale`: The target locale for these translations. -extern void pumpkin_plugin_i18n_load_translations(plugin_string_t *namespace_, plugin_string_t *json, pumpkin_plugin_i18n_locale_t locale); - -// Imported Functions from `pumpkin:plugin/scheduler` -// Schedules a task to be executed once after the specified number of ticks. -// -// * `handler-id`: The unique ID of the handler to call when the task executes. -// * `delay-ticks`: The number of game ticks to wait before execution (20 ticks = 1 second). -// -// Returns a unique task ID that can be used to cancel the task. -extern uint32_t pumpkin_plugin_scheduler_schedule_delayed_task(uint32_t handler_id, uint64_t delay_ticks); -// Schedules a task to be executed repeatedly. -// -// * `handler-id`: The unique ID of the handler to call when the task executes. -// * `delay-ticks`: The number of game ticks to wait before the first execution. -// * `period-ticks`: The number of game ticks between subsequent executions. -// -// Returns a unique task ID that can be used to cancel the task. -extern uint32_t pumpkin_plugin_scheduler_schedule_repeating_task(uint32_t handler_id, uint64_t delay_ticks, uint64_t period_ticks); -// Cancels a scheduled task if it hasn't finished yet. -// -// * `task-id`: The ID of the task to cancel. -extern void pumpkin_plugin_scheduler_cancel_task(uint32_t task_id); - -// Exported Functions from `plugin` -void exports_plugin_init_plugin(void); -bool exports_plugin_on_load(plugin_own_context_t context, plugin_string_t *err); -bool exports_plugin_on_unload(plugin_own_context_t context, plugin_string_t *err); -void exports_plugin_handle_event(uint32_t event_id, plugin_own_server_instance_t server, plugin_event_t *event, plugin_event_t *ret); -bool exports_plugin_handle_command(uint32_t command_id, plugin_own_command_sender_t sender, plugin_own_server_instance_t server, plugin_own_consumed_args_t args, int32_t *ret, plugin_command_error_t *err); -void exports_plugin_handle_task(uint32_t handler_id, plugin_own_server_instance_t server); - -// Exported Functions from `pumpkin:plugin/metadata` -void exports_pumpkin_plugin_metadata_get_metadata(exports_pumpkin_plugin_metadata_plugin_metadata_t *ret); - -// Helper Functions - -void plugin_list_u8_free(plugin_list_u8_t *ptr); - -void pumpkin_plugin_common_raw_text_component_free(pumpkin_plugin_common_raw_text_component_t *ptr); - -void pumpkin_plugin_common_item_stack_free(pumpkin_plugin_common_item_stack_t *ptr); - -extern void pumpkin_plugin_text_text_component_drop_own(pumpkin_plugin_text_own_text_component_t handle); - -extern void pumpkin_plugin_text_text_component_drop_borrow(pumpkin_plugin_text_borrow_text_component_t handle); - -extern pumpkin_plugin_text_borrow_text_component_t pumpkin_plugin_text_borrow_text_component(pumpkin_plugin_text_own_text_component_t handle); - -void pumpkin_plugin_text_list_own_text_component_free(pumpkin_plugin_text_list_own_text_component_t *ptr); - -void pumpkin_plugin_text_option_own_text_component_free(pumpkin_plugin_text_option_own_text_component_t *ptr); - -void pumpkin_plugin_gui_item_stack_free(pumpkin_plugin_gui_item_stack_t *ptr); - -extern void pumpkin_plugin_gui_gui_drop_own(pumpkin_plugin_gui_own_gui_t handle); - -extern void pumpkin_plugin_gui_gui_drop_borrow(pumpkin_plugin_gui_borrow_gui_t handle); - -extern pumpkin_plugin_gui_borrow_gui_t pumpkin_plugin_gui_borrow_gui(pumpkin_plugin_gui_own_gui_t handle); - -void pumpkin_plugin_gui_option_item_stack_free(pumpkin_plugin_gui_option_item_stack_t *ptr); - -extern void pumpkin_plugin_scoreboard_scoreboard_drop_own(pumpkin_plugin_scoreboard_own_scoreboard_t handle); - -extern void pumpkin_plugin_scoreboard_scoreboard_drop_borrow(pumpkin_plugin_scoreboard_borrow_scoreboard_t handle); - -extern pumpkin_plugin_scoreboard_borrow_scoreboard_t pumpkin_plugin_scoreboard_borrow_scoreboard(pumpkin_plugin_scoreboard_own_scoreboard_t handle); - -extern void pumpkin_plugin_world_entity_drop_own(pumpkin_plugin_world_own_entity_t handle); - -extern void pumpkin_plugin_world_entity_drop_borrow(pumpkin_plugin_world_borrow_entity_t handle); - -extern pumpkin_plugin_world_borrow_entity_t pumpkin_plugin_world_borrow_entity(pumpkin_plugin_world_own_entity_t handle); - -extern void pumpkin_plugin_world_world_drop_own(pumpkin_plugin_world_own_world_t handle); - -extern void pumpkin_plugin_world_world_drop_borrow(pumpkin_plugin_world_borrow_world_t handle); - -extern pumpkin_plugin_world_borrow_world_t pumpkin_plugin_world_borrow_world(pumpkin_plugin_world_own_world_t handle); - -void pumpkin_plugin_world_option_own_text_component_free(pumpkin_plugin_world_option_own_text_component_t *ptr); - -void pumpkin_plugin_world_list_own_entity_free(pumpkin_plugin_world_list_own_entity_t *ptr); - -void pumpkin_plugin_permission_permission_default_free(pumpkin_plugin_permission_permission_default_t *ptr); - -void pumpkin_plugin_permission_permission_child_free(pumpkin_plugin_permission_permission_child_t *ptr); - -void pumpkin_plugin_permission_list_permission_child_free(pumpkin_plugin_permission_list_permission_child_t *ptr); - -void pumpkin_plugin_permission_permission_free(pumpkin_plugin_permission_permission_t *ptr); - -void pumpkin_plugin_player_item_stack_free(pumpkin_plugin_player_item_stack_t *ptr); - -extern void pumpkin_plugin_player_player_drop_own(pumpkin_plugin_player_own_player_t handle); - -extern void pumpkin_plugin_player_player_drop_borrow(pumpkin_plugin_player_borrow_player_t handle); - -extern pumpkin_plugin_player_borrow_player_t pumpkin_plugin_player_borrow_player(pumpkin_plugin_player_own_player_t handle); - -void plugin_option_f32_free(plugin_option_f32_t *ptr); - -void pumpkin_plugin_player_option_own_text_component_free(pumpkin_plugin_player_option_own_text_component_t *ptr); - -void pumpkin_plugin_player_option_item_stack_free(pumpkin_plugin_player_option_item_stack_t *ptr); - -extern void pumpkin_plugin_server_server_drop_own(pumpkin_plugin_server_own_server_t handle); - -extern void pumpkin_plugin_server_server_drop_borrow(pumpkin_plugin_server_borrow_server_t handle); - -extern pumpkin_plugin_server_borrow_server_t pumpkin_plugin_server_borrow_server(pumpkin_plugin_server_own_server_t handle); - -void pumpkin_plugin_server_list_own_player_free(pumpkin_plugin_server_list_own_player_t *ptr); - -void pumpkin_plugin_server_option_own_player_free(pumpkin_plugin_server_option_own_player_t *ptr); - -extern void pumpkin_plugin_block_entity_block_entity_drop_own(pumpkin_plugin_block_entity_own_block_entity_t handle); - -extern void pumpkin_plugin_block_entity_block_entity_drop_borrow(pumpkin_plugin_block_entity_borrow_block_entity_t handle); - -extern pumpkin_plugin_block_entity_borrow_block_entity_t pumpkin_plugin_block_entity_borrow_block_entity(pumpkin_plugin_block_entity_own_block_entity_t handle); - -extern void pumpkin_plugin_block_entity_command_block_entity_drop_own(pumpkin_plugin_block_entity_own_command_block_entity_t handle); - -extern void pumpkin_plugin_block_entity_command_block_entity_drop_borrow(pumpkin_plugin_block_entity_borrow_command_block_entity_t handle); - -extern pumpkin_plugin_block_entity_borrow_command_block_entity_t pumpkin_plugin_block_entity_borrow_command_block_entity(pumpkin_plugin_block_entity_own_command_block_entity_t handle); - -void pumpkin_plugin_block_entity_block_entity_type_free(pumpkin_plugin_block_entity_block_entity_type_t *ptr); - -void pumpkin_plugin_command_number_free(pumpkin_plugin_command_number_t *ptr); - -void pumpkin_plugin_command_tuple2_number_number_free(pumpkin_plugin_command_tuple2_number_number_t *ptr); - -void pumpkin_plugin_command_not_in_bounds_free(pumpkin_plugin_command_not_in_bounds_t *ptr); - -void pumpkin_plugin_command_list_own_entity_free(pumpkin_plugin_command_list_own_entity_t *ptr); - -void pumpkin_plugin_command_list_own_player_free(pumpkin_plugin_command_list_own_player_t *ptr); - -void pumpkin_plugin_command_result_number_not_in_bounds_free(pumpkin_plugin_command_result_number_not_in_bounds_t *ptr); - -void pumpkin_plugin_command_arg_free(pumpkin_plugin_command_arg_t *ptr); - -extern void pumpkin_plugin_command_consumed_args_drop_own(pumpkin_plugin_command_own_consumed_args_t handle); - -extern void pumpkin_plugin_command_consumed_args_drop_borrow(pumpkin_plugin_command_borrow_consumed_args_t handle); - -extern pumpkin_plugin_command_borrow_consumed_args_t pumpkin_plugin_command_borrow_consumed_args(pumpkin_plugin_command_own_consumed_args_t handle); - -void pumpkin_plugin_command_command_sender_type_free(pumpkin_plugin_command_command_sender_type_t *ptr); - -extern void pumpkin_plugin_command_command_sender_drop_own(pumpkin_plugin_command_own_command_sender_t handle); - -extern void pumpkin_plugin_command_command_sender_drop_borrow(pumpkin_plugin_command_borrow_command_sender_t handle); - -extern pumpkin_plugin_command_borrow_command_sender_t pumpkin_plugin_command_borrow_command_sender(pumpkin_plugin_command_own_command_sender_t handle); - -void plugin_tuple2_option_f32_option_f32_free(plugin_tuple2_option_f32_option_f32_t *ptr); - -void plugin_option_f64_free(plugin_option_f64_t *ptr); - -void plugin_tuple2_option_f64_option_f64_free(plugin_tuple2_option_f64_option_f64_t *ptr); - -void plugin_option_s32_free(plugin_option_s32_t *ptr); - -void plugin_tuple2_option_s32_option_s32_free(plugin_tuple2_option_s32_option_s32_t *ptr); - -void plugin_option_s64_free(plugin_option_s64_t *ptr); - -void plugin_tuple2_option_s64_option_s64_free(plugin_tuple2_option_s64_option_s64_t *ptr); - -void pumpkin_plugin_command_argument_type_free(pumpkin_plugin_command_argument_type_t *ptr); - -void plugin_option_string_free(plugin_option_string_t *ptr); - -void pumpkin_plugin_command_command_error_free(pumpkin_plugin_command_command_error_t *ptr); - -extern void pumpkin_plugin_command_command_node_drop_own(pumpkin_plugin_command_own_command_node_t handle); - -extern void pumpkin_plugin_command_command_node_drop_borrow(pumpkin_plugin_command_borrow_command_node_t handle); - -extern pumpkin_plugin_command_borrow_command_node_t pumpkin_plugin_command_borrow_command_node(pumpkin_plugin_command_own_command_node_t handle); - -extern void pumpkin_plugin_command_command_drop_own(pumpkin_plugin_command_own_command_t handle); - -extern void pumpkin_plugin_command_command_drop_borrow(pumpkin_plugin_command_borrow_command_t handle); - -extern pumpkin_plugin_command_borrow_command_t pumpkin_plugin_command_borrow_command(pumpkin_plugin_command_own_command_t handle); - -void pumpkin_plugin_command_option_own_player_free(pumpkin_plugin_command_option_own_player_t *ptr); - -void plugin_option_position_free(plugin_option_position_t *ptr); - -void pumpkin_plugin_command_option_own_world_free(pumpkin_plugin_command_option_own_world_t *ptr); - -void plugin_list_string_free(plugin_list_string_t *ptr); - -void pumpkin_plugin_event_item_stack_free(pumpkin_plugin_event_item_stack_t *ptr); - -void pumpkin_plugin_event_list_own_player_free(pumpkin_plugin_event_list_own_player_t *ptr); - -void pumpkin_plugin_event_player_chat_event_data_free(pumpkin_plugin_event_player_chat_event_data_t *ptr); - -void pumpkin_plugin_event_player_command_send_event_data_free(pumpkin_plugin_event_player_command_send_event_data_t *ptr); - -void pumpkin_plugin_event_player_permission_check_event_data_free(pumpkin_plugin_event_player_permission_check_event_data_t *ptr); - -void pumpkin_plugin_event_player_custom_payload_event_data_free(pumpkin_plugin_event_player_custom_payload_event_data_t *ptr); - -void pumpkin_plugin_event_player_fish_event_data_free(pumpkin_plugin_event_player_fish_event_data_t *ptr); - -void pumpkin_plugin_event_player_egg_throw_event_data_free(pumpkin_plugin_event_player_egg_throw_event_data_t *ptr); - -void plugin_option_block_position_free(plugin_option_block_position_t *ptr); - -void pumpkin_plugin_event_player_interact_event_data_free(pumpkin_plugin_event_player_interact_event_data_t *ptr); - -void pumpkin_plugin_event_option_own_player_free(pumpkin_plugin_event_option_own_player_t *ptr); - -void pumpkin_plugin_event_block_break_event_data_free(pumpkin_plugin_event_block_break_event_data_t *ptr); - -void pumpkin_plugin_event_block_burn_event_data_free(pumpkin_plugin_event_block_burn_event_data_t *ptr); - -void pumpkin_plugin_event_block_can_build_event_data_free(pumpkin_plugin_event_block_can_build_event_data_t *ptr); - -void pumpkin_plugin_event_block_grow_event_data_free(pumpkin_plugin_event_block_grow_event_data_t *ptr); - -void pumpkin_plugin_event_block_place_event_data_free(pumpkin_plugin_event_block_place_event_data_t *ptr); - -void pumpkin_plugin_event_server_command_event_data_free(pumpkin_plugin_event_server_command_event_data_t *ptr); - -void pumpkin_plugin_event_event_free(pumpkin_plugin_event_event_t *ptr); - -void pumpkin_plugin_context_permission_free(pumpkin_plugin_context_permission_t *ptr); - -extern void pumpkin_plugin_context_context_drop_own(pumpkin_plugin_context_own_context_t handle); - -extern void pumpkin_plugin_context_context_drop_borrow(pumpkin_plugin_context_borrow_context_t handle); - -extern pumpkin_plugin_context_borrow_context_t pumpkin_plugin_context_borrow_context(pumpkin_plugin_context_own_context_t handle); - -void pumpkin_plugin_context_result_void_string_free(pumpkin_plugin_context_result_void_string_t *ptr); - -void plugin_event_free(plugin_event_t *ptr); - -void plugin_command_error_free(plugin_command_error_t *ptr); - -void plugin_result_s32_command_error_free(plugin_result_s32_command_error_t *ptr); - -void exports_pumpkin_plugin_metadata_plugin_metadata_free(exports_pumpkin_plugin_metadata_plugin_metadata_t *ptr); - -void exports_pumpkin_plugin_common_raw_text_component_free(exports_pumpkin_plugin_common_raw_text_component_t *ptr); - -void exports_pumpkin_plugin_common_item_stack_free(exports_pumpkin_plugin_common_item_stack_t *ptr); - -// Sets the string `ret` to reference the input string `s` without copying it -void plugin_string_set(plugin_string_t *ret, const char*s); - -// Creates a copy of the input nul-terminated string `s` and -// stores it into the component model string `ret`. -void plugin_string_dup(plugin_string_t *ret, const char*s); - -// Creates a copy of the input string `s` with length `len` and -// stores it into the component model string `ret`. -// The length is specified in code units (bytes for UTF-8, 16-bit values for UTF-16). -void plugin_string_dup_n(plugin_string_t *ret, const char*s, size_t len); - -// Deallocates the string pointed to by `ret`, deallocating -// the memory behind the string. -void plugin_string_free(plugin_string_t *ret); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/src/gen/plugin_component_type.o b/src/gen/plugin_component_type.o deleted file mode 100644 index e9ad7fb..0000000 Binary files a/src/gen/plugin_component_type.o and /dev/null differ diff --git a/wit b/wit new file mode 160000 index 0000000..2aacac1 --- /dev/null +++ b/wit @@ -0,0 +1 @@ +Subproject commit 2aacac1f07848b6273b30a0390818e87ef1259e9 diff --git a/wit/repo b/wit/repo deleted file mode 160000 index 7cc4854..0000000 --- a/wit/repo +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 7cc4854078e8a4008253b2e3bc7dc89db0ef37d3