roadmap + fixes

This commit is contained in:
ZXMushroom63 2024-09-12 16:36:03 +08:00
parent 886f85af6e
commit 7615fb213f
3 changed files with 9 additions and 17 deletions

View File

@ -10,9 +10,7 @@ ModAPI.dedicatedServer.appendCode(function () {
return key.startsWith("rayTraceBlocks") && worldMethodMap[key].method.length === 4; return key.startsWith("rayTraceBlocks") && worldMethodMap[key].method.length === 4;
})].method; })].method;
var blockPosConstructor = ModAPI.reflect.getClassById("net.minecraft.util.BlockPos").constructors.find((x) => { return x.length === 3 }); var blockPosConstructor = ModAPI.reflect.getClassById("net.minecraft.util.BlockPos").constructors.find((x) => { return x.length === 3 });
var blockStateConstructor = ModAPI.reflect.getClassByName("BlockState").constructors[0];
var blockTypesList = Object.keys(ModAPI.blocks); var blockTypesList = Object.keys(ModAPI.blocks);
var iproperty = ModAPI.reflect.getClassById("net.minecraft.block.property.IProperty").class;
function getPlayerEntitiesAndTheirWorld() { function getPlayerEntitiesAndTheirWorld() {
var out = []; var out = [];
ModAPI.server.worldServers.forEach(x => { ModAPI.server.worldServers.forEach(x => {
@ -59,21 +57,12 @@ ModAPI.dedicatedServer.appendCode(function () {
lookVector.zCoord *= 50; lookVector.zCoord *= 50;
lookVector.addVector(start.$xCoord, start.$yCoord, start.$zCoord); lookVector.addVector(start.$xCoord, start.$yCoord, start.$zCoord);
var hitResult = rayTraceMethod(pair.world.getRef(), start, lookVector.getRef(), 0); var hitResult = rayTraceMethod(pair.world.getRef(), start, lookVector.getRef(), 0);
console.log("trace complete.");
if (hitResult) { if (hitResult) {
console.log("Attempting to set world state.");
var blockPos = blockPosConstructor(Math.round(hitResult.$hitVec.$xCoord), Math.round(hitResult.$hitVec.$yCoord), Math.round(hitResult.$hitVec.$zCoord)); var blockPos = blockPosConstructor(Math.round(hitResult.$hitVec.$xCoord), Math.round(hitResult.$hitVec.$yCoord), Math.round(hitResult.$hitVec.$zCoord));
var blockType = blockTypesList[Math.floor(Math.random() * blockTypesList.length)]; var blockType = blockTypesList[Math.floor(Math.random() * blockTypesList.length)];
blockType = ModAPI.blocks["dirt"]; //blockType blockType = ModAPI.blocks[blockType];
var block = blockStateConstructor(blockType.getRef(), ModAPI.util.makeArray(iproperty, [])); pair.world.setBlockState(blockPos, block, 3);
console.log(blockPos);
console.log(block);
ModAPI.freezeCallstack();
pair.world.setBlockState(blockPos, block, 0);
ModAPI.unfreezeCallstack();
console.log("Set world state.");
} }
console.log("sub complete");
}); });
}); });
}); });

View File

@ -1,14 +1,12 @@
//Test to make sure I can set a block //Test to make sure I can set a block
ModAPI.dedicatedServer.appendCode(function () { ModAPI.dedicatedServer.appendCode(function () {
var blockPosConstructor = ModAPI.reflect.getClassById("net.minecraft.util.BlockPos").constructors.find((x) => { return x.length === 3 }); var blockPosConstructor = ModAPI.reflect.getClassById("net.minecraft.util.BlockPos").constructors.find((x) => { return x.length === 3 });
var blockStateConstructor = ModAPI.reflect.getClassByName("BlockState").constructors[0];
var iproperty = ModAPI.reflect.getClassById("net.minecraft.block.property.IProperty").class;
ModAPI.addEventListener("processcommand", (event) => { ModAPI.addEventListener("processcommand", (event) => {
if (event.command.toLowerCase().startsWith("/testcmd")) { if (event.command.toLowerCase().startsWith("/testcmd")) {
var blockPos = blockPosConstructor(0, 0, 0); var blockPos = blockPosConstructor(0, 0, 0);
var blockType = ModAPI.blocks["dirt"]; //blockType var blockType = ModAPI.blocks["dirt"]; //blockType
var block = blockStateConstructor(blockType.getRef(), ModAPI.util.makeArray(iproperty, [])); var block = blockType.getDefaultState().getRef();
event.sender.getServerForPlayer().setBlockState(blockPos, block, 0); event.sender.getServerForPlayer().setBlockState(blockPos, block, 3);
event.preventDefault = true; event.preventDefault = true;
} }
}); });

5
roadmap.txt Normal file
View File

@ -0,0 +1,5 @@
*/*/ ZXMushroom63's rather large to do list */*/
Add makeItemStack to LCI [Todo]
Fix blocklook.js [In progress]
Fix setblocktest.js [In progress]