Load File: finalize first-click deterministic apply, add NoReturn, and align docs
- Stabilize Load File first-click behavior across mission/map/options/slots. - Fix map sequencing by rebuilding game-type scenario list before mission lookup. - Resolve mission-name miss to map index 0 fallback for selected game type. - Fix decal handling: map INI decal IDs to dropdown indices, clamp invalid indices, display actual decal IDs in UI labels, and avoid redraw-time decal overwrite. - Fix option apply timing and UI visibility issues, including Weapon Jam refresh. - Add NoReturn support end-to-end: parse/store in MW4Shell auto globals, expose script variable, and apply to respawn/no-return mission params and UI checkbox. - Update autoconfig spec to reflect actual parser/default/fallback behavior and add NoReturn examples.
This commit is contained in:
@@ -204,6 +204,7 @@ static int g_nAutoHeat = 0;
|
||||
static int g_nAutoFriendlyFire = 0;
|
||||
static int g_nAutoSplash = 0;
|
||||
static int g_nAutoUnlimitedAmmo = 1;
|
||||
static int g_nAutoNoReturn = 0;
|
||||
static int g_nAutoWeaponJam = 0;
|
||||
static int g_nAutoAdvanceMode = 0;
|
||||
static int g_nAutoArmorMode = 0;
|
||||
@@ -821,6 +822,7 @@ void MW4Shell::StartUp()
|
||||
gosScript_RegisterVariable("g_nAutoFriendlyFire", &g_nAutoFriendlyFire, GOSVAR_INT, 0, NULL);
|
||||
gosScript_RegisterVariable("g_nAutoSplash", &g_nAutoSplash, GOSVAR_INT, 0, NULL);
|
||||
gosScript_RegisterVariable("g_nAutoUnlimitedAmmo",&g_nAutoUnlimitedAmmo, GOSVAR_INT, 0, NULL);
|
||||
gosScript_RegisterVariable("g_nAutoNoReturn", &g_nAutoNoReturn, GOSVAR_INT, 0, NULL);
|
||||
gosScript_RegisterVariable("g_nAutoWeaponJam", &g_nAutoWeaponJam, GOSVAR_INT, 0, NULL);
|
||||
gosScript_RegisterVariable("g_nAutoAdvanceMode", &g_nAutoAdvanceMode, GOSVAR_INT, 0, NULL);
|
||||
gosScript_RegisterVariable("g_nAutoArmorMode", &g_nAutoArmorMode, GOSVAR_INT, 0, NULL);
|
||||
@@ -1234,6 +1236,7 @@ void MW4Shell::ShutDown()
|
||||
gosScript_UnregisterVariable("g_nAutoArmorMode");
|
||||
gosScript_UnregisterVariable("g_nAutoAdvanceMode");
|
||||
gosScript_UnregisterVariable("g_nAutoWeaponJam");
|
||||
gosScript_UnregisterVariable("g_nAutoNoReturn");
|
||||
gosScript_UnregisterVariable("g_nAutoUnlimitedAmmo");
|
||||
gosScript_UnregisterVariable("g_nAutoSplash");
|
||||
gosScript_UnregisterVariable("g_nAutoFriendlyFire");
|
||||
@@ -12917,7 +12920,7 @@ int __stdcall CTCL_LoadAutoFile(void* instance, int args, void* data[])
|
||||
g_nAutoGameType = 2; g_nAutoVisibility = 0; g_nAutoWeather = 0;
|
||||
g_nAutoTimeOfDay = 0; g_nAutoTimeLimit = -1; g_nAutoRadar = 0;
|
||||
g_nAutoHeat = 0; g_nAutoFriendlyFire = 0; g_nAutoSplash = 0;
|
||||
g_nAutoUnlimitedAmmo = 1; g_nAutoWeaponJam = 0; g_nAutoAdvanceMode = 0;
|
||||
g_nAutoUnlimitedAmmo = 1; g_nAutoNoReturn = 0; g_nAutoWeaponJam = 0; g_nAutoAdvanceMode = 0;
|
||||
g_nAutoArmorMode = 0; g_nAutoTeamAllowed = 0; g_nAutoTeamCount = 2;
|
||||
|
||||
Page *pMission = autofile.FindPage("mission");
|
||||
@@ -12937,6 +12940,7 @@ int __stdcall CTCL_LoadAutoFile(void* instance, int args, void* data[])
|
||||
pMission->GetEntry("FriendlyFire", &g_nAutoFriendlyFire);
|
||||
pMission->GetEntry("SplashDamage", &g_nAutoSplash);
|
||||
pMission->GetEntry("UnlimitedAmmo", &g_nAutoUnlimitedAmmo);
|
||||
pMission->GetEntry("NoReturn", &g_nAutoNoReturn);
|
||||
pMission->GetEntry("WeaponJam", &g_nAutoWeaponJam);
|
||||
pMission->GetEntry("AdvanceMode", &g_nAutoAdvanceMode);
|
||||
pMission->GetEntry("ArmorMode", &g_nAutoArmorMode);
|
||||
|
||||
Reference in New Issue
Block a user