New feature: interactive actions allow various actions (hacking/reading/drinking/...) from user-defined xml acttions. The exact results can be set in a lua function.

For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=23144&goto=346447&#msg_346447

This is fully savegame compatible.

GameDir >= r2333 is required.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8278 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2016-08-02 19:03:28 +00:00
parent 41dcb598dd
commit 99f5be0ed7
48 changed files with 1406 additions and 60 deletions
+29
View File
@@ -4000,6 +4000,9 @@ INT16 GetAPsForMultiTurnAction( SOLDIERTYPE *pSoldier, UINT8 usActionType )
case MTA_REMOVE_FORTIFY:
sAPCost += APBPConstants[AP_REMOVE_FORTIFICATION];
break;
case MTA_HACK:
sAPCost += APBPConstants[AP_HACK];
break;
}
if ( usActionType == MTA_FORTIFY || usActionType == MTA_REMOVE_FORTIFY )
@@ -4010,6 +4013,32 @@ INT16 GetAPsForMultiTurnAction( SOLDIERTYPE *pSoldier, UINT8 usActionType )
return sAPCost;
}
INT16 GetAPsForInteractiveAction( SOLDIERTYPE *pSoldier, UINT8 usActionType )
{
INT16 sAPCost = 0;
switch ( usActionType )
{
case INTERACTIVE_STRUCTURE_HACKABLE:
sAPCost = GetAPsForMultiTurnAction( pSoldier, MTA_HACK );
break;
case INTERACTIVE_STRUCTURE_READFILE:
sAPCost += APBPConstants[AP_READFILE];
break;
case INTERACTIVE_STRUCTURE_WATERTAP:
sAPCost += APBPConstants[AP_WATERTAP];
break;
case INTERACTIVE_STRUCTURE_SODAMACHINE:
sAPCost += APBPConstants[AP_SODAMACHINE];
break;
default:
break;
}
return sAPCost;
}
INT16 GetAPsToJumpOver( SOLDIERTYPE *pSoldier )
{
// -25% APs needed to for MA traits