Explorar el Código

get rid of global vars and other debrecrated shit

Marvin Löschenkohl hace 4 años
padre
commit
6d65d230df

+ 2 - 2
global/gamecenter.txt

@@ -276,7 +276,7 @@ goto("startnewgame");
 player_loc = entity.getLocation(player);
 if(loc.isInGamesWorld(player_loc)) {
 	resetplayer(player);
-	entity.teleport(player, getGamesSpawn());
+	entity.teleport(player, world.getGamesSpawn());
 }
 goto("wait");
 
@@ -301,7 +301,7 @@ goto("wait");
 @player_pre_respawn
 if(loc.isInGamesWorld(entity.getLocation(player))) {
 	if(!player.hasMinigame(player)) {
-		player.setSpawn(player, getGamesSpawn());
+		player.setSpawn(player, world.getGamesSpawn());
 	}
 }
 goto("wait");

+ 35 - 35
global/ranklist.txt

@@ -16,32 +16,32 @@ messages = map.new();
 rankingtables = map.new();
 ascendingGames = set.new();
 
-addRanking("§b", "BedWars", "bwranks", "Kills", "bwstats", false);
-addRanking("§c", "RageMode", "rmranks", "Kills", "rmstats", false);
-addRanking("§a", "Jump'n'Run", "jumpranks", "Sprungrekord", "jrstats", false);
-addRanking("§5", "Rebuild", "rebuildranks", "gelöste Muster", "rbstats", false);
-addRanking("§d", "FastBridge", "fastbridgeranks", "max gesetzte Blöcke", "fbstats", false);
-addRanking("§6", "SnowGame", "snowranks", "Kills", "snowstats", false);
-addRanking("§6", "TJR", "tjrranks", "Modulen", "tjrstats", false);
-addRanking("§b", "IJR", "icejrranks", "Checkpoints", "icejrstats", false);
-addRanking("§d", "Letters", "letterranks", "Zeit", "lestats", true);
-addRanking("§a", "Sammelfieber", "sfsingle", "Items", "sfstats", false);
-addRanking("§2", "Buttons", "buttonranks", "Klicks", "bustats", false);
-addRanking("§9", "Catch", "fncranks", "Wins", "fncstats", false);
-addRanking("§9", "Inverting", "invertranks", "Klicks", "invertstats", true);
-addRanking("§9", "Spleef", "spleefranks", "Wins", "spleefstats", false);
-addRanking("§c", "Knockfight", "knockranks", "Kills", "knockstats", false);
-addRanking("§9", "Leapfrog", "leapfrogranks", "Punkte", "leapfrogstats", false);
-addRanking("§6", "Parcour", "parcourranks1", "Zeit", "parcourstats", true);
-addRanking("§e", "Halma", "halmaranks", "Wins", "halmastats", false);
-addRanking("§e", "ShoppingChaos", "shoppingranks", "Wins", "scstats", false);
+ranking.add("§b", "BedWars", "bwranks", "Kills", "bwstats", false);
+ranking.add("§c", "RageMode", "rmranks", "Kills", "rmstats", false);
+ranking.add("§a", "Jump'n'Run", "jumpranks", "Sprungrekord", "jrstats", false);
+ranking.add("§5", "Rebuild", "rebuildranks", "gelöste Muster", "rbstats", false);
+ranking.add("§d", "FastBridge", "fastbridgeranks", "max gesetzte Blöcke", "fbstats", false);
+ranking.add("§6", "SnowGame", "snowranks", "Kills", "snowstats", false);
+ranking.add("§6", "TJR", "tjrranks", "Modulen", "tjrstats", false);
+ranking.add("§b", "IJR", "icejrranks", "Checkpoints", "icejrstats", false);
+ranking.add("§d", "Letters", "letterranks", "Zeit", "lestats", true);
+ranking.add("§a", "Sammelfieber", "sfsingle", "Items", "sfstats", false);
+ranking.add("§2", "Buttons", "buttonranks", "Klicks", "bustats", false);
+ranking.add("§9", "Catch", "fncranks", "Wins", "fncstats", false);
+ranking.add("§9", "Inverting", "invertranks", "Klicks", "invertstats", true);
+ranking.add("§9", "Spleef", "spleefranks", "Wins", "spleefstats", false);
+ranking.add("§c", "Knockfight", "knockranks", "Kills", "knockstats", false);
+ranking.add("§9", "Leapfrog", "leapfrogranks", "Punkte", "leapfrogstats", false);
+ranking.add("§6", "Parcour", "parcourranks1", "Zeit", "parcourstats", true);
+ranking.add("§e", "Halma", "halmaranks", "Wins", "halmastats", false);
+ranking.add("§e", "ShoppingChaos", "shoppingranks", "Wins", "scstats", false);
 
-registerRanking("invertranks5x5");
-registerRanking("invertranks7x7");
-registerRanking("invertranks10x10");
-registerRanking("invertranks5x5cl");
-registerRanking("invertranks7x7cl");
-registerRanking("invertranks10x10cl");
+ranking.register("invertranks5x5");
+ranking.register("invertranks7x7");
+ranking.register("invertranks10x10");
+ranking.register("invertranks5x5cl");
+ranking.register("invertranks7x7cl");
+ranking.register("invertranks10x10cl");
 
 msg("dev", "§bStatistics §rloaded");
 @wait
@@ -132,7 +132,7 @@ if(event == "custom_command") {
 					sgv(p_uuid, "knockwon", null);
 				} 
 				p_id = player.getId(p_uuid);
-				removePlayerStats(p_id, table);
+				ranking.removePlayer(p_id, table);
 				speakPrefix(player, stats_prefix, concat("§e", p_name, "§r from statistic removed."));
 				goto("wait");
 			}
@@ -186,7 +186,7 @@ if(event == "custom_command") {
 		p_uuid = player.getUuid(p_name);
 		p_id = player.getId(p_uuid);
 		p_name = player.getNameFromId(p_id);
-		removePlayerStats(p_id, table);
+		ranking.removePlayer(p_id, table);
 		player.speak(player, stats_prefix, concat("§e", p_name, "§r from statistic removed."));
 		goto("wait");
 	}
@@ -243,7 +243,7 @@ if(event == "custom_command") {
 		p_name = player.getNameFromId(p_id);
 		table = map.get(rankingtables, gamename);
 		table = concat(table, sub_game);
-		removePlayerStats(p_id, table);
+		ranking.removePlayer(p_id, table);
 		player.speak(player, stats_prefix, concat("§e", p_name, "§r from statistic removed."));
 		goto("wait");
 	}
@@ -279,11 +279,11 @@ function showPlayerStats(player, gamename, table, p_name) {
 	} else {
 		order = "DESC";
 	}
-	rang = getPlayerRank(p_id, table, order);
+	rang = ranking.getPlayerRank(p_id, table, order);
 	if(rang == -1) {
 		speakPrefix(player, $stats_prefix, "You didn't played this game.");
 	} else {
-		a = getPlayerStats(p_id, table, "ASC");
+		a = ranking.getPlayerStats(p_id, table, "ASC");
 		points = a[1];
 		if(gamename == "Letters" || gamename == "Parcour") {
 			sendTimedRank(player, p_name, rang, points);
@@ -300,9 +300,9 @@ function showTopStats(player, gamename, table) {
 	message = map.get($messages, gamename);
 	color = map.get($colorcodes, gamename);
 	if(set.contains($ascendingGames, gamename)) {
-		list = getTopTenList(table, "ASC");
+		list = ranking.getTopTenList(table, "ASC");
 	} else {
-		list = getTopTenList(table, "DESC");
+		list = ranking.getTopTenList(table, "DESC");
 	}
 	if(list.getSize(list) == 0) {
 		speakPrefix(player, concat(color, gamename), "Nobody played this game.");
@@ -331,7 +331,7 @@ function showTopStats(player, gamename, table) {
 	showPlayerStats(player, gamename, table, player.getName(player));
 }
 
-function addRanking(colorcode, name, rankingtable, message, label, ascending) {
+function ranking.add(colorcode, name, rankingtable, message, label, ascending) {
 	map.add($colorcodes, name, colorcode);
 	list.add($games, name);
 	map.add($rankingtables, name, rankingtable);
@@ -343,7 +343,7 @@ function addRanking(colorcode, name, rankingtable, message, label, ascending) {
 	if(rankingtable == "invertranks") {
 		return;
 	}
-	registerRanking(rankingtable);
+	ranking.register(rankingtable);
 }
 
 function sendRank(player, p_name, rang, points) {
@@ -361,7 +361,7 @@ if(set.contains(ascendingGames, gamename)) {
 } else {
 	order = "DESC";
 }
-a = getRankingFromRank(table, rank, order);
+a = ranking.getArrayFromRank(table, rank, order);
 if(a == null) {
 	speakPrefix(player, stats_prefix, "Invalid rank.");
 	goto("wait");

+ 14 - 13
minigames/bedwars/bedwars.txt

@@ -75,7 +75,6 @@ warp_powder = read.item("{id:\"minecraft:gunpowder\",Count:1b,tag:{display:{Lore
 blaze_rod = read.item("minecraft:blaze_rod", 1, "§rRettungsplattform");
 bed_tag = block.getTag("minecraft:beds");
 bed_tag2 = item.getTag("minecraft:beds");
-serverspawn = read.location(ggv("SERVER", "serverspawn"));
 
 for(team = 0; team < numberofteams; team++) {
 	map.add(playersinteam, team, 0);
@@ -877,12 +876,7 @@ function showstats(player, show_time, won) { //Player player, Boolean show_time,
 	p_deaths = map.get($deaths, player_name);
 	p_allkills = map.get($allkills, player_name);
 	p_bedkills = map.get($bedkills, player_name);
-	
-	if(ggv(player, "allbwkills") == null) {
-		sgv(player, "allbwkills", p_allkills);
-	} else {
-		sgv(player, "allbwkills", ggv(player, "allbwkills") + p_allkills);
-	}
+	bw.setAllKills(player, bw.getAllKills(player) + p_allkills);
 	
 	minigame.statsHeader(player, $gamename, "§e");
 	if(show_time) {
@@ -899,20 +893,27 @@ function showstats(player, show_time, won) { //Player player, Boolean show_time,
 	minigame.statsLine(player, "§e", "Destroyed beds", text.number(map.get($brokenbeds, player_name)));
 	minigame.statsLine(player, "§e", "Played games", text.number(playedgames));
 	
-	wongames = ggv(player, "bwwon");
-	if(wongames == null) {
-		wongames = 0;
-	}
+	wongames = minigame.getWon(player, "bw");
 	if(won) {
 		wongames++;
+		minigame.setWon(player, "knock", wongames);
 	}
-	sgv(player, "bwwon", wongames);
 	minigame.statsLine(player, "§e", "Won games", text.number(wongames));
 	if(playedgames != 0) {
 		minigame.statsLine(player, "§e", "Win ratio", concat(text.number(math.roundComma((wongames / playedgames) * 100, 2)), "%"));
 	}
 }
-return;
+
+function bw.setAllKills(player_or_id, amount) {
+	config = playerdata.getGames(player_or_id);
+	config.set(config, "allbwkills", amount);
+	config.saveAsync(config);
+}
+
+function bw.getAllKills(player_or_id) {
+	config = playerdata.getGames(player_or_id);
+	return config.getDouble(config, "allbwkills", 0);
+}
 
 function setBed(team) {
 	facing = map.get($bed_facing, team);

+ 4 - 7
minigames/fastbridge/fastbridge.txt

@@ -30,7 +30,7 @@ if(seconds < 10) {
 for(i = 0; i < list.getSize(player_list); i++) {
 	p = player.get(list.getIndex(player_list, i));
 	p_uuid = player.getUuid(p);
-	speakPrefix(p, gamename, "The game has started.");
+	msg.prefix(p, gamename, "The game has started.");
 	spawnloc = list.getIndex(spawns, i);
 	map.add(spawn_locs, p, spawnloc);
 	entity.teleport(p, spawnloc);
@@ -204,14 +204,11 @@ function wincore(winner) {
 		}
 		setRanking($rankingtable, player_id, record, playedgames);
 		
-		fbwon = ggv(player, "fbwon");
-		if(fbwon == null) {
-			fbwon = 0;
-		}
+		fbwon = minigame.getWon(player, "fb");
 		if(player == winner) {
-			fbwon += 1;
+			fbwon++;
+			minigame.setWon(player, "fb", fbwon);
 		}
-		sgv(player, "fbwon", fbwon);
 		
 		minigame.statsHeader(player, $gamename, "§e");
 		for(h = 0; h < list.getSize($player_list); h++) {

+ 14 - 7
minigames/jumpnrun/icejumpnrun.txt

@@ -28,7 +28,6 @@ list.add(notallowed, "j");
 list.add(notallowed, "jumpto");	
 
 gamesworld = world.get("games");
-gamesworldloc = read.location(ggv("SERVER", "gamesspawn"));
 sign_tag = block.getTag("minecraft:signs");
 
 checkpoints = list.new();
@@ -94,9 +93,6 @@ single_uuid = player.getUuid(player);
 starttime = time.getMillis();
 player.blockCommands(player);
 jumpstage = getPoints(rankingtable, player.getId(player));
-if(jumpstage == 0) {
-    sgv(player, "icejumptime", 0);
-}
 entity.teleport(player, list.getIndex(spawnlocs, jumpstage));
 player.clearInventory(player);
 entity.addEffect(player, "minecraft:night_vision", 32760, 0, false);
@@ -180,8 +176,8 @@ player.setGamemode(player, "survival");
 player.unblockCommands(player);
 endtime = time.getMillis();
 time = endtime - starttime;
-newtime = ggv(player, "icejumptime") + time;
-sgv(player, "icejumptime", newtime);
+newtime = ijr.getIjrTime(player) + time;
+ijr.setIjrTime(player, newtime);
 setRanking(rankingtable, player.getId(player), jumpstage, -1);
 owntime = newtime / 1000; //in Sekunden
 hours = text.number(math.rounddown(owntime / 3600));
@@ -192,4 +188,15 @@ minigame.statsLine(player, "§e", "Time", concat(hours, "h ", minutes, "min"));
 script = script.getFromId(script_id);
 minigame.kickPlayer(script, player);
 minigame.term(script, gamesignloc);
-term();
+term();
+
+function ijr.setIjrTime(player_or_id, time) {
+	config = playerdata.getGames(player_or_id);
+	config.set(config, "icejumptime", time);
+	config.saveAsync(config);
+}
+
+function ijr.getIjrTime(player_or_id) {
+	config = playerdata.getGames(player_or_id);
+	return config.getDouble(config, "icejumptime", 0);
+}

+ 13 - 3
minigames/jumpnrun/todesjumpnrun.txt

@@ -184,7 +184,6 @@ starttime = time.getMillis();
 player.blockCommands(player);
 jumpstage = getPoints(rankingtable, player.getId(player));
 if(jumpstage == 0) {
-	sgv(player, "todesjumptime", 0);
     entity.teleport(player, loc.new(gamesworld, 3939.5, 52, -5881.5, 180, 0));
 } else {
     entity.teleport(player, list.getIndex(spawnlocs, jumpstage - 1));
@@ -336,8 +335,8 @@ player.setGamemode(player, "survival");
 player.unblockCommands(player);
 endtime = time.getMillis();
 time = endtime - starttime;
-newtime = ggv(player, "todesjumptime") + time;
-sgv(player, "todesjumptime", newtime);
+newtime = tjr.getTjrTime(player) + time;
+tjr.setTjrTime(player, newtime);
 setRanking(rankingtable, player.getId(player), jumpstage, -1);
 owntime = newtime / 1000; //in Sekunden
 hours = text.number(math.rounddown(owntime / 3600));
@@ -349,3 +348,14 @@ script = script.getFromId(script_id);
 minigame.kickPlayer(script, player);
 minigame.term(script, gamesignloc);
 term();
+
+function tjr.setTjrTime(player_or_id, time) {
+	config = playerdata.getGames(player_or_id);
+	config.set(config, "todesjumptime", time);
+	config.saveAsync(config);
+}
+
+function tjr.getTjrTime(player_or_id) {
+	config = playerdata.getGames(player_or_id);
+	return config.getDouble(config, "todesjumptime", 0);
+}

+ 3 - 6
minigames/knockfight/knockfight.txt

@@ -32,7 +32,7 @@ resetlist = list.new();
 for(i = 0; i < size; i++) {
 	p_uuid = list.getIndex(player_list, i);
 	p = player.get(p_uuid);
-	speakPrefix(p, gamename, "The game has started.");
+	msg.prefix(p, gamename, "The game has started.");
 	resetplayer(p);
 	entity.teleport(p, list.getIndex(startlocs, i));
 	player.setGamemode(p, "survival");
@@ -223,17 +223,14 @@ function showstats(player, won) { //showstats(Player player, Boolean won)
 	points = last_record + knockedplayers;
 	setRanking($rankingtable, player_id, points, playedgames);
 	
-	wongames = ggv(player, "knockwon");
-	if(wongames == null) {
-		wongames = 0;
-	}
+	wongames = minigame.getWon(player, "knock");
 	if(won) {
 		wongames++;
+		minigame.setWon(player, "knock", wongames);
 		winningtext = "Yes";
 	} else {
 		winningtext = "No";
 	}
-	sgv(player, "knockwon", wongames);
 	
 	minigame.statsHeader(player, $gamename, "§e");
 	minigame.statsLine(player, "§e", "Kills", text.hover(text.number(knockedplayers), "Relevant for ranking"));

+ 19 - 22
minigames/ragemode/ragemode.txt

@@ -78,10 +78,10 @@ if(event == "inv_close") {
 		}
 	}
 	if(counter == 5) {
-		speakPrefix(player, gamename, "§eChanges saved.");
+		msg.prefix(player, gamename, "§eChanges saved.");
 	} else {
 		saveDefaultInventory(player);
-		speakPrefix(player, gamename, "§eInvalid change. Set to default.");
+		msg.prefix(player, gamename, "§eInvalid change. Set to default.");
 	}
 }
 return;
@@ -111,7 +111,7 @@ id = 3;
 for(i = 0; i < size; i++) {
 	for_p = player.get(list.getIndex(player_list, i));
 	for_pname = player.getName(for_p);
-	speakPrefix(for_p, gamename, "The game has started.");
+	msg.prefix(for_p, gamename, "The game has started.");
 	minigame.displayAll(id, concat("0 §8", for_pname));
 	display.add(for_p, id, concat("0 §e", for_pname));
 	id++;
@@ -219,7 +219,7 @@ defender_name = player.getName(defender);
 defender_uuid = player.getUuid(defender);
 
 if(!list.contains(player_list, defender_uuid)) {
-	speakPrefix(player, gamename, "§eIllegal player in game.");
+	msg.prefix(player, gamename, "§eIllegal player in game.");
 	goto("wait");
 }
 attacker = player.getFromDamageSource(damage_source);
@@ -235,7 +235,7 @@ if(defender_uuid == attacker_uuid) {
 	goto("wait");
 }
 if(!list.contains(player_list, attacker_uuid)) {
-	speakPrefix(player, gamename, "§eIllegal player in game.");
+	msg.prefix(player, gamename, "§eIllegal player in game.");
 	goto("wait");
 }
 attacker_item = entity.getEquip(attacker, "hand");
@@ -248,8 +248,8 @@ if(attacker_item_type == "minecraft:iron_axe") {
 } elseif(attacker_item_type == "minecraft:air") {
 	goto("wait");
 }
-speakPrefix(attacker, gamename, concat("§eYou killed §8", defender_name, "."));
-speakPrefix(defender, gamename, concat("§8", attacker_name, " §ekilled you."));
+msg.prefix(attacker, gamename, concat("§eYou killed §8", defender_name, "."));
+msg.prefix(defender, gamename, concat("§8", attacker_name, " §ekilled you."));
 gosub("core");
 goto("wait");
 
@@ -279,8 +279,8 @@ if(item.getType(item) != "minecraft:air") {
 				defender_name = player.getName(defender);
 				if(defender != attacker) {
 					gosub("core");
-					speakPrefix(attacker, gamename, concat("§eYou killed §8", defender_name, "."));
-					speakPrefix(defender, gamename, concat("§8", attacker_name, " §ekilled you."));
+					msg.prefix(attacker, gamename, concat("§eYou killed §8", defender_name, "."));
+					msg.prefix(defender, gamename, concat("§8", attacker_name, " §ekilled you."));
 				}
 			}
 			no_emerald = false;
@@ -308,9 +308,9 @@ goto("wait");
 @axeCore
 action = "axeHit";
 sound.spawnForPlayer(defender, wither_sound, ambient_sound_category);
-speakPrefix(attacker, gamename, concat("§eYou killed §8", defender_name, " §ewith you axe."));
-speakPrefix(defender, gamename, concat("§8", attacker_name, " §ekilled you with his axe."));
-speakPrefix(defender, gamename, "Your Kills: §c-25§r%");
+msg.prefix(attacker, gamename, concat("§eYou killed §8", defender_name, " §ewith you axe."));
+msg.prefix(defender, gamename, concat("§8", attacker_name, " §ekilled you with his axe."));
+msg.prefix(defender, gamename, "Your Kills: §c-25§r%");
 map.add(axekills, attacker_name, map.get(axekills, attacker_name) + 1);
 setTheoreticKills(defender_name, math.rounddown(getTheoreticKills(defender_name) * 0.75));
 gosub("core");
@@ -319,13 +319,13 @@ goto("wait");
 @core
 emeraldid = 3 + list.getSize(player_list);
 if(!no_emerald) {
-	speakPrefix(attacker, gamename, "§e+§r1 §aEmerald");
+	msg.prefix(attacker, gamename, "§e+§r1 §aEmerald");
 	map.add(emeralds, attacker_name, map.get(emeralds, attacker_name) + 1);
 	display.add(attacker, emeraldid, "Emeralds: §a", text.number(map.get(emeralds, attacker_name)));
 }
 if(defender_name == map.get(nemesis, attacker_name)) {
-	speakPrefix(attacker, gamename, "§eYou killed your §cNemesis enemy.");
-	speakPrefix(attacker, gamename, "§e+§r1 §aEmerald");
+	msg.prefix(attacker, gamename, "§eYou killed your §cNemesis enemy.");
+	msg.prefix(attacker, gamename, "§e+§r1 §aEmerald");
 	map.add(emeralds, attacker_name, map.get(emeralds, attacker_name) + 1);
 	display.add(attacker, emeraldid, "Emeralds: §a", text.number(map.get(emeralds, attacker_name)));
 }
@@ -410,19 +410,16 @@ for(i = 0; i < list.getSize(player_list); i++) {
 	playedgames = getPlayedGames(rankingtable, p_id) + 1;
 	setRanking(rankingtable, p_id, record, playedgames);
 
-	wongames = ggv(puuid, "rmwon");
-	if(wongames == null) {
-		wongames = 0;
-	}
-	sgv(puuid, "rmwon", wongames);
+	wongames = minigame.getWon(p, "rm");
 	if(pname == winner_name) {
 		winningtext = "Yes";
 		wongames++;
+		minigame.setWon(p, "rm", wongames);
 	} else {
 		winningtext = "No";
 	}
 	
-	speakPrefix(p, gamename, concat("§8", winner_name, " §ehas won §cRageMode."));
+	msg.prefix(p, gamename, concat("§8", winner_name, " §ehas won §cRageMode."));
 	
 	minigame.statsHeader(p, gamename, "§e");
 	minigame.statsLine(p, "§e", "Time", concat(text.number(math.round(time / 60)), " Minuten ", text.number(time % 60), " Sekunden"));
@@ -546,7 +543,7 @@ function giveRmInventory(player) {
 	}
 	if(counter != 5) {
 		inv = saveDefaultInventory(player);
-		speakPrefix(player, $gamename, "§eUngültiges Inventar erkannt. Default-Inventar wird verwendet.");
+		msg.prefix(player, $gamename, "§eUngültiges Inventar erkannt. Default-Inventar wird verwendet.");
 		goto("tryagain");
 	}
 	player.setInvSlot(player, 9, $arrow);

+ 4 - 8
minigames/rebuild/rebuild.txt

@@ -231,16 +231,12 @@ function wincore(winner) {
 			playedgames = getPlayedGames($rankingtable, p_id) + 1;
 			record = last_record + map.get($solved, p_uuid);
 			setRanking($rankingtable, p_id, record, playedgames);
-			
-			rebuildwon = ggv(p, "rebuildwon");
-			if(rebuildwon == null) {
-				rebuildwon = 0;
-			}
+
+			rebuildwon = minigame.getWon(p, "rebuild");
 			if(p == winner) {
-				rebuildwon += 1;
+				rebuildwon++;
+				minigame.setWon(p, "rebuild", rebuildwon);
 			}
-			sgv(p, "rebuildwon", rebuildwon);
-			
 			msg(p, "");
 		}
 		minigame.statsHeader(p, $gamename, "§e");

+ 2 - 5
minigames/snowgame/snowgame.txt

@@ -316,14 +316,11 @@ function showstats(player, show_time, won) { //Player player, Boolean show_time,
 	record = last_record + kills;
 	setRanking($rankingtable, player_id, record, playedgames);
 	deaths = map.get($deaths_map, player_name);
-	wongames = ggv(player, "snowwon");
-	if(wongames == null) {
-		wongames = 0;
-	}
+	wongames = minigame.getWon(player, "snow");
 	if(won) {
 		wongames++;
+		minigame.setWon(player, "snow", wongames);
 	}
-	sgv(player, "snowwon", wongames);
 	
 	minigame.statsHeader(player, $gamename, "§e");
 	if(show_time) {

+ 0 - 4
test.txt

@@ -1,4 +0,0 @@
-stmt = databank.prepare("DELETE FROM scriptdata WHERE var = ?;");
-databank.setString(stmt, 1, "spleefplayed");
-databank.workerExecute(stmt);
-msg("dev", "Done");

+ 0 - 15
test2.txt

@@ -1,15 +0,0 @@
-set = set.new();
-
-stmt = databank.prepare("SELECT var,value FROM scriptdata;");
-result = databank.execute(stmt);
-while(databank.next(result)) {
-	set.add(set, databank.getString(result, 1));
-}
-databank.close(result);
-databank.close(stmt);
-
-msg("dev", "-----------------------");
-iter = set.iterator(set);
-while(hasNext(iter)) {
-	msg("dev", next(iter));
-}

+ 279 - 241
utils/u_games.txt

@@ -188,6 +188,10 @@ minigame.setStarttimesList();
 minigame.setupMultiplayer();
 return;
 
+//--------------------------------------------------
+//Minigame-Utils
+//--------------------------------------------------
+
 function minigame.loadLobbyEvents() {
 	event.load("player_join");
 	event.load("player_logout");
@@ -219,7 +223,7 @@ function minigame.setupMultiplayer() {
 	$sound_category_player = sound.getCategory("player");
 	$join_sound = sound.get("minecraft:block.note_block.bass");
 	$pling_sound = sound.get("minecraft:block.note_block.pling");
-	$gamesworldloc = getGamesSpawn();
+	$gamesworldloc = world.getGamesSpawn();
 }
 
 function minigame.setLastPos(player) {
@@ -239,23 +243,197 @@ function minigame.getLastPos(player) {
 	return location;
 }
 
+function minigame.isStarted(sign_loc) {
+	return block.getSign(sign_loc, 3) == "§bStarted";
+}
+
+function minigame.getSignLoc(sign_name) {
+	return map.get(getScriptVar("gamesigns"), sign_name);
+}
+
+function minigame.term(script, gamesignloc) {
+	setScriptVar("sign_loc", gamesignloc);
+	script.callEvent("term_script");
+	sign.ready(gamesignloc);
+	script.term(script);
+}
+
+function minigame.speakAll(prefix, message) {
+	iter = list.iterator(minigame.getPlayers($script_id));
+	while(hasNext(iter)) {
+		p_uuid = next(iter);
+		p = player.get(p_uuid);
+		player.speakPrefix(p, prefix, message);
+	}
+}
+
+function minigame.msgAll(message) {
+	iter = list.iterator(minigame.getPlayers($script_id));
+	while(hasNext(iter)) {
+		p_uuid = next(iter);
+		p = player.get(p_uuid);
+		msg(p, message);
+	}
+}
+
+function minigame.displayAll(line, message) {
+	iter = list.iterator(minigame.getPlayers($script_id));
+	while(hasNext(iter)) {
+		p_uuid = next(iter);
+		p = player.get(p_uuid);
+		display.add(p, line, message);
+	}
+}
+
+function minigame.titleAll(title, subtitle, fadeIn, show, fadeOut) {
+	iter = list.iterator(minigame.getPlayers($script_id));
+	while(hasNext(iter)) {
+		p_uuid = next(iter);
+		p = player.get(p_uuid);
+		title.setTime(p, fadeIn, show, fadeOut);
+		title.setSub(p, subtitle);
+		title.send(p, title);
+	}
+}
+
+function minigame.displayRemoveAll(line) {
+	iter = list.iterator(minigame.getPlayers($script_id));
+	while(hasNext(iter)) {
+		p_uuid = next(iter);
+		p = player.get(p_uuid);
+		display.remove(p, line);
+	}
+}
+
+function minigame.displayResetAll() {
+	iter = list.iterator(minigame.getPlayers($script_id));
+	while(hasNext(iter)) {
+		p_uuid = next(iter);
+		p = player.get(p_uuid);
+		display.reset(p);
+	}
+}
+
+function minigame.statsHeader(player, gamename, colorcode) {
+	msg(player, "[", gamename, "§r] §r---= ", colorcode, "Statistic §r=---");
+}
+
+function minigame.statsLine(player, colorcode, string, value) {
+	msg(player, colorcode, " -§r ", string, ": ", colorcode, value);
+}
+
+function getTeamWithLowestPeople(team_lists, numberofteams) {
+	teamlist = map.get(team_lists, 0);
+	lowest = list.getSize(teamlist);
+	lowestteam = 0;
+	for(i = 1; i < numberofteams; i++) {
+		teamlist = map.get(team_lists, i);
+		size = list.getSize(teamlist);
+		if(size < lowest) {
+			lowest = size;
+			lowestteam = i;
+		}
+	}
+	return lowestteam;
+}
+
+function minigame.kickPlayer(script, player) {
+	resetplayer(player);
+	player.tpGamesLobby(player);
+	script_id = script.getId(script);
+	list = minigame.getPlayers(script_id);
+	list.remove(list, player.getUuid(player));
+	sign.players($gamesignloc, list.getSize(list), $maxplayers);
+	set.remove(player.getMinigameIds(player), script_id);
+}
+
+function minigame.kickAllPlayers(script) {
+	player_list = minigame.getPlayers(script.getId(script));
+	list = list.new();
+	//Create copy
+	iter = list.iterator(player_list);
+	while(hasNext(iter)) {
+		list.add(list, next(iter));
+	}
+	iter = list.iterator(list);
+	while(hasNext(iter)) {
+		minigame.kickPlayer(script, player.get(next(iter)));
+	}
+}
+
+function minigame.getPlayers(script_id) {
+	map = getScriptVar("script_players");
+	list = map.get(map, script_id);
+	if(list == null) {
+		list = list.new();
+		map.add(map, script_id, list);
+	}
+	return list;
+}
+
+function minigame.setWon(player_or_id, game_short, amount) {
+	config = playerdata.getGames(player_or_id);
+	config.set(config, concat("won.", game_short), amount);
+	config.saveAsync(config);
+}
+
+function minigame.getWon(player_or_id, game_short) {
+	config = playerdata.getGames(player_or_id);
+	return config.getDouble(config, concat("won.", game_short), 0);
+}
+
+//--------------------------------------------------
+//Player-Utils
+//--------------------------------------------------
+
 function player.tpGamesLobby(player) {
 	lastpos = minigame.getLastPos(player);
 	if(lastpos != null) {
 		entity.teleport(player, read.location(lastpos));
 	} else {
-		entity.teleport(player, getGamesSpawn());
+		entity.teleport(player, world.getGamesSpawn());
 	}
 	minigame.displayElo(player, minigame.getElo(player));
 }
 
+function player.resetMinigames(player) {
+	id_set = player.getMinigameIds(player);
+	set.clear(id_set);
+}
+
+function player.hasMinigameId(player, script_id) {
+	set = player.getMinigameIds(player);
+	return set.contains(set, script_id);
+}
+
+function resetplayer(player) {
+	entity.cleareffects(player);
+	entity.setHealth(player, 20);
+	player.setHunger(player, 20);
+	player.setSaturation(player, 5);
+	display.reset(player);
+	player.clearInventory(player);
+	stacks.clear(player);
+	status.reset(player);
+	stacks.setActive(player, false);
+	entity.setName(player, player.getName(player));
+	boss.send(player, "REMOVE");
+	player.setSpeed(player, 1 / 20);
+	entity.setGravity(player, true);
+	inv.close(player);
+}
+
+//--------------------------------------------------
+//Ranking-Utils
+//--------------------------------------------------
+
 //Tabelle in Datenbank registrieren
-function registerRanking(rankingtable) {
+function ranking.register(rankingtable) {
 	databank.workerExecute(databank.prepare(concat("CREATE TABLE IF NOT EXISTS ", rankingtable, " (player_id INT NOT NULL PRIMARY KEY, points INT NOT NULL, playedgames INT NOT NULL);")));
 }
 
 //Gibt zurück, ob der Spieler bereits im Ranking gelistet ist
-function isPlayerInRanking(rankingtable, player_id) {
+function ranking.isPlayerRegisterd(rankingtable, player_id) {
 	playedgames = getPlayedGames(rankingtable, player_id);
 	if(playedgames == 0) {
 		return false;
@@ -263,83 +441,109 @@ function isPlayerInRanking(rankingtable, player_id) {
 	return true;
 }
 
+function setRanking(rankingtable, player_id, points, playedgames) { //Deprecated
+	ranking.set(rankingtable, player_id, points, playedgames);
+}
+
 //Setzt die Statistik eines Spielers
-function setRanking(rankingtable, player_id, points, playedgames) {
-	if(isPlayerInRanking(rankingtable, player_id)) {
-		setRankingStatement = databank.prepare(concat("UPDATE ", rankingtable, " SET points = ?, playedgames = ? WHERE player_id = ?;"), false);
+function ranking.set(rankingtable, player_id, points, playedgames) {
+	if(ranking.isPlayerRegisterd(rankingtable, player_id)) {
+		stmt = databank.prepare(concat("UPDATE ", rankingtable, " SET points = ?, playedgames = ? WHERE player_id = ?;"), false);
 	} else {
-		setRankingStatement = databank.prepare(concat("INSERT INTO ", rankingtable, " (points, playedgames, player_id) VALUES (?,?,?);"), false);
+		stmt = databank.prepare(concat("INSERT INTO ", rankingtable, " (points, playedgames, player_id) VALUES (?,?,?);"), false);
 	}
-	databank.setInt(setRankingStatement, 1, points);
-	databank.setInt(setRankingStatement, 2, playedgames);
-	databank.setInt(setRankingStatement, 3, player_id);
-	databank.workerExecute(setRankingStatement);
+	databank.setInt(stmt, 1, points);
+	databank.setInt(stmt, 2, playedgames);
+	databank.setInt(stmt, 3, player_id);
+	databank.workerExecute(stmt);
+}
+
+function getRanking(rankingtable, player_id, order) { //Deprecated
+	return ranking.getRank(rankingtable, player_id, order);
 }
 
 //Gibt den Rang zurück. Auswertung erfolgt auf- oder absteigend
-function getRanking(rankingtable, player_id, order) {
+function ranking.getRank(rankingtable, player_id, order) {
 	rank = -1;
 	list = list.new();
-	getRankingStatement = databank.prepare(concat("SELECT player_id FROM ", rankingtable, " ORDER BY points ", order, ";"));
-	result = databank.execute(getRankingStatement);
+	stmt = databank.prepare(concat("SELECT player_id FROM ", rankingtable, " ORDER BY points ", order, ";"));
+	result = databank.execute(stmt);
 	while(databank.next(result)) {
 		list.add(list, databank.getInt(result, 1));
 	}
 	rank = list.getIndexOf(list, player_id) + 1;
 	databank.close(result);
-	databank.close(getRankingStatement);
+	databank.close(stmt);
 	return rank;
 }
 
+function getPoints(rankingtable, player_id) { //Deprecated
+	return ranking.getPoints(rankingtable, player_id);
+}
+
 //Gibt die Rekord-Punkte eines Spielers zurück
-function getPoints(rankingtable, player_id) {
-	points = 0;
-	getPointsStatement = databank.prepare(concat("SELECT points FROM ", rankingtable, " WHERE player_id = ?;"));
-	databank.setInt(getPointsStatement, 1, player_id);
-	result = databank.execute(getPointsStatement);
-	while(databank.next(result)) {
+function ranking.getPoints(rankingtable, player_id) {
+	stmt = databank.prepare(concat("SELECT points FROM ", rankingtable, " WHERE player_id = ?;"));
+	databank.setInt(stmt, 1, player_id);
+	result = databank.execute(stmt);
+	if(databank.next(result)) {
 		points = databank.getInt(result, 1);
+	} else {
+		points = 0;
 	}
 	databank.close(result);
-	databank.close(getPointsStatement);
+	databank.close(stmt);
 	return points;
 }
 
+function setPoints(rankingtable, player_id, points) { //Deprecated
+	ranking.setPoints(rankingtable, player_id, points);
+}
+
 //Setzt die Rekord-Punkte eines Spielers
-function setPoints(rankingtable, player_id, points) {
-	setPointsStatement = databank.prepare(concat("UPDATE ", rankingtable, " SET points = ? WHERE player_id = ?;"), false);
-	databank.setInt(setPointsStatement, 1, points);
-	databank.setInt(setPointsStatement, 2, player_id);
-	databank.workerExecute(setPointsStatement);
+function ranking.setPoints(rankingtable, player_id, points) {
+	stmt = databank.prepare(concat("UPDATE ", rankingtable, " SET points = ? WHERE player_id = ?;"), false);
+	databank.setInt(stmt, 1, points);
+	databank.setInt(stmt, 2, player_id);
+	databank.workerExecute(stmt);
+}
+
+function setPlayedGames(rankingtable, player_id, playedgames) { //Deprecated
+	ranking.setPlayedGames(rankingtable, player_id, playedgames);
 }
 
 //Setzt die Anzahl gespielter Spiele eines Spielers
-function setPlayedGames(rankingtable, player_id, playedgames) {
-	setPlayedGamesStatement = databank.prepare(concat("UPDATE ", rankingtable, " SET playedgames = ? WHERE player_id = ?;"), false);
-	databank.setInt(setPlayedGamesStatement, 1, playedgames);
-	databank.setInt(setPlayedGamesStatement, 2, player_id);
-	databank.workerExecute(setPlayedGamesStatement);
+function ranking.setPlayedGames(rankingtable, player_id, playedgames) {
+	stmt = databank.prepare(concat("UPDATE ", rankingtable, " SET playedgames = ? WHERE player_id = ?;"), false);
+	databank.setInt(stmt, 1, playedgames);
+	databank.setInt(stmt, 2, player_id);
+	databank.workerExecute(stmt);
+}
+
+function getPlayedGames(rankingtable, player_id) { //Deprecated
+	return ranking.getPlayedGames(rankingtable, player_id);
 }
 
 //Gibt die Anzahl gespielter Spiele eines Spielers zurück
-function getPlayedGames(rankingtable, player_id) {
-	number = 0;
-	getPlayedGamesStatement = databank.prepare(concat("SELECT playedgames FROM ", rankingtable, " WHERE player_id = ?;"));
-	databank.setInt(getPlayedGamesStatement, 1, player_id);
-	result = databank.execute(getPlayedGamesStatement);
-	while(databank.next(result)) {
+function ranking.getPlayedGames(rankingtable, player_id) {
+	stmt = databank.prepare(concat("SELECT playedgames FROM ", rankingtable, " WHERE player_id = ?;"));
+	databank.setInt(stmt, 1, player_id);
+	result = databank.execute(stmt);
+	if(databank.next(result)) {
 		number = databank.getInt(result, 1);
+	} else {
+		number = 0;
 	}
 	databank.close(result);
-	databank.close(getPlayedGamesStatement);
+	databank.close(stmt);
 	return number;
 }
 
 //Gibt die gesamte Rangtabelle zurück. Liste mit Arrays
-function getRankingTable(rankingtable, order) {
-	ranking_list= list.new();
-	getRankingTableStatement = databank.prepare(concat("SELECT * FROM ", rankingtable, " ORDER BY points ", order, ";"));
-	result = databank.execute(getRankingTableStatement);
+function ranking.getArray(rankingtable, order) {
+	ranking_list = list.new();
+	stmt = databank.prepare(concat("SELECT player_id, points, playedgames FROM ", rankingtable, " ORDER BY points ", order, ";"));
+	result = databank.execute(stmt);
 	while(databank.next(result)) {
 		a = array.new(3);
 		a[0] = databank.getInt(result, 1); //player_id
@@ -348,13 +552,13 @@ function getRankingTable(rankingtable, order) {
 		list.add(ranking_list, a);
 	}
 	databank.close(result);
-	databank.close(getRankingTableStatement);
+	databank.close(stmt);
 	return ranking_list;
 }
 
 //Gibt Daten des Spieler von Platz n als Array zurück
-function getRankingFromRank(rankingtable, rank, order) {
-	ranking_list = getRankingTable(rankingtable, order);
+function ranking.getArrayFromRank(rankingtable, rank, order) {
+	ranking_list = ranking.getArray(rankingtable, order);
 	list_size = list.getSize(ranking_list);
 	index = rank - 1;
 	if(index >= list_size || index < 0) {
@@ -365,51 +569,36 @@ function getRankingFromRank(rankingtable, rank, order) {
 }
 
 //Gibt den Spieler von Platz n zurück
-function getPlayerIdFromRank(rankingtable, rank, order) {
-	ranking_list = getRankingTable(rankingtable, order);
-	list_size = list.getSize(ranking_list);
-	index = rank - 1;
-	if(index >= list_size || index < 0) {
-		player_id = -1;
-	} else {
-		a = list.getIndex(ranking_list, index);
-		player_id = a[0];
+function ranking.getPlayerIdFromRank(rankingtable, rank, order) {
+	a = ranking.getArrayFromRank(rankingtable, rank, order);
+	if(a == null) {
+		return -1;
 	}
-	return player_id;
+	return a[0];
 }
 
 //Gibt die Punkte von Platz n zurück
-function getPointsFromRank(rankingtable, rank, order) {
-	ranking_list = getRankingTable(rankingtable, order);
-	list_size = list.getSize(ranking_list);
-	index = rank - 1;
-	if(index >= list_size || index < 0) {
-		points = -1;
-	} else {
-		a = list.getIndex(ranking_list, index);
-		points = a[1];
+function ranking.getPointsFromRank(rankingtable, rank, order) {
+	a = ranking.getArrayFromRank(rankingtable, rank, order);
+	if(a == null) {
+		return -1;
 	}
-	return points;
+	return a[1];
 }
 
 //Gibt die Anzahl gespielter Spiele von Platz n zurück
-function getPlayedGamesFromRank(rankingtable, rank, order) {
-	ranking_list = getRankingTable(rankingtable, order);
-	list_size = list.getSize(ranking_list);
-	index = rank - 1;
-	if(index >= list_size || index < 0) {
-		playedgames = -1;
-	} else {
-		a = list.getIndex(ranking_list, index);
-		playedgames = a[2];
+function ranking.getPlayedGamesFromRank(rankingtable, rank, order) {
+	a = ranking.getArrayFromRank(rankingtable, rank, order);
+	if(a == null) {
+		return -1;
 	}
-	return playedgames;
+	return a[2];
 }
 
 //Gibt die Top 10 Spieler eines Spiels zurück
-function getTopTenList(rankingtable, order) {
+function ranking.getTopTenList(rankingtable, order) {
 	toptenlist = list.new();
-	ranking_list = getRankingTable(rankingtable, order);
+	ranking_list = ranking.getArray(rankingtable, order);
 	list_size = list.getSize(ranking_list);
 	for(i = 0; i < list_size; i++) {
 		list.add(toptenlist, list.getIndex(ranking_list, i));
@@ -418,8 +607,8 @@ function getTopTenList(rankingtable, order) {
 }
 
 //Gibt die Statistik eines Spiels zurück
-function getPlayerStats(player_id, rankingtable, order) {
-	ranking_list = getRankingTable(rankingtable, order);
+function ranking.getPlayerStats(player_id, rankingtable, order) {
+	ranking_list = ranking.getArray(rankingtable, order);
 	list_size = list.getSize(ranking_list);
 	for(i = 0; i < list_size; i++) {
 		a = list.getIndex(ranking_list, i);
@@ -431,8 +620,8 @@ function getPlayerStats(player_id, rankingtable, order) {
 }
 
 //Gibt den Rang eines Spielers zurück
-function getPlayerRank(player_id, rankingtable, order) {
-	ranking_list = getRankingTable(rankingtable, order);
+function ranking.getPlayerRank(player_id, rankingtable, order) {
+	ranking_list = ranking.getArray(rankingtable, order);
 	list_size = list.getSize(ranking_list);
 	for(i = 0; i < list_size; i++) {
 		a = list.getIndex(ranking_list, i);
@@ -444,158 +633,15 @@ function getPlayerRank(player_id, rankingtable, order) {
 }
 
 //Entfernt einen Spieler aus der Statistik
-function removePlayerStats(player_id, rankingtable) {
-	removePlayerStatsStatement = databank.prepare(concat("DELETE FROM ", rankingtable, " WHERE player_id = ?;"));
-	databank.setInt(removePlayerStatsStatement, 1, player_id);
-	databank.workerExecute(removePlayerStatsStatement);
+function ranking.removePlayer(player_id, rankingtable) {
+	stmt = databank.prepare(concat("DELETE FROM ", rankingtable, " WHERE player_id = ?;"));
+	databank.setInt(stmt, 1, player_id);
+	databank.workerExecute(stmt);
 }
 
-function getTeamWithLowestPeople(team_lists, numberofteams) {
-	teamlist = map.get(team_lists, 0);
-	lowest = list.getSize(teamlist);
-	lowestteam = 0;
-	for(i = 1; i < numberofteams; i++) {
-		teamlist = map.get(team_lists, i);
-		size = list.getSize(teamlist);
-		if(size < lowest) {
-			lowest = size;
-			lowestteam = i;
-		}
-	}
-	return lowestteam;
-}
-
-function resetplayer(player) {
-	entity.cleareffects(player);
-	entity.setHealth(player, 20);
-	player.setHunger(player, 20);
-	player.setSaturation(player, 5);
-	display.reset(player);
-	player.clearInventory(player);
-	stacks.clear(player);
-	status.reset(player);
-	stacks.setActive(player, false);
-	entity.setName(player, player.getName(player));
-	boss.send(player, "REMOVE");
-	player.setSpeed(player, 1 / 20);
-	entity.setGravity(player, true);
-	inv.close(player);
-}
-
-function minigame.kickPlayer(script, player) {
-	resetplayer(player);
-	player.tpGamesLobby(player);
-	script_id = script.getId(script);
-	list = minigame.getPlayers(script_id);
-	list.remove(list, player.getUuid(player));
-	sign.players($gamesignloc, list.getSize(list), $maxplayers);
-	set.remove(player.getMinigameIds(player), script_id);
-}
-
-function minigame.kickAllPlayers(script) {
-	player_list = minigame.getPlayers(script.getId(script));
-	list = list.new();
-	//Create copy
-	iter = list.iterator(player_list);
-	while(hasNext(iter)) {
-		list.add(list, next(iter));
-	}
-	iter = list.iterator(list);
-	while(hasNext(iter)) {
-		minigame.kickPlayer(script, player.get(next(iter)));
-	}
-}
-
-function player.resetMinigames(player) {
-	id_set = player.getMinigameIds(player);
-	set.clear(id_set);
-}
-
-function minigame.getPlayers(script_id) {
-	map = getScriptVar("script_players");
-	list = map.get(map, script_id);
-	if(list == null) {
-		list = list.new();
-		map.add(map, script_id, list);
-	}
-	return list;
-}
-
-function player.hasMinigameId(player, script_id) {
-	set = player.getMinigameIds(player);
-	return set.contains(set, script_id);
-}
-
-function minigame.term(script, gamesignloc) {
-	setScriptVar("sign_loc", gamesignloc);
-	script.callEvent("term_script");
-	sign.ready(gamesignloc);
-	script.term(script);
-}
-
-function minigame.speakAll(prefix, message) {
-	iter = list.iterator(minigame.getPlayers($script_id));
-	while(hasNext(iter)) {
-		p_uuid = next(iter);
-		p = player.get(p_uuid);
-		player.speakPrefix(p, prefix, message);
-	}
-}
-
-function minigame.msgAll(message) {
-	iter = list.iterator(minigame.getPlayers($script_id));
-	while(hasNext(iter)) {
-		p_uuid = next(iter);
-		p = player.get(p_uuid);
-		msg(p, message);
-	}
-}
-
-function minigame.displayAll(line, message) {
-	iter = list.iterator(minigame.getPlayers($script_id));
-	while(hasNext(iter)) {
-		p_uuid = next(iter);
-		p = player.get(p_uuid);
-		display.add(p, line, message);
-	}
-}
-
-function minigame.titleAll(title, subtitle, fadeIn, show, fadeOut) {
-	iter = list.iterator(minigame.getPlayers($script_id));
-	while(hasNext(iter)) {
-		p_uuid = next(iter);
-		p = player.get(p_uuid);
-		title.setTime(p, fadeIn, show, fadeOut);
-		title.setSub(p, subtitle);
-		title.send(p, title);
-	}
-}
-
-function minigame.displayRemoveAll(line) {
-	iter = list.iterator(minigame.getPlayers($script_id));
-	while(hasNext(iter)) {
-		p_uuid = next(iter);
-		p = player.get(p_uuid);
-		display.remove(p, line);
-	}
-}
-
-function minigame.displayResetAll() {
-	iter = list.iterator(minigame.getPlayers($script_id));
-	while(hasNext(iter)) {
-		p_uuid = next(iter);
-		p = player.get(p_uuid);
-		display.reset(p);
-	}
-}
-
-function minigame.statsHeader(player, gamename, colorcode) {
-	msg(player, "[", gamename, "§r] §r---= ", colorcode, "Statistic §r=---");
-}
-
-function minigame.statsLine(player, colorcode, string, value) {
-	msg(player, colorcode, " -§r ", string, ": ", colorcode, value);
-}
+//--------------------------------------------------
+//Sign-Utils
+//--------------------------------------------------
 
 function sign.players(sign_loc, amount, max) {
 	return block.setSign(sign_loc, 2, concat(text.number(amount), "/", text.number(max)));
@@ -611,12 +657,4 @@ function sign.started(sign_loc) {
 
 function sign.closed(sign_loc) {
 	return block.setSign(sign_loc, 3, "§cClosed");
-}
-
-function minigame.isStarted(sign_loc) {
-	return block.getSign(sign_loc, 3) == "§bStarted";
-}
-
-function minigame.getSignLoc(sign_name) {
-	return map.get(getScriptVar("gamesigns"), sign_name);
 }

+ 4 - 2
utils/u_general.txt

@@ -238,7 +238,7 @@ function loc.isInGamesWorld(location) {
 //--------------------------------------------------
 
 function getGamesWorld() { //Deprecated
-	return word.getGames();
+	return world.getGames();
 }
 
 function world.getServerSpawn() {
@@ -257,7 +257,7 @@ function world.getOverWorld() {
 	return world.get("overworld");
 }
 
-function word.getGames() {
+function world.getGames() {
 	return world.get("games");
 }
 
@@ -1262,7 +1262,9 @@ function player.setBackPos(player) {
 }
 
 function player.clearBackPos(player) {
+	config = playerdata.getSurvival(player);
 	config.set(config, "backpos", "null");
+	config.saveAsync(config);
 }
 
 function player.getFromDamageSource(damage_source) {