From 24fb30258aac6ee03f487fad2ce31a6740e00d5d Mon Sep 17 00:00:00 2001 From: Human Gamer <39096122+HumanGamer@users.noreply.github.com> Date: Tue, 26 Mar 2024 18:30:14 -0500 Subject: [PATCH] Automatic level numbers for multiplayer --- game/marble/data/gameMissionInfo.cs | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/game/marble/data/gameMissionInfo.cs b/game/marble/data/gameMissionInfo.cs index 396ca405..d2fd105f 100644 --- a/game/marble/data/gameMissionInfo.cs +++ b/game/marble/data/gameMissionInfo.cs @@ -837,14 +837,14 @@ function buildMissionList() } sortByLevel( SinglePlayMissionGroup ); - sortByLevel( CustomSinglePlayMissionGroup ); - sortByLevel( MultiPlayMissionGroup ); + sortByLevel( CustomSinglePlayMissionGroup, true ); + sortByLevel( MultiPlayMissionGroup, true ); sortByLevel( SpecialMissionGroup ); // hack, do this twice to get things into the proper order, don't have time to figure out why a // single sort doesn't work sortByLevel( SinglePlayMissionGroup ); - sortByLevel( CustomSinglePlayMissionGroup ); - sortByLevel( MultiPlayMissionGroup ); + sortByLevel( CustomSinglePlayMissionGroup, true ); + sortByLevel( MultiPlayMissionGroup, true ); sortByLevel( SpecialMissionGroup ); // verify that level Ids are unique @@ -884,12 +884,12 @@ function buildMissionList() for (%i = 0; %i < MultiPlayMissionGroup.getCount(); %i++) { %mis = MultiPlayMissionGroup.getObject(%i); - if (%levelIds[%mis.level] !$= "") - { - GameMissionInfo.dupErrors = GameMissionInfo.dupErrors @ "duplicate mission Id for level:" SPC %mis.file @ "\n"; - GameMissionInfo.dupLevelIds[%mis.level] = true; - } - %levelIds[%mis.level] = true; + //if (%levelIds[%mis.level] !$= "") + //{ + //GameMissionInfo.dupErrors = GameMissionInfo.dupErrors @ "duplicate mission Id for level:" SPC %mis.file @ "\n"; + //GameMissionInfo.dupLevelIds[%mis.level] = true; + //} + //%levelIds[%mis.level] = true; if (%mis.guid !$= "") { if (%guids[%mis.guid] !$= "") @@ -931,8 +931,10 @@ function isDemoMission( %level ) //return 0; } -function sortByLevel(%grp) +function sortByLevel(%grp, %useLevelNum) { + if (%useLevelNum $= "") + %useLevelNum = false; %grp.numAddedMissions = 0; %newLevelNum = 0; %ngrp = new SimGroup(); @@ -976,7 +978,7 @@ function sortByLevel(%grp) //{ %grp.numAddedMissions++; %obj = %ngrp.getObject(%lowestIndex); - if (%obj.difficultySet $= "custom") + if (%useLevelNum) %obj.level = %newLevelNum; %grp.add(%obj); //}