diff --git a/GameVersion.cpp b/GameVersion.cpp index 51716980..d7905ed4 100644 --- a/GameVersion.cpp +++ b/GameVersion.cpp @@ -23,12 +23,12 @@ INT16 zVersionLabel[256] = { L"Beta v. 0.98" }; #else //RELEASE BUILD VERSION - INT16 zVersionLabel[256] = { L"Release v1.13.555" }; + INT16 zVersionLabel[256] = { L"Release v1.13.558" }; #endif -INT8 czVersionNumber[16] = { "Build 06.09.22" }; +INT8 czVersionNumber[16] = { "Build 06.09.25" }; INT16 zTrackingNumber[16] = { L"Z" }; diff --git a/JA2.suo b/JA2.suo index c036df61..af6fff78 100644 Binary files a/JA2.suo and b/JA2.suo differ diff --git a/Laptop/IMP Confirm.cpp b/Laptop/IMP Confirm.cpp index e0093ebb..95d92f26 100644 --- a/Laptop/IMP Confirm.cpp +++ b/Laptop/IMP Confirm.cpp @@ -767,7 +767,7 @@ BOOLEAN LoadImpCharacter( STR nickName ) } // Set the ID of the new IMP - iProfileId = GetFreeIMPSlot(iProfileId); + iProfileId = GetFreeIMPSlot(iProfileId, iProfileId); // We can create the new imp, beacuse we found an empty slot if (iProfileId != -1) diff --git a/Laptop/IMP HomePage.cpp b/Laptop/IMP HomePage.cpp index c0dcceb4..589c4ab8 100644 --- a/Laptop/IMP HomePage.cpp +++ b/Laptop/IMP HomePage.cpp @@ -339,7 +339,7 @@ void HandleTextEvent( UINT32 uiKey ) if( uiKey >= 'A' && uiKey <= 'Z' || uiKey >= 'a' && uiKey <= 'z' || uiKey >= '0' && uiKey <= '9' || - uiKey == '_' || uiKey == '.' ) + uiKey == '_' || uiKey == '.' || uiKey ==' ') // WANNE NEW: added ' ' { // if the current string position is at max or great, do nothing if( iStringPos >= 8 ) diff --git a/Laptop/IMP MainPage.cpp b/Laptop/IMP MainPage.cpp index 2e1ac330..f3d9b671 100644 --- a/Laptop/IMP MainPage.cpp +++ b/Laptop/IMP MainPage.cpp @@ -839,36 +839,51 @@ INT32 GetFilledIMPSlots( INT8 iSex ) } // WANNE NEW -INT32 GetFreeIMPSlot(INT32 iIMPId) +INT32 GetFreeIMPSlot(INT32 iIMPId, INT32 iDefaultIMPId) { INT32 iStart; INT32 iEnd; INT32 i; INT32 iFreeSlot = -1; + BOOLEAN bFoundDefaultIMP = FALSE; if (iIMPId != -1) { - // Female - if (iIMPId >= PLAYER_GENERATED_CHARACTER_ID + 3) + // We have a default imp id (90210 or nickname) + if (iDefaultIMPId != -1) { - iStart = PLAYER_GENERATED_CHARACTER_ID + 3; - iEnd = PLAYER_GENERATED_CHARACTER_ID + 6; - } - // Male - else - { - iStart = PLAYER_GENERATED_CHARACTER_ID; - iEnd = PLAYER_GENERATED_CHARACTER_ID + 3; + if (wcscmp(gMercProfiles[iDefaultIMPId].zName, L"") == 0) + { + iFreeSlot = iDefaultIMPId; + return iFreeSlot; + } } - // Find a free imp slot - for (i = iStart; i < iEnd; i++) + // The default IMP id is already used, find next free imp id + if (bFoundDefaultIMP == FALSE) { - // Found a free imp slot - if (wcscmp(gMercProfiles[i].zName, L"") == 0) + // Female + if (iIMPId >= PLAYER_GENERATED_CHARACTER_ID + 3) { - iFreeSlot = i; - break; + iStart = PLAYER_GENERATED_CHARACTER_ID + 3; + iEnd = PLAYER_GENERATED_CHARACTER_ID + 6; + } + // Male + else + { + iStart = PLAYER_GENERATED_CHARACTER_ID; + iEnd = PLAYER_GENERATED_CHARACTER_ID + 3; + } + + // Find a free imp slot + for (i = iStart; i < iEnd; i++) + { + // Found a free imp slot + if (wcscmp(gMercProfiles[i].zName, L"") == 0) + { + iFreeSlot = i; + break; + } } } diff --git a/Laptop/IMP MainPage.h b/Laptop/IMP MainPage.h index e8028415..bbf136de 100644 --- a/Laptop/IMP MainPage.h +++ b/Laptop/IMP MainPage.h @@ -10,7 +10,7 @@ void NextProfilingMode( void ); void ShadeUnSelectableButtons( void ); // WANNE NEW -INT32 GetFreeIMPSlot(INT32 iIMPId); +INT32 GetFreeIMPSlot(INT32 iIMPId, INT32 iDefaultIMPId); INT32 GetFilledIMPSlots( INT8 iSex ); extern INT32 iCurrentProfileMode; diff --git a/Strategic/Quest Debug System.cpp b/Strategic/Quest Debug System.cpp index a0ce0ae3..e057ffe0 100644 --- a/Strategic/Quest Debug System.cpp +++ b/Strategic/Quest Debug System.cpp @@ -1237,7 +1237,10 @@ void RenderQuestDebugSystem() DisplayQDSCurrentlyQuoteNum( ); MarkButtonsDirty( ); - InvalidateRegion( 0, 0, 640, 480 ); + + // WANNE NEW: + //InvalidateRegion( 0, 0, 640, 480 ); + InvalidateRegion( 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT ); }