function JB_LoadMap_Phase1(%filename) {
%fileName = "Add-Ons/GameMode_Jailbreak/src/maps/" @ %fileName @ ".bls";
//put everyone in observer mode
for(%i = 0; %i < clientGroup.getCount(); %i++) {
%client = clientGroup.getObject(%i);
%player = %client.player;
if(isObject(%player))
%player.delete();
%camera = %client.camera;
%camera.setFlyMode();
%camera.mode = "Observer";
%client.setControlObject(%camera);
}
BrickGroup_2143.chaindeletecallback = "JB_LoadMap_Phase2(\"" @ %filename @ "\");";
BrickGroup_2143.chaindeleteall();
}
function JB_LoadMap_Phase2(%filename) {
echo("Loading jailbreak map " @ %filename);
%displayName = %filename;
%displayName = strReplace(%displayName, "Add-Ons/GameMode_Jailbreak/src/maps/", "");
%displayName = strReplace(%displayName, ".bls", "");
%displayName = strReplace(%displayName, "_", " ");
%displayName = "\c6Loading Map - \c3" @ %fileName;
if(%fileName $= "Gefangnis")
%displayName = %displayName @ "\c6, created by \c3Skill4Life";
if(%fileName $= "Desert")
%displayName = %displayName @ "\c6, created by \c3Niblic";
announce(%displayName);
schedule(10, 0, serverDirectSaveFileLoad, %fileName, 3, "", 1, 1);
}
Basically ripped from the speedkart gamemode, I'm trying to load a build which works but I'm wondering if there is a way to detect when the build has loaded so I can reset the minigame. Or if there is a better way to do this, I'd just rather not have people running around while the builds are clearing/loading.