1.7.4latestJul 12, 2024 1.7.3Jul 2, 2024 1.7.1FFI ON: Use C/C++ to help lua script easilyOct 24, 2022 Linking C/C++ Shared Library at Minecraft Server | Use FFI Library in Minecraft Server1.6Update 1.6May 21, 2022 Use closure in your plugin setting class.1.5Update 1.5 | Now you can use lua script as your plugin configurationMay 19, 2022 This update is for plugin developers. usage: use Code (Text): LuaConfig config = LuaConfig.loadInsideLuaConfig(Path/ScriptString) or use native lua vm Code (Text): LuaConfig config = LuaConfig.loadOutsideLuaConfig(Path/ScriptString) then set global var to lua environment Code (Text): config.setGlobal("entity", entity); ....... and configuare Code (Text): config.config(); for example: Class Entity Code (Text): package tk.smileyik.config; import java.util.Arrays; public class Entity { String aString; int anInt; float aFloat; char aChar; boolean aBoolean; double aDouble; byte[] bytes; double[] doubles; char[] chars; int[] ints; String[] strings; Entity[] entities; Entity entity; public void setaString(String aString) { this.aString = aString; } public void setAnInt(int anInt) { this.anInt = anInt; } public void setaFloat(float aFloat) { this.aFloat = aFloat; } public void setaChar(char aChar) { this.aChar = aChar; } public void setaBoolean(boolean aBoolean) { this.aBoolean = aBoolean; } public void setaDouble(double aDouble) { this.aDouble = aDouble; } public void setBytes(byte[] bytes) { this.bytes = bytes; } public void setDoubles(double[] doubles) { this.doubles = doubles; } public void setChars(char[] chars) { this.chars = chars; } public void setInts(int[] ints) { this.ints = ints; } public void setStrings(String[] strings) { this.strings = strings; } public void setEntities(Entity[] entities) { this.entities = entities; } public void setEntity(Entity entity) { this.entity = entity; } @Override public String toString() { return "Entity{" + "aString='" + aString + '\'' + ", anInt=" + anInt + ", aFloat=" + aFloat + ", aChar=" + aChar + ", aBoolean=" + aBoolean + ", aDouble=" + aDouble + ", bytes=" + Arrays.toString(bytes) + ", doubles=" + Arrays.toString(doubles) + ", chars=" + Arrays.toString(chars) + ", ints=" + Arrays.toString(ints) + ", strings=" + Arrays.toString(strings) + ", entities=" + Arrays.toString(entities) + ", entity=" + entity + '}'; } } lua script Code (Text): --- --- Generated by Luanalysis --- Created by SmileYik. --- DateTime: 2022/5/19 下午2:22 --- entity:setaString("I am String") entity:setAnInt(10) entity:setaFloat(1.555555555555555) entity:setaChar(49) entity:setaBoolean(true) entity:setaDouble(1.55555555555555) entity:setDoubles({1.1, 2.2, 3.3, 4.4, 5.5}) entity:setChars({46, 47, 48}) entity:setInts({7, 8, 9, 10}) entity:setStrings({"aaaaa", "bbbbbb", "cccccc"}) entity:setEntities({nil, nil, nil}) entity:setEntity(nil) test code: Code (Text): @org.junit.jupiter.api.Test void fileScriptInsideTest() throws LuaException, IOException { LuaConfig config = LuaConfig.loadInsideLuaConfig(Paths.get("/home/miskyle" + "/workspace/idea-space/LuaInMinecraftBukkt/src/test/resources/lua_config_inside_test.lua")); Entity entity = new Entity(); System.out.println(entity); System.out.println("---------------"); config.setGlobal("entity", entity); config.config(); System.out.println(entity); }1.4Update1.4 | Hybrid Mode ComingMay 17, 2022 You can aim which Lua VM to run your script in lua_plugin.yml2022-05-09May 9, 2022
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta