public static void loadPlayer(Registry registry) {
        Player p = (Player) getPlayers().get(player);
        if (p != null) {
            p.setTransient(registry);
        }

        GameController gc = registry.getGameController();
        registry.getPlayerManager().clearPlayers();
        registry.getPlayerManager().registerPlayer(p);
        BlockManager bm = (BlockManager) blockManagers.get(player);
        bm.name = "Saved";
        bm = (BlockManager) bm.clone();
        bm.name = "Clone";
        bm.setTransient(registry);
        gc.setBlockManager(bm);
        PlaceableManager pm = (PlaceableManager) placeableManagers.get(player).clone();
        gc.setPlaceableManager(pm);
        MonsterManager mm = (MonsterManager) monsterManagers.get(player).clone();
        mm.setTransient(registry);
        gc.setMonsterManager(mm);

        if (p != null) {
            p.resetPlayer();
        }

        //unloadUnused();
    }