在配方中使用世界種子
原創2024年11月10日小於 1 分鐘
在配方中使用世界種子
前情提要
獲取精確的世界種子
const seed = NBT.l(server.worldData.worldGenOptions().seed());
提示
只能儲存成 String 或 NBT,若存成 Number 則會因為 Java Double 浮點數精度誤差導致不精確
ServerEvents.loaded((event) => {
const { server } = event;
const seed = server.worldData.worldGenOptions().seed();
server.persistentData.putLong("seed", seed);
server.scheduleInTicks(10, () => server.runCommandSilent("reload"));
});
ServerEvents.recipes((event) => {
const { server } = Utils;
if (!server) return;
const seed = server.persistentData.getLong("seed");
// do_something(seed);
});