mirror of
https://github.com/1dot13/source.git
synced 2026-09-09 14:46:05 +02:00
- Bugfix: Fixed CTD when throwing item (grenade, rock, throwing knife, ...) in tactical when item description box is open
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@3299 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -4203,26 +4203,10 @@ void RenderItemDescriptionBox( )
|
|||||||
|
|
||||||
ubAttackAPs = BaseAPsToShootOrStab( APBPConstants[DEFAULT_APS], APBPConstants[DEFAULT_AIMSKILL], gpItemDescObject );
|
ubAttackAPs = BaseAPsToShootOrStab( APBPConstants[DEFAULT_APS], APBPConstants[DEFAULT_AIMSKILL], gpItemDescObject );
|
||||||
|
|
||||||
if (ubAttackAPs <= EXCEPTIONAL_AP_COST)
|
// WANNE: Fixed CTD when trowing an item with open description box
|
||||||
|
if (ubAttackAPs != -1)
|
||||||
{
|
{
|
||||||
SetFontForeground( ITEMDESC_FONTHIGHLIGHT );
|
if (ubAttackAPs <= EXCEPTIONAL_AP_COST)
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
SetFontForeground( 5 );
|
|
||||||
}
|
|
||||||
|
|
||||||
//AP's
|
|
||||||
if ( !Weapon[gpItemDescObject->usItem].NoSemiAuto )
|
|
||||||
{
|
|
||||||
swprintf( pStr, L"%2d", ubAttackAPs );
|
|
||||||
FindFontRightCoordinates( (INT16)(gWeaponStats[ 5 ].sX + gsInvDescX + gWeaponStats[ 5 ].sValDx), (INT16)(gWeaponStats[ 5 ].sY + gsInvDescY ), ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
|
||||||
mprintf( usX, usY, pStr );
|
|
||||||
}
|
|
||||||
|
|
||||||
if (GetShotsPerBurst(gpItemDescObject) > 0)
|
|
||||||
{
|
|
||||||
if (GetShotsPerBurst(gpItemDescObject) >= EXCEPTIONAL_BURST_SIZE )//|| gpItemDescObject->usItem == G11)
|
|
||||||
{
|
{
|
||||||
SetFontForeground( ITEMDESC_FONTHIGHLIGHT );
|
SetFontForeground( ITEMDESC_FONTHIGHLIGHT );
|
||||||
}
|
}
|
||||||
@@ -4230,16 +4214,41 @@ void RenderItemDescriptionBox( )
|
|||||||
{
|
{
|
||||||
SetFontForeground( 5 );
|
SetFontForeground( 5 );
|
||||||
}
|
}
|
||||||
swprintf( pStr, L"%2d", ubAttackAPs + CalcAPsToBurst( APBPConstants[DEFAULT_APS], gpItemDescObject ) );
|
|
||||||
FindFontRightCoordinates( (INT16)(gWeaponStats[ 6 ].sX + gsInvDescX + gWeaponStats[ 6 ].sValDx), (INT16)(gWeaponStats[ 6 ].sY + gsInvDescY ), ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
//AP's
|
||||||
mprintf( usX, usY, pStr );
|
if ( !Weapon[gpItemDescObject->usItem].NoSemiAuto )
|
||||||
|
{
|
||||||
|
swprintf( pStr, L"%2d", ubAttackAPs );
|
||||||
|
FindFontRightCoordinates( (INT16)(gWeaponStats[ 5 ].sX + gsInvDescX + gWeaponStats[ 5 ].sValDx), (INT16)(gWeaponStats[ 5 ].sY + gsInvDescY ), ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||||
|
mprintf( usX, usY, pStr );
|
||||||
|
}
|
||||||
|
|
||||||
|
if (GetShotsPerBurst(gpItemDescObject) > 0)
|
||||||
|
{
|
||||||
|
if (GetShotsPerBurst(gpItemDescObject) >= EXCEPTIONAL_BURST_SIZE )//|| gpItemDescObject->usItem == G11)
|
||||||
|
{
|
||||||
|
SetFontForeground( ITEMDESC_FONTHIGHLIGHT );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetFontForeground( 5 );
|
||||||
|
}
|
||||||
|
swprintf( pStr, L"%2d", ubAttackAPs + CalcAPsToBurst( APBPConstants[DEFAULT_APS], gpItemDescObject ) );
|
||||||
|
FindFontRightCoordinates( (INT16)(gWeaponStats[ 6 ].sX + gsInvDescX + gWeaponStats[ 6 ].sValDx), (INT16)(gWeaponStats[ 6 ].sY + gsInvDescY ), ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||||
|
mprintf( usX, usY, pStr );
|
||||||
|
}
|
||||||
|
else if (GetAutofireShotsPerFiveAPs(gpItemDescObject) > 0)
|
||||||
|
{
|
||||||
|
SetFontForeground( 5 );
|
||||||
|
swprintf( pStr, L"%2d", ubAttackAPs + CalcAPsToAutofire( APBPConstants[DEFAULT_APS], gpItemDescObject, 3 ) );
|
||||||
|
FindFontRightCoordinates( (INT16)(gWeaponStats[ 6 ].sX + gsInvDescX + gWeaponStats[ 6 ].sValDx), (INT16)(gWeaponStats[ 6 ].sY + gsInvDescY ), ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||||
|
mprintf( usX, usY, pStr );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (GetAutofireShotsPerFiveAPs(gpItemDescObject) > 0)
|
else
|
||||||
{
|
{
|
||||||
SetFontForeground( 5 );
|
// WANNE: Close the description box after we threw the item.
|
||||||
swprintf( pStr, L"%2d", ubAttackAPs + CalcAPsToAutofire( APBPConstants[DEFAULT_APS], gpItemDescObject, 3 ) );
|
DeleteItemDescriptionBox();
|
||||||
FindFontRightCoordinates( (INT16)(gWeaponStats[ 6 ].sX + gsInvDescX + gWeaponStats[ 6 ].sValDx), (INT16)(gWeaponStats[ 6 ].sY + gsInvDescY ), ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
|
||||||
mprintf( usX, usY, pStr );
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+11
-2
@@ -1402,9 +1402,18 @@ INT16 BaseAPsToShootOrStab( INT16 bAPs, INT16 bAimSkill, OBJECTTYPE * pObj )
|
|||||||
//{
|
//{
|
||||||
// Top *= 100;
|
// Top *= 100;
|
||||||
//}
|
//}
|
||||||
Bottom = (INT32)(( 100 + bAimSkill ) * rof);
|
|
||||||
|
// WANNE : Fixed CTD that occurs when trowing item (grenade, throwing knife, ...)
|
||||||
|
// with open description box in tactical
|
||||||
|
INT16 baseAPsToShootOrStab = -1;
|
||||||
|
if (rof > 0)
|
||||||
|
{
|
||||||
|
Bottom = (INT32)(( 100 + bAimSkill ) * rof);
|
||||||
|
baseAPsToShootOrStab = ( Top + Bottom / 2 ) / Bottom;
|
||||||
|
}
|
||||||
|
|
||||||
// (this will round to the nearest integer)
|
// (this will round to the nearest integer)
|
||||||
return ( Top + Bottom / 2 ) / Bottom;
|
return baseAPsToShootOrStab;
|
||||||
}
|
}
|
||||||
|
|
||||||
void GetAPChargeForShootOrStabWRTGunRaises( SOLDIERTYPE *pSoldier, INT16 sGridNo, UINT8 ubAddTurningCost, BOOLEAN *pfChargeTurning, BOOLEAN *pfChargeRaise )
|
void GetAPChargeForShootOrStabWRTGunRaises( SOLDIERTYPE *pSoldier, INT16 sGridNo, UINT8 ubAddTurningCost, BOOLEAN *pfChargeTurning, BOOLEAN *pfChargeRaise )
|
||||||
|
|||||||
@@ -99,7 +99,7 @@
|
|||||||
</Configuration>
|
</Configuration>
|
||||||
<Configuration
|
<Configuration
|
||||||
Name="Release|Win32"
|
Name="Release|Win32"
|
||||||
OutputDirectory="D:\misc\1.13\JA2 1.13 - EN (Actual)"
|
OutputDirectory="C:\Games\Jagged Alliance 2 EN"
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
IntermediateDirectory="$(ConfigurationName)"
|
||||||
ConfigurationType="1"
|
ConfigurationType="1"
|
||||||
InheritedPropertySheets=".\ja2_2005Express.vsprops"
|
InheritedPropertySheets=".\ja2_2005Express.vsprops"
|
||||||
@@ -145,7 +145,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="Winmm.lib .\Multiplayer\raknet\RakNetLibStatic.lib ws2_32.lib"
|
AdditionalDependencies="Winmm.lib .\Multiplayer\raknet\RakNetLibStatic.lib ws2_32.lib"
|
||||||
OutputFile="$(OutDir)\JA2_RU_3287.exe"
|
OutputFile="$(OutDir)\JA2_EN_3287.exe"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
GenerateMapFile="true"
|
GenerateMapFile="true"
|
||||||
|
|||||||
+2
-2
@@ -95,7 +95,7 @@
|
|||||||
</Configuration>
|
</Configuration>
|
||||||
<Configuration
|
<Configuration
|
||||||
Name="Release|Win32"
|
Name="Release|Win32"
|
||||||
OutputDirectory="\games\jagged alliance 2"
|
OutputDirectory="C:\games\jagged alliance 2 EN"
|
||||||
IntermediateDirectory="build\VS2008\$(ProjectName)_$(ConfigurationName)"
|
IntermediateDirectory="build\VS2008\$(ProjectName)_$(ConfigurationName)"
|
||||||
ConfigurationType="1"
|
ConfigurationType="1"
|
||||||
InheritedPropertySheets=".\ja2_VS2008.vsprops;.\ja2_VS2008Linker.vsprops;.\ja2_VS2008Libs.vsprops"
|
InheritedPropertySheets=".\ja2_VS2008.vsprops;.\ja2_VS2008Linker.vsprops;.\ja2_VS2008Libs.vsprops"
|
||||||
@@ -141,7 +141,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="Winmm.lib RakNetLibStatic.lib ws2_32.lib"
|
AdditionalDependencies="Winmm.lib RakNetLibStatic.lib ws2_32.lib"
|
||||||
OutputFile="$(OutDir)\JA2_EN_2996.exe"
|
OutputFile="$(OutDir)\JA2_EN_3111_VS2008.exe"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
AdditionalLibraryDirectories="Multiplayer\raknet"
|
AdditionalLibraryDirectories="Multiplayer\raknet"
|
||||||
GenerateDebugInformation="false"
|
GenerateDebugInformation="false"
|
||||||
|
|||||||
Reference in New Issue
Block a user