mirror of
https://github.com/1dot13/source.git
synced 2026-09-02 14:36:06 +02:00
Fixed incorrect attacker's extra strength calculation in CalcChanceHTH()
Fix: don't allow opening inventory panel if soldier is not available during interrupt. git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8691 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -6111,7 +6111,6 @@ void MercFacePanelCallback( MOUSE_REGION * pRegion, INT32 iReason )
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (iReason & MSYS_CALLBACK_REASON_INIT)
|
if (iReason & MSYS_CALLBACK_REASON_INIT)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
@@ -6122,6 +6121,10 @@ void MercFacePanelCallback( MOUSE_REGION * pRegion, INT32 iReason )
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!OK_INTERRUPT_MERC(MercPtrs[ubSoldierID]))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (iReason & MSYS_CALLBACK_REASON_LBUTTON_DWN)
|
if (iReason & MSYS_CALLBACK_REASON_LBUTTON_DWN)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -8408,7 +8408,7 @@ UINT32 CalcChanceHTH( SOLDIERTYPE * pAttacker,SOLDIERTYPE *pDefender, INT16 ubAi
|
|||||||
iAttRating = ( 2 * EffectiveDexterity( pAttacker, FALSE ) + // coordination, accuracy *
|
iAttRating = ( 2 * EffectiveDexterity( pAttacker, FALSE ) + // coordination, accuracy *
|
||||||
2 * EffectiveAgility( pAttacker, FALSE ) + // speed & reflexes
|
2 * EffectiveAgility( pAttacker, FALSE ) + // speed & reflexes
|
||||||
pAttacker->stats.bStrength + // physical strength
|
pAttacker->stats.bStrength + // physical strength
|
||||||
pDefender->bExtraStrength + // additional strength from power armour
|
pAttacker->bExtraStrength + // additional strength from power armour
|
||||||
(10 * EffectiveExpLevel( pAttacker ) ) ); // experience, knowledge
|
(10 * EffectiveExpLevel( pAttacker ) ) ); // experience, knowledge
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -8417,7 +8417,7 @@ UINT32 CalcChanceHTH( SOLDIERTYPE * pAttacker,SOLDIERTYPE *pDefender, INT16 ubAi
|
|||||||
iAttRating = ( EffectiveDexterity( pAttacker, FALSE ) + // coordination, accuracy
|
iAttRating = ( EffectiveDexterity( pAttacker, FALSE ) + // coordination, accuracy
|
||||||
EffectiveAgility( pAttacker, FALSE ) + // speed & reflexes
|
EffectiveAgility( pAttacker, FALSE ) + // speed & reflexes
|
||||||
3 * pAttacker->stats.bStrength + // physical strength (TRIPLED!)
|
3 * pAttacker->stats.bStrength + // physical strength (TRIPLED!)
|
||||||
3 * pDefender->bExtraStrength + // additional strength from power armour
|
3 * pAttacker->bExtraStrength + // additional strength from power armour
|
||||||
(10 * EffectiveExpLevel( pAttacker ) ) ); // experience, knowledge
|
(10 * EffectiveExpLevel( pAttacker ) ) ); // experience, knowledge
|
||||||
}
|
}
|
||||||
///////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////
|
||||||
@@ -8427,7 +8427,7 @@ UINT32 CalcChanceHTH( SOLDIERTYPE * pAttacker,SOLDIERTYPE *pDefender, INT16 ubAi
|
|||||||
iAttRating = (3 * EffectiveDexterity( pAttacker, FALSE ) + // coordination, accuracy (TRIPLED!)
|
iAttRating = (3 * EffectiveDexterity( pAttacker, FALSE ) + // coordination, accuracy (TRIPLED!)
|
||||||
EffectiveAgility( pAttacker, FALSE ) + // speed & reflexes
|
EffectiveAgility( pAttacker, FALSE ) + // speed & reflexes
|
||||||
pAttacker->stats.bStrength + // physical strength
|
pAttacker->stats.bStrength + // physical strength
|
||||||
pDefender->bExtraStrength + // additional strength from power armour
|
pAttacker->bExtraStrength + // additional strength from power armour
|
||||||
(10 * EffectiveExpLevel( pAttacker ) ) ); // experience, knowledge
|
(10 * EffectiveExpLevel( pAttacker ) ) ); // experience, knowledge
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user