diff --git a/GameInitOptionsScreen.h b/GameInitOptionsScreen.h index 2cd38fa2..3bb23f07 100644 --- a/GameInitOptionsScreen.h +++ b/GameInitOptionsScreen.h @@ -43,6 +43,7 @@ typedef struct UINT32 iGracePeriodInDaysAfterPatrolDestroyed; BOOLEAN bAggressiveQueenAi; INT32 iMaxMercDeaths; + UINT8 usLootStatusModifier; //Creatures Settings UINT16 iCreatureSpreadTime; diff --git a/GameVersion.cpp b/GameVersion.cpp index bea314b2..f0298026 100644 --- a/GameVersion.cpp +++ b/GameVersion.cpp @@ -15,9 +15,9 @@ #ifdef JA2EDITOR #ifdef JA2UB - CHAR16 zVersionLabel[256] = { L"Unfinished Business - Map Editor v1.13.8052 (Development Build)" }; + CHAR16 zVersionLabel[256] = { L"Unfinished Business - Map Editor v1.13.8056 (Development Build)" }; #else - CHAR16 zVersionLabel[256] = { L"Map Editor v1.13.8052 (Development Build)" }; + CHAR16 zVersionLabel[256] = { L"Map Editor v1.13.8056 (Development Build)" }; #endif // ------------------------------ @@ -27,11 +27,11 @@ //DEBUG BUILD VERSION #ifdef JA2UB - CHAR16 zVersionLabel[256] = { L"Debug: Unfinished Business - v1.13.8052 (Development Build)" }; + CHAR16 zVersionLabel[256] = { L"Debug: Unfinished Business - v1.13.8056 (Development Build)" }; #elif defined (JA113DEMO) - CHAR16 zVersionLabel[256] = { L"Debug: JA2 Demo - v1.13.8052 (Development Build)" }; + CHAR16 zVersionLabel[256] = { L"Debug: JA2 Demo - v1.13.8056 (Development Build)" }; #else - CHAR16 zVersionLabel[256] = { L"Debug: v1.13.8052 (Development Build)" }; + CHAR16 zVersionLabel[256] = { L"Debug: v1.13.8056 (Development Build)" }; #endif #elif defined CRIPPLED_VERSION @@ -46,16 +46,16 @@ //RELEASE BUILD VERSION #ifdef JA2UB - CHAR16 zVersionLabel[256] = { L"Release Unfinished Business - v1.13.8052 (Development Build)" }; + CHAR16 zVersionLabel[256] = { L"Release Unfinished Business - v1.13.8056 (Development Build)" }; #elif defined (JA113DEMO) - CHAR16 zVersionLabel[256] = { L"Release JA2 Demo - v1.13.8052 (Development Build)" }; + CHAR16 zVersionLabel[256] = { L"Release JA2 Demo - v1.13.8056 (Development Build)" }; #else - CHAR16 zVersionLabel[256] = { L"Release v1.13.8052 (Development Build)" }; + CHAR16 zVersionLabel[256] = { L"Release v1.13.8056 (Development Build)" }; #endif #endif -CHAR8 czVersionNumber[16] = { "Build 16.02.06" }; //YY.MM.DD +CHAR8 czVersionNumber[16] = { "Build 16.02.13" }; //YY.MM.DD CHAR16 zTrackingNumber[16] = { L"Z" }; // SAVE_GAME_VERSION is defined in header, change it there diff --git a/Tactical/Rotting Corpses.cpp b/Tactical/Rotting Corpses.cpp index 521c9039..2f97a053 100644 --- a/Tactical/Rotting Corpses.cpp +++ b/Tactical/Rotting Corpses.cpp @@ -1017,7 +1017,9 @@ BOOLEAN TurnSoldierIntoCorpse( SOLDIERTYPE *pSoldier, BOOLEAN fRemoveMerc, BOOLE if ( Item[pObj->usItem].damageable && Item[pObj->usItem].usItemClass != IC_THROWING_KNIFE ) // Madd: drop crappier items from enemies on higher difficulty levels - note the quick fix for throwing knives { - (*pObj)[0]->data.objectStatus -= (gGameOptions.ubDifficultyLevel - 1) * Random(20); + // silversurfer: externalized this + //(*pObj)[0]->data.objectStatus -= (gGameOptions.ubDifficultyLevel - 1) * Random(20); + (*pObj)[0]->data.objectStatus -= Random( zDiffSetting[gGameOptions.ubDifficultyLevel].usLootStatusModifier ); (*pObj)[0]->data.objectStatus = min(max((*pObj)[0]->data.objectStatus,1),100); // never below 1% or above 100% (*pObj)[0]->data.sRepairThreshold = max(1, min(100, ((*pObj)[0]->data.objectStatus + 200)/3 )); diff --git a/XML_DifficultySettings.cpp b/XML_DifficultySettings.cpp index 6d683a6d..b1580f85 100644 --- a/XML_DifficultySettings.cpp +++ b/XML_DifficultySettings.cpp @@ -67,6 +67,7 @@ DifficultySettingsParseDataStartElementHandle(void *userData, const XML_Char *na strcmp(name, "GracePeriodInDaysAfterPatrolDestroyed") == 0 || strcmp(name, "AggressiveQueenAi") == 0 || strcmp(name, "MaxMercDeaths") == 0 || + strcmp(name, "LootStatusModifier") == 0 || strcmp(name, "CreatureSpreadTime") == 0 || strcmp(name, "QueenReproductionBase") == 0 || strcmp(name, "QueenReproductionBonus") == 0 || @@ -171,6 +172,7 @@ difficultySettingsEndElementHandle(void *userData, const XML_Char *name) zDiffSetting[pData->curDifficultySettings.uiIndex].iGracePeriodInDaysAfterPatrolDestroyed = pData->curDifficultySettings.iGracePeriodInDaysAfterPatrolDestroyed; zDiffSetting[pData->curDifficultySettings.uiIndex].bAggressiveQueenAi = pData->curDifficultySettings.bAggressiveQueenAi; zDiffSetting[pData->curDifficultySettings.uiIndex].iMaxMercDeaths = pData->curDifficultySettings.iMaxMercDeaths; + zDiffSetting[pData->curDifficultySettings.uiIndex].usLootStatusModifier = pData->curDifficultySettings.usLootStatusModifier; //Creatures Settings zDiffSetting[pData->curDifficultySettings.uiIndex].iCreatureSpreadTime = pData->curDifficultySettings.iCreatureSpreadTime; @@ -347,6 +349,11 @@ difficultySettingsEndElementHandle(void *userData, const XML_Char *name) pData->curElement = ELEMENT; pData->curDifficultySettings.iMaxMercDeaths = (INT32) atol(pData->szCharData); } + else if(strcmp(name, "LootStatusModifier") == 0) + { + pData->curElement = ELEMENT; + pData->curDifficultySettings.usLootStatusModifier = (UINT8) atol(pData->szCharData); + } //Creatures Settings else if(strcmp(name, "CreatureSpreadTime") == 0) {