From 60bffb13526a4d8706bf87c425cdf3cb90151ee7 Mon Sep 17 00:00:00 2001 From: silversurfer Date: Mon, 3 Nov 2014 13:23:05 +0000 Subject: [PATCH] Fix: Removed invalid item property "counterforcefrequencymodifier" and all code parts associated with it. It was not used anymore by the game but fragments of it were still displayed in EDB which lead to confusion. git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7644 3b4a5df2-a311-0410-b5c6-a8a6f20db521 --- Tactical/Interface Enhanced.cpp | 199 -------------------------------- Tactical/Item Types.h | 1 - Tactical/Items.cpp | 3 - Tactical/Items.h | 1 - Tactical/LOS.cpp | 70 ----------- Tactical/LOS.h | 2 - Utils/XML_Items.cpp | 19 +-- 7 files changed, 4 insertions(+), 291 deletions(-) diff --git a/Tactical/Interface Enhanced.cpp b/Tactical/Interface Enhanced.cpp index 049422929..dd511822b 100644 --- a/Tactical/Interface Enhanced.cpp +++ b/Tactical/Interface Enhanced.cpp @@ -3324,32 +3324,6 @@ void InternalInitEDBTooltipRegion( OBJECTTYPE * gpItemDescObject, UINT32 guiCurr } } - // HEADROCK HAM 5: This is gone now. - /* - ///////////////////// COUNTER FORCE FREQUENCY MODIFIER - if (GetCounterForceFrequencyModifier( gpItemDescObject, ANIM_STAND ) != 0 - || GetCounterForceFrequencyModifier( gpItemDescObject, ANIM_CROUCH ) != 0 - || GetCounterForceFrequencyModifier( gpItemDescObject, ANIM_PRONE ) != 0 ) - { - if( UsingNewCTHSystem() == true ) - { - if (cnt >= sFirstLine && cnt < sLastLine) - { - if (Item[ gpItemDescObject->usItem ].usItemClass & (IC_WEAPON|IC_PUNCH)) - { - swprintf( pStr, L"%s%s", szUDBAdvStatsTooltipText[ 19 ], szUDBAdvStatsExplanationsTooltipTextForWeapons[ 19 ]); - } - else - { - swprintf( pStr, L"%s%s", szUDBAdvStatsTooltipText[ 19 ], szUDBAdvStatsExplanationsTooltipText[ 19 ]); - } - SetRegionFastHelpText( &(gUDBFasthelpRegions[ iFirstDataRegion + (cnt-sFirstLine) ]), pStr ); - MSYS_EnableRegion( &gUDBFasthelpRegions[ iFirstDataRegion + (cnt-sFirstLine) ] ); - } - cnt++; - } - }*/ - ///////////////////// AP MODIFIER if (GetAPBonus( gpItemDescObject ) != 0 ) { @@ -3903,32 +3877,6 @@ void InternalInitEDBTooltipRegion( OBJECTTYPE * gpItemDescObject, UINT32 guiCurr cnt++; } - // HEADROCK HAM 5: This no longer exists. - /* - ///////////////////// COUNTER FORCE FREQUENCY - if ((GetCounterForceMaxModifier( gpItemDescObject, ANIM_STAND ) != 0 - || GetCounterForceMaxModifier( gpItemDescObject, ANIM_CROUCH ) != 0 - || GetCounterForceMaxModifier( gpItemDescObject, ANIM_PRONE ) != 0 ) ) - { - if( UsingNewCTHSystem() == true && Item[gpItemDescObject->usItem].usItemClass == IC_GUN ) - { - if (cnt >= sFirstLine && cnt < sLastLine) - { - if (Item[ gpItemDescObject->usItem ].usItemClass & (IC_WEAPON|IC_PUNCH)) - { - swprintf( pStr, L"%s%s", szUDBAdvStatsTooltipText[ 45 ], szUDBAdvStatsExplanationsTooltipTextForWeapons[ 45 ]); - } - else - { - swprintf( pStr, L"%s%s", szUDBAdvStatsTooltipText[ 45 ], szUDBAdvStatsExplanationsTooltipText[ 45 ]); - } - SetRegionFastHelpText( &(gUDBFasthelpRegions[ iFirstDataRegion + (cnt-sFirstLine) ]), pStr ); - MSYS_EnableRegion( &gUDBFasthelpRegions[ iFirstDataRegion + (cnt-sFirstLine) ] ); - } - cnt++; - } - }*/ - // Moa: used to check if general Indexes (Prop., 0, +-, =) should be shown INT16 fDrawGenIndexes = FALSE; @@ -5384,24 +5332,6 @@ void DrawAdvancedStats( OBJECTTYPE * gpItemDescObject ) } } - ///////////////////// COUNTER FORCE FREQUENCY MODIFIER - if ( ( GetObjectModifier( gpItemDescSoldier, gpItemDescObject, ANIM_STAND, ITEMMODIFIER_COUNTERFORCEFREQUENCY ) != 0 - || GetObjectModifier( gpItemDescSoldier, gpItemDescObject, ANIM_CROUCH, ITEMMODIFIER_COUNTERFORCEFREQUENCY ) != 0 - || GetObjectModifier( gpItemDescSoldier, gpItemDescObject, ANIM_PRONE, ITEMMODIFIER_COUNTERFORCEFREQUENCY ) != 0 ) || - ( fComparisonMode && ( GetObjectModifier( gpItemDescSoldier, gpComparedItemDescObject, ANIM_STAND, ITEMMODIFIER_COUNTERFORCEFREQUENCY ) != 0 - || GetObjectModifier( gpItemDescSoldier, gpComparedItemDescObject, ANIM_CROUCH, ITEMMODIFIER_COUNTERFORCEFREQUENCY ) != 0 - || GetObjectModifier( gpItemDescSoldier, gpComparedItemDescObject, ANIM_PRONE, ITEMMODIFIER_COUNTERFORCEFREQUENCY ) != 0 ) ) ) - { - if( UsingNewCTHSystem() == true ) - { - if (cnt >= sFirstLine && cnt < sLastLine) - { - BltVideoObjectFromIndex( guiSAVEBUFFER, guiItemInfoAdvancedIcon, 19, gItemDescAdvRegions[cnt-sFirstLine][0].sLeft + sOffsetX, gItemDescAdvRegions[cnt-sFirstLine][0].sTop + sOffsetY, VO_BLT_SRCTRANSPARENCY, NULL ); - } - cnt++; - } - } - ///////////////////// AP MODIFIER if ( (GetAPBonus( gpItemDescObject ) != 0 ) || ( fComparisonMode && GetAPBonus( gpComparedItemDescObject ) != 0 ) ) @@ -5668,22 +5598,6 @@ void DrawAdvancedStats( OBJECTTYPE * gpItemDescObject ) cnt++; } - // HEADROCK HAM 5: Counter-Force Frequency has been removed from the game in favour of a more realistic system. - /* - ///////////////////// COUNTER FORCE FREQUENCY - if (CalcCounterForceFrequency( gpItemDescSoldier, gpItemDescObject ) != 0 ) - { - if( UsingNewCTHSystem() == true && Item[gpItemDescObject->usItem].usItemClass == IC_GUN ) - { - if (cnt >= sFirstLine && cnt < sLastLine) - { - BltVideoObjectFromIndex( guiSAVEBUFFER, guiItemInfoAdvancedIcon, 19, gItemDescAdvRegions[cnt-sFirstLine][0].sLeft + sOffsetX, gItemDescAdvRegions[cnt-sFirstLine][0].sTop + sOffsetY, VO_BLT_SRCTRANSPARENCY, NULL ); - } - cnt++; - } - } - */ - // Flugente // new line is necessary (Moa: only if needed) INT16 fDrawGenIndexes = FALSE; @@ -11397,75 +11311,6 @@ void DrawAdvancedValues( OBJECTTYPE *gpItemDescObject ) cnt++; } - ///////////////////// COUNTER FORCE FREQUENCY MODIFIER - iModifier[0] = GetObjectModifier( gpItemDescSoldier, gpItemDescObject, ANIM_STAND, ITEMMODIFIER_COUNTERFORCEFREQUENCY ); - iModifier[1] = GetObjectModifier( gpItemDescSoldier, gpItemDescObject, ANIM_CROUCH, ITEMMODIFIER_COUNTERFORCEFREQUENCY ); - iModifier[2] = GetObjectModifier( gpItemDescSoldier, gpItemDescObject, ANIM_PRONE, ITEMMODIFIER_COUNTERFORCEFREQUENCY ); - if( fComparisonMode ) - { - iComparedModifier[0] = GetObjectModifier( gpItemDescSoldier, gpComparedItemDescObject, ANIM_STAND, ITEMMODIFIER_COUNTERFORCEFREQUENCY ); - iComparedModifier[1] = GetObjectModifier( gpItemDescSoldier, gpComparedItemDescObject, ANIM_CROUCH, ITEMMODIFIER_COUNTERFORCEFREQUENCY ); - iComparedModifier[2] = GetObjectModifier( gpItemDescSoldier, gpComparedItemDescObject, ANIM_PRONE, ITEMMODIFIER_COUNTERFORCEFREQUENCY ); - } - if ( ( (iModifier[0] != 0 || iModifier[1] != 0 || iModifier[2] != 0) || ( fComparisonMode && (iComparedModifier[0] != 0 || iComparedModifier[1] != 0 || iComparedModifier[2] != 0) ) ) - && UsingNewCTHSystem() == true ) - { - if (cnt >= sFirstLine && cnt < sLastLine) - { - // Set Y coordinates - sTop = gItemDescAdvRegions[cnt-sFirstLine][1].sTop; - sHeight = gItemDescAdvRegions[cnt-sFirstLine][1].sBottom - sTop; - - // Print Values - for (UINT8 cnt2 = 0; cnt2 < 3; cnt2++) - { - SetFontForeground( 5 ); - sLeft = gItemDescAdvRegions[cnt-sFirstLine][cnt2+1].sLeft; - sWidth = gItemDescAdvRegions[cnt-sFirstLine][cnt2+1].sRight - sLeft; - if( fComparisonMode ) - { - iModifier[cnt2] = iComparedModifier[cnt2] - iModifier[cnt2]; - } - if (iModifier[cnt2] > 0) - { - SetFontForeground( ITEMDESC_FONTPOSITIVE ); - swprintf( pStr, L"+%d", iModifier[cnt2] ); - wcscat( pStr, L"%" ); - FindFontCenterCoordinates( sLeft, sTop, sWidth, sHeight, pStr, BLOCKFONT2, &usX, &usY); - #ifdef CHINESE - wcscat( pStr, ChineseSpecString1 ); - #else - wcscat( pStr, L"%" ); - #endif - } - else if (iModifier[cnt2] < 0) - { - SetFontForeground( ITEMDESC_FONTNEGATIVE ); - swprintf( pStr, L"%d", iModifier[cnt2] ); - wcscat( pStr, L"%" ); - FindFontCenterCoordinates( sLeft, sTop, sWidth, sHeight, pStr, BLOCKFONT2, &usX, &usY); - #ifdef CHINESE - wcscat( pStr, ChineseSpecString1 ); - #else - wcscat( pStr, L"%" ); - #endif - } - else if( fComparisonMode ) - { - swprintf( pStr, L"=" ); - FindFontCenterCoordinates( sLeft, sTop, sWidth, sHeight, pStr, BLOCKFONT2, &usX, &usY); - } - else - { - swprintf( pStr, L"--" ); - FindFontCenterCoordinates( sLeft, sTop, sWidth, sHeight, pStr, BLOCKFONT2, &usX, &usY); - } - mprintf( usX, usY, pStr ); - } - } - cnt++; - } - ///////////////////// AP MODIFIER iModifier[0] = GetAPBonus( gpItemDescObject ); iModifier[1] = iModifier[0]; @@ -13082,50 +12927,6 @@ void DrawAdvancedValues( OBJECTTYPE *gpItemDescObject ) cnt++; } - // HEADROCK HAM 5: Counter-Force Frequency has been removed from the game in favour of a more realistic system. - /* - ///////////////////// COUNTER FORCE FREQUENCY - iModifier[0] = CalcCounterForceFrequency( gpItemDescSoldier, gpItemDescObject ); - iModifier[1] = iModifier[0]; - iModifier[2] = iModifier[0]; - if ((iModifier[0] != 0 || iModifier[1] != 0 || iModifier[2] != 0) && UsingNewCTHSystem() == true && Item[gpItemDescObject->usItem].usItemClass == IC_GUN ) - { - if (cnt >= sFirstLine && cnt < sLastLine) - { - // Set Y coordinates - sTop = gItemDescAdvRegions[cnt-sFirstLine][1].sTop; - sHeight = gItemDescAdvRegions[cnt-sFirstLine][1].sBottom - sTop; - - // Print Values - for (UINT8 cnt2 = 0; cnt2 < 3; cnt2++) - { - SetFontForeground( 5 ); - sLeft = gItemDescAdvRegions[cnt-sFirstLine][cnt2+1].sLeft; - sWidth = gItemDescAdvRegions[cnt-sFirstLine][cnt2+1].sRight - sLeft; - if (iModifier[cnt2] > 0) - { - SetFontForeground( ITEMDESC_FONTPOSITIVE ); - swprintf( pStr, L"%d", iModifier[cnt2] ); - FindFontCenterCoordinates( sLeft, sTop, sWidth, sHeight, pStr, BLOCKFONT2, &usX, &usY); - } - else if (iModifier[cnt2] < 0) - { - SetFontForeground( ITEMDESC_FONTNEGATIVE ); - swprintf( pStr, L"%d", iModifier[cnt2] ); - FindFontCenterCoordinates( sLeft, sTop, sWidth, sHeight, pStr, BLOCKFONT2, &usX, &usY); - } - else - { - swprintf( pStr, L"--" ); - FindFontCenterCoordinates( sLeft, sTop, sWidth, sHeight, pStr, BLOCKFONT2, &usX, &usY); - } - mprintf( usX, usY, pStr ); - } - } - cnt++; - } - */ - // Flugente: draw a new description line // Moa: only if required INT16 fDrawGenIndexes = FALSE; diff --git a/Tactical/Item Types.h b/Tactical/Item Types.h index afeb1d73b..e885606bf 100644 --- a/Tactical/Item Types.h +++ b/Tactical/Item Types.h @@ -1096,7 +1096,6 @@ typedef struct INT16 percentdropcompensationmodifier[3]; INT16 maxcounterforcemodifier[3]; INT16 counterforceaccuracymodifier[3]; - INT16 counterforcefrequencymodifier[3]; INT16 targettrackingmodifier[3]; INT16 aimlevelsmodifier[3]; // HEADROCK HAM 4: New modifiers that do not require a stance array, since they affect the gun objectively, not diff --git a/Tactical/Items.cpp b/Tactical/Items.cpp index 07a11483a..87be5f6c0 100644 --- a/Tactical/Items.cpp +++ b/Tactical/Items.cpp @@ -10386,9 +10386,6 @@ INT32 GetItemModifier(OBJECTTYPE* pObj, UINT8 ubRef, UINT8 usType) case ITEMMODIFIER_COUNTERFORCEACCURACY: iModifier += BonusReduceMore( Item[pObj->usItem].counterforceaccuracymodifier[ubRef], (*pObj)[0]->data.objectStatus ); break; - case ITEMMODIFIER_COUNTERFORCEFREQUENCY: - iModifier += BonusReduceMore( Item[pObj->usItem].counterforcefrequencymodifier[ubRef], (*pObj)[0]->data.objectStatus ); - break; case ITEMMODIFIER_TRACKING: iModifier += BonusReduceMore( Item[pObj->usItem].targettrackingmodifier[ubRef], (*pObj)[0]->data.objectStatus ); break; diff --git a/Tactical/Items.h b/Tactical/Items.h index dd7f938b6..13b56bf0d 100644 --- a/Tactical/Items.h +++ b/Tactical/Items.h @@ -286,7 +286,6 @@ enum { ITEMMODIFIER_DROPCOMPENSATION, ITEMMODIFIER_COUNTERFORCEMAX, ITEMMODIFIER_COUNTERFORCEACCURACY, - ITEMMODIFIER_COUNTERFORCEFREQUENCY, ITEMMODIFIER_TRACKING, ITEMMODIFIER_AIMLEVELS, diff --git a/Tactical/LOS.cpp b/Tactical/LOS.cpp index de5b633ec..6184e9675 100644 --- a/Tactical/LOS.cpp +++ b/Tactical/LOS.cpp @@ -8902,76 +8902,6 @@ void LimitImpactPointToMaxAperture( FLOAT *dShotOffsetX, FLOAT *dShotOffsetY, FL } } -UINT32 CalcCounterForceFrequency(SOLDIERTYPE *pShooter, OBJECTTYPE *pWeapon) -{ - INT8 traitLoop; - - FLOAT iCounterForceFrequency = gGameCTHConstants.RECOIL_COUNTER_FREQUENCY_AGI * EffectiveAgility(pShooter, FALSE); - iCounterForceFrequency += gGameCTHConstants.RECOIL_COUNTER_FREQUENCY_EXP_LEVEL * EffectiveExpLevel(pShooter) * 10; - - // Average - FLOAT iDivisor = gGameCTHConstants.RECOIL_COUNTER_FREQUENCY_AGI + - gGameCTHConstants.RECOIL_COUNTER_FREQUENCY_EXP_LEVEL; - iCounterForceFrequency /= iDivisor; - - // SAMDRO - shooting dual bursts is somehow harder to control, unless we are ambidextrous - if ( pShooter->IsValidSecondHandBurst() ) - { - if ( gGameOptions.fNewTraitSystem ) - { - if ( !(HAS_SKILL_TRAIT( pShooter, AMBIDEXTROUS_NT )) ) - iCounterForceFrequency = iCounterForceFrequency*9/10; // -10% - } - else - { - if ( !(HAS_SKILL_TRAIT( pShooter, AMBIDEXT_OT )) ) - iCounterForceFrequency = iCounterForceFrequency*9/10; // -10% - } - } - - // Bridge the gap to 100 with the help of the AUTO-WEAPONS skill - if(gGameOptions.fNewTraitSystem) - traitLoop = NUM_SKILL_TRAITS( pShooter, AUTO_WEAPONS_NT ); - else - traitLoop = NUM_SKILL_TRAITS( pShooter, AUTO_WEAPS_OT ); - for (INT32 x = 0; x < traitLoop; x++) - { - INT8 bDifference = (INT8)(100-iCounterForceFrequency); - bDifference = (INT8)(bDifference / gGameCTHConstants.RECOIL_COUNTER_FREQUENCY_AUTO_WEAPONS_DIVISOR); - iCounterForceFrequency += bDifference; - } - - UINT8 stance = gAnimControl[ pShooter->usAnimState ].ubEndHeight; - - // Flugente: new feature: if the next tile in our sight direction has a height so that we could rest our weapon on it, we do that, thereby gaining the prone boni instead. This includes bipods - if ( gGameExternalOptions.fWeaponResting && pShooter->IsWeaponMounted() ) - stance = ANIM_PRONE; - - // Percent Modifier from weapon and its attachments - FLOAT moda = (iCounterForceFrequency * GetObjectModifier( pShooter, pWeapon, stance, ITEMMODIFIER_COUNTERFORCEFREQUENCY )) / 100; - FLOAT modb = (iCounterForceFrequency * GetObjectModifier( pShooter, pWeapon, gAnimControl[ pShooter->usAnimState ].ubEndHeight, ITEMMODIFIER_COUNTERFORCEFREQUENCY )) / 100; - iCounterForceFrequency += ((gGameExternalOptions.ubProneModifierPercentage * moda + (100 - gGameExternalOptions.ubProneModifierPercentage) * modb)/100); - - // Limit to 1-100. - iCounterForceFrequency = __min(100, iCounterForceFrequency); - iCounterForceFrequency = __max(1, iCounterForceFrequency); - - // Invert value. Now 100 is bad, 1 is good. - iCounterForceFrequency = 100 - iCounterForceFrequency; - - // Calculate frequency - UINT32 uiBulletsPer5AP = max(1,GetAutofireShotsPerFiveAPs( pWeapon )); - UINT32 uiCounterForceFrequency = __max(1, (UINT32)ceil((uiBulletsPer5AP * iCounterForceFrequency) / 100)); - - //CHRISL: For the time being, this is going to override the CFF function - uiBulletsPer5AP = GetAutofireShotsPerFiveAPs( pWeapon ); - if(uiBulletsPer5AP < 1) - uiBulletsPer5AP = 3; - uiCounterForceFrequency = (UINT32)ceil((FLOAT)uiBulletsPer5AP / 2.0f); - - return uiCounterForceFrequency; -} - FLOAT CalcCounterForceMax(SOLDIERTYPE *pShooter, OBJECTTYPE *pWeapon, UINT8 uiStance) { if(uiStance == 0) diff --git a/Tactical/LOS.h b/Tactical/LOS.h index d78006ff7..18f0340ae 100644 --- a/Tactical/LOS.h +++ b/Tactical/LOS.h @@ -238,8 +238,6 @@ void CalcMuzzleSway( SOLDIERTYPE *pShooter, FLOAT *dMuzzleOffsetX, FLOAT *dMuzzl FLOAT CalcBulletDeviation( SOLDIERTYPE *pShooter, FLOAT *dShotOffsetX, FLOAT *dShotOffsetY, OBJECTTYPE *pWeapon, UINT32 uiRange ); void LimitImpactPointByFacing( SOLDIERTYPE *pShooter, SOLDIERTYPE *pTarget, FLOAT *dShotOffsetX, FLOAT *dShotOffsetY, FLOAT *dEndX, FLOAT *dEndY ); void LimitImpactPointToMaxAperture( FLOAT *dShotOffsetX, FLOAT *dShotOffsetY, FLOAT dDistanceAperture ); -// HEADROCK HAM 5: Removed and replaced by continuously-variable CF -// UINT32 CalcCounterForceFrequency(SOLDIERTYPE *pShooter, OBJECTTYPE *pWeapon); FLOAT CalcCounterForceMax(SOLDIERTYPE *pShooter, OBJECTTYPE *pWeapon, UINT8 uiStance = 0); UINT32 CalcCounterForceAccuracy(SOLDIERTYPE *pShooter, OBJECTTYPE *pWeapon, UINT32 uiRange, BOOLEAN fTracer, bool fAnticipate = false); void CalcPreRecoilOffset( SOLDIERTYPE *pShooter, OBJECTTYPE *pWeapon, FLOAT *dMuzzleOffsetX, FLOAT *dMuzzleOffsetY, UINT32 uiRange ); diff --git a/Utils/XML_Items.cpp b/Utils/XML_Items.cpp index bda6fbf9b..84440b1ec 100644 --- a/Utils/XML_Items.cpp +++ b/Utils/XML_Items.cpp @@ -103,7 +103,6 @@ itemStartElementHandle(void *userData, const XML_Char *name, const XML_Char **at pData->curItem.percentdropcompensationmodifier[X] = -10000; pData->curItem.maxcounterforcemodifier[X] = -10000; pData->curItem.counterforceaccuracymodifier[X] = -10000; - pData->curItem.counterforcefrequencymodifier[X] = -10000; pData->curItem.aimlevelsmodifier[X] = -10000; } @@ -1278,11 +1277,6 @@ itemEndElementHandle(void *userData, const XML_Char *name) pData->curElement = ELEMENT_SUBLIST; pData->curItem.counterforceaccuracymodifier[pData->curStance] = (INT16) atol(pData->szCharData); } - else if(strcmp(name, "PercentCounterForceFrequency") == 0) - { - pData->curElement = ELEMENT_SUBLIST; - pData->curItem.counterforcefrequencymodifier[pData->curStance] = (INT16) atol(pData->szCharData); - } else if(strcmp(name, "AimLevels") == 0) { pData->curElement = ELEMENT_SUBLIST; @@ -2038,7 +2032,6 @@ BOOLEAN WriteItemStats() FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].percentdropcompensationmodifier[0] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].maxcounterforcemodifier[0] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforceaccuracymodifier[0] ); - FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforcefrequencymodifier[0] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[0] ); FilePrintf(hFile,"\t\t\r\n"); @@ -2052,7 +2045,6 @@ BOOLEAN WriteItemStats() FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].percentdropcompensationmodifier[1] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].maxcounterforcemodifier[1] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforceaccuracymodifier[1] ); - FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforcefrequencymodifier[1] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[1] ); FilePrintf(hFile,"\t\t\r\n"); @@ -2066,7 +2058,6 @@ BOOLEAN WriteItemStats() FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].percentdropcompensationmodifier[2] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].maxcounterforcemodifier[2] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforceaccuracymodifier[2] ); - FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforcefrequencymodifier[2] ); FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[2] ); FilePrintf(hFile,"\t\t\r\n"); @@ -2138,7 +2129,7 @@ void InheritStanceModifiers( itemParseData *pData ) { // Create a two-dimensional temp array to hold all the data about stance modifiers. - INT16 TempArray[12][3]; + INT16 TempArray[11][3]; INT8 count = 0; INT8 arrcount = 0; @@ -2155,11 +2146,10 @@ void InheritStanceModifiers( itemParseData *pData ) TempArray[7][count] = pData->curItem.percentdropcompensationmodifier[count]; TempArray[8][count] = pData->curItem.maxcounterforcemodifier[count]; TempArray[9][count] = pData->curItem.counterforceaccuracymodifier[count]; - TempArray[10][count] = pData->curItem.counterforcefrequencymodifier[count]; - TempArray[11][count] = pData->curItem.aimlevelsmodifier[count]; + TempArray[10][count] = pData->curItem.aimlevelsmodifier[count]; } - for (arrcount = 0; arrcount < 12; arrcount++) + for (arrcount = 0; arrcount < 11; arrcount++) { if (TempArray[arrcount][2] == -10000) { @@ -2199,8 +2189,7 @@ void InheritStanceModifiers( itemParseData *pData ) pData->curItem.percentdropcompensationmodifier[count] = TempArray[7][count]; pData->curItem.maxcounterforcemodifier[count] = TempArray[8][count]; pData->curItem.counterforceaccuracymodifier[count] = TempArray[9][count]; - pData->curItem.counterforcefrequencymodifier[count] = TempArray[10][count]; - pData->curItem.aimlevelsmodifier[count] = TempArray[11][count]; + pData->curItem.aimlevelsmodifier[count] = TempArray[10][count]; } }