Some checks failed
Deploy to Remote Server / deploy (push) Failing after 1m11s
62 lines
2.3 KiB
JavaScript
62 lines
2.3 KiB
JavaScript
ItemEvents.rightClicked("createdelight:debug_reload_tool", e => {
|
||
const { server, player } = e;
|
||
if (player.isCrouching()) {
|
||
player.swing()
|
||
server.tell("§6[成功]已经重载server脚本(不包括配方)");
|
||
server.runCommand("kubejs reload server_scripts");
|
||
} else {
|
||
player.swing()
|
||
server.tell("§6[成功]已经重载client脚本");
|
||
server.runCommand("kubejs reload server_scripts");
|
||
}
|
||
return;
|
||
});
|
||
|
||
const $Registries = Java.loadClass("net.minecraft.core.registries.Registries")
|
||
ItemEvents.rightClicked("createdelight:debug_info_tool", e => {
|
||
const { level, player } = e;
|
||
let playerPos = player.block.pos
|
||
if (player.isCrouching()) {
|
||
player.swing()
|
||
/** @type {Internal.Structure[]} */
|
||
let structureArray = level.structureManager().getAllStructuresAt(playerPos).keySet().toArray()
|
||
let structureRegistry = level.registryAccess().registryOrThrow($Registries.STRUCTURE)
|
||
for (let structure of structureArray) {
|
||
let structureStart = level.structureManager().getStructureAt(playerPos, structure)
|
||
if (structureStart.isValid()) {
|
||
let structureName = structureRegistry.getKey(structure).toString()
|
||
let message = Component.of("§7- §a"+ structureName).clickCopy(structureName).hover("Structure ID(Click to Copy)")
|
||
player.tell("Locate Structure:")
|
||
player.tell(message)
|
||
}
|
||
}
|
||
} else {
|
||
e.cancel()
|
||
}
|
||
return;
|
||
});
|
||
BlockEvents.rightClicked(e => {
|
||
const { block, level, player } = e;
|
||
if(player.mainHandItem.id == "createdelight:debug_info_tool"){
|
||
let blockpos = block.pos;
|
||
try {
|
||
let blockEntityID = block.getEntityId();
|
||
let beOptional = level.getBlockEntity(blockpos, blockEntityID);
|
||
let blockEntityNBT = beOptional.get().serializeNBT();
|
||
player.swing();
|
||
player.tell("BlockEntityNBT:");
|
||
let keys = blockEntityNBT.getAllKeys().toArray();
|
||
for (let i = 0; i < keys.length; i++) {
|
||
let key = keys[i];
|
||
let valueTag = blockEntityNBT.get(key);
|
||
let valueStr = String(valueTag); // Tag 转为可读字符串
|
||
let line = `${key}: ${valueStr}`;
|
||
let message = Component.of(`§7- §e${key}§7: §a${valueStr}`)
|
||
.clickCopy(line)
|
||
.hover(`NBT ${key} (Click to Copy)`);
|
||
player.tell(message);
|
||
}
|
||
} catch (error) { }
|
||
e.cancel()
|
||
}
|
||
}) |