This commit is contained in:
ZXMushroom63 2024-09-13 15:15:47 +08:00
commit f7475bab21
2 changed files with 25 additions and 23 deletions

View File

@ -20,31 +20,29 @@ ModAPI.addEventListener("lib:libcustomitems:loaded", () => {
},
onRightClickGround: `/*/user, world, itemstack, blockpos/*/
const prefix = "§7[§4worldedit§7] ";
const player = user;
const pos = blockpos;
const positions = globalThis.playerPositions[player.getName()] ||= {};
const positions = globalThis.playerPositions[user.getName()] ||= {};
// Save position #2
positions.pos2 = pos;
// Send chat message to player
player.addChatMessage(ModAPI.reflect.getClassById("net.minecraft.util.ChatComponentText").constructors[0](
ModAPI.util.str(prefix + "Pos #2 selected at: " + pos.$x + ", " + pos.$y + ", " + pos.$z)
user.addChatMessage(ModAPI.reflect.getClassById("net.minecraft.util.ChatComponentText").constructors[0](ModAPI.util.str(
ModAPI.util.str(prefix + "Pos #2 selected at: " + pos.$x + ", " + pos.$y + ", " + pos.$z))
));
return true;
`,
onLeftClickGround: `/*/user, world, itemstack, blockpos/*/
const prefix = "§7[§4worldedit§7] ";
const player = user;
const pos = blockpos;
const positions = globalThis.playerPositions[player.getName()] ||= {};
const positions = globalThis.playerPositions[user.getName()] ||= {};
// Save position #1
positions.pos1 = pos;
// Send chat message to player
player.addChatMessage(ModAPI.reflect.getClassById("net.minecraft.util.ChatComponentText").constructors[0](
ModAPI.util.str(prefix + "Pos #1 selected at: " + pos.$x + ", " + pos.$y + ", " + pos.$z)
user.addChatMessage(ModAPI.reflect.getClassById("net.minecraft.util.ChatComponentText").constructors[0](ModAPI.util.str(
ModAPI.util.str(prefix + "Pos #1 selected at: " + pos.$x + ", " + pos.$y + ", " + pos.$z))
));
return true;
`
@ -89,28 +87,28 @@ ModAPI.addEventListener("lib:libcustomitems:loaded", () => {
event.preventDefault = true;
}
if (event.command.toLowerCase().startsWith("//set")) {
const player = event.sender;
// Parse command parameters
const params = event.command.split(" ");
if (params.length !== 2) {
event.sender.addChatMessage(prefix + "§cUsage: //set <block_type>");
const params = event.command.substring("//set ".length);
if (!params) {
player.addChatMessage(ChatComponentTextClass.constructors[0](ModAPI.util.str(prefix + "§cUsage: //set <block_type>")));
event.preventDefault = true;
return;
}
const blockType = params[1];
const player = event.sender;
const blockType = params;
const positions = globalThis.playerPositions[player.getName()];
// Validate block type and positions
const block = ModAPI.blocks[blockType];
if (!block) {
player.addChatMessage(prefix + "§cInvalid block type.");
if (typeof ModAPI.blocks[blockType] !== 'undefined') {
player.addChatMessage(ChatComponentTextClass.constructors[0](ModAPI.util.str(prefix + "§cInvalid block type.")));
event.preventDefault = true;
return;
}
const block = ModAPI.blocks[blockType];
if (!positions || !positions.pos1 || !positions.pos2) {
player.addChatMessage(prefix + "§cPositions not set. Use left and right click to set positions.");
player.addChatMessage(ChatComponentTextClass.constructors[0](ModAPI.util.str(prefix + "§cPositions not set. Use left and right click to set positions.")));
event.preventDefault = true;
return;
}
@ -137,7 +135,7 @@ ModAPI.addEventListener("lib:libcustomitems:loaded", () => {
}
// Notify the sender
player.addChatMessage(prefix + "§aBlocks set successfully.");
player.addChatMessage(ChatComponentTextClass.constructors[0](ModAPI.util.str(prefix + "§aBlocks set successfully.")));
event.preventDefault = true;
}

View File

@ -61,12 +61,16 @@
var statusTag = Object.keys(packet.$status).find(x => { return x.startsWith("$name") });
var positionTag = Object.keys(packet).filter(x => { return x.startsWith("$position") })[0];
var stat = ModAPI.util.unstr(packet.$status[statusTag]);
if (stat !== "START_DESTROY_BLOCK") {
if (stat === "STOP_DESTROY_BLOCK") {
if (stat === "START_DESTROY_BLOCK") {
sendPacket($this, packetblockchange($this.$serverController.$worldServerForDimension($this.$playerEntity.$dimension), packet[positionTag]));
return 0;
}
if (stat !== "START_DESTROY_BLOCK") {
if (stat === "STOP_DESTROY_BLOCK") {
sendPacket($this, packetblockchange($this.$serverController.$worldServerForDimension($this.$playerEntity.$dimension), packet[positionTag]));
}
return 0;
}
return 0;
}
var r = globalThis.LCI_LMBEVENTS[cid].call(globalThis,
new Proxy($this.$playerEntity, ModAPI.util.TeaVM_to_Recursive_BaseData_ProxyConf),
@ -140,4 +144,4 @@
LCI_registerItem(data);
}
ModAPI.events.callEvent("lib:libcustomitems:loaded", {});
})();
})();