diff --git a/lobby-addon/lobby_transfer_BP/manifest.json b/lobby-addon/lobby_transfer_BP/manifest.json index 46ce733..162ed48 100644 --- a/lobby-addon/lobby_transfer_BP/manifest.json +++ b/lobby-addon/lobby_transfer_BP/manifest.json @@ -26,6 +26,10 @@ "module_name": "@minecraft/server", "version": "1.17.0" }, + { + "module_name": "@minecraft/server-admin", + "version": "1.0.0-beta" + }, { "uuid": "b2c3d4e5-1111-2222-3333-fedcba654321", "version": [1, 0, 0] diff --git a/lobby-addon/lobby_transfer_BP/scripts/main.js b/lobby-addon/lobby_transfer_BP/scripts/main.js index 308df34..c1aa86b 100644 --- a/lobby-addon/lobby_transfer_BP/scripts/main.js +++ b/lobby-addon/lobby_transfer_BP/scripts/main.js @@ -1,4 +1,5 @@ import { world, system } from "@minecraft/server"; +import { transferPlayer } from "@minecraft/server-admin"; // Portal block → transfer target mapping (custom blocks — priority detection) const PORTAL_BLOCKS = { @@ -93,10 +94,10 @@ system.runInterval(() => { player.teleport(safePos); // Wait 5 ticks for position to save, then transfer. - // Player.transfer replaces the removed @minecraft/server-admin `transferPlayer`. + // transferPlayer from @minecraft/server-admin beta API — requires gametest experiment + permissions.json allows server-admin. system.runTimeout(() => { try { - player.transfer({ hostname: portal.host, port: portal.port }); + transferPlayer(player, portal.host, portal.port); } catch (e) { player.sendMessage(`§cTransfer failed: ${e.message}`); }