mirror of
https://github.com/1dot13/source.git
synced 2026-08-12 14:10:23 +02:00
Externalizations (by Buggler)
- Queen Palace & Interrogate meanwhile stuff - Initial POW stuff in Alma - Sectors for triggering Meduna outskirts meanwhile scene - Add Iggy to location when game progress condition met - Add Rat to location after creature meanwhile scene git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6479 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -1725,7 +1725,7 @@ void HourlyProgressUpdate(void)
|
||||
}
|
||||
#endif
|
||||
// at 50% make Mike available to the strategic AI
|
||||
if ( ubCurrentProgress >= gGameExternalOptions.ubGameProgressMikeAvailable && gStrategicStatus.ubHighestProgress <= gGameExternalOptions.ubGameProgressMikeAvailable )
|
||||
if ( ubCurrentProgress >= gGameExternalOptions.ubGameProgressMikeAvailable && gStrategicStatus.ubHighestProgress < gGameExternalOptions.ubGameProgressMikeAvailable )
|
||||
{
|
||||
if( gubFact[FACT_MIKE_AVAILABLE_TO_ARMY] < 2 )
|
||||
{
|
||||
@@ -1734,22 +1734,23 @@ void HourlyProgressUpdate(void)
|
||||
}
|
||||
|
||||
// at 70% add Iggy to the world
|
||||
if ( ubCurrentProgress >= gGameExternalOptions.ubGameProgressIggyAvaliable && gStrategicStatus.ubHighestProgress <= gGameExternalOptions.ubGameProgressIggyAvaliable )
|
||||
if ( ubCurrentProgress >= gGameExternalOptions.ubGameProgressIggyAvaliable && gStrategicStatus.ubHighestProgress < gGameExternalOptions.ubGameProgressIggyAvaliable )
|
||||
{
|
||||
if ( gubFact[ FACT_IGGY_AVAILABLE_TO_ARMY ] < 2 )
|
||||
{
|
||||
gMercProfiles[ IGGY ].sSectorX = 5;
|
||||
gMercProfiles[ IGGY ].sSectorY = MAP_ROW_C;
|
||||
gMercProfiles[ IGGY ].sSectorX = gModSettings.ubAddIggySectorX; //5
|
||||
gMercProfiles[ IGGY ].sSectorY = gModSettings.ubAddIggySectorY; //MAP_ROW_C
|
||||
gMercProfiles[ IGGY ].bSectorZ = gModSettings.ubAddIggySectorZ; //0
|
||||
}
|
||||
}
|
||||
|
||||
// Flugente: on certain progress levels, the queen decides to initiate major attacks
|
||||
if ( ubCurrentProgress >= gGameExternalOptions.ubGameProgressOffensiveStage1 && gStrategicStatus.ubHighestProgress <= gGameExternalOptions.ubGameProgressOffensiveStage1 )
|
||||
if ( ubCurrentProgress >= gGameExternalOptions.ubGameProgressOffensiveStage1 && gStrategicStatus.ubHighestProgress < gGameExternalOptions.ubGameProgressOffensiveStage1 )
|
||||
{
|
||||
ExecuteStrategicAIAction( NPC_ACTION_GLOBAL_OFFENSIVE_1, 0, 0 );
|
||||
}
|
||||
|
||||
if ( ubCurrentProgress >= gGameExternalOptions.ubGameProgressOffensiveStage2 && gStrategicStatus.ubHighestProgress <= gGameExternalOptions.ubGameProgressOffensiveStage2 )
|
||||
if ( ubCurrentProgress >= gGameExternalOptions.ubGameProgressOffensiveStage2 && gStrategicStatus.ubHighestProgress < gGameExternalOptions.ubGameProgressOffensiveStage2 )
|
||||
{
|
||||
ExecuteStrategicAIAction( NPC_ACTION_GLOBAL_OFFENSIVE_2, 0, 0 );
|
||||
}
|
||||
|
||||
@@ -3352,18 +3352,18 @@ void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum
|
||||
// Target a different merc....
|
||||
if ( usActionCode == NPC_ACTION_PUNCH_PC_SLOT_0 )
|
||||
{
|
||||
sGridNo = gsInterrogationGridNo[ 0 ];
|
||||
//pTarget = MercPtrs[ 0 ];
|
||||
sGridNo = gModSettings.iMeanwhileInterrogatePOWGridNo[ 0 ];
|
||||
}
|
||||
else if ( usActionCode == NPC_ACTION_PUNCH_PC_SLOT_1 )
|
||||
{
|
||||
//pTarget = MercPtrs[ 1 ];
|
||||
sGridNo = gsInterrogationGridNo[ 1 ];
|
||||
sGridNo = gModSettings.iMeanwhileInterrogatePOWGridNo[ 1 ];
|
||||
}
|
||||
else //if ( usActionCode == NPC_ACTION_PUNCH_PC_SLOT_2 )
|
||||
{
|
||||
//pTarget = MercPtrs[ 2 ];
|
||||
sGridNo = gsInterrogationGridNo[ 2 ];
|
||||
sGridNo = gModSettings.iMeanwhileInterrogatePOWGridNo[ 2 ];
|
||||
}
|
||||
|
||||
ubTargetID = WhoIsThere2( sGridNo, 0 );
|
||||
@@ -3473,7 +3473,7 @@ void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum
|
||||
|
||||
for ( cnt = 0; cnt < 3; cnt++ )
|
||||
{
|
||||
ubTargetID = WhoIsThere2( gsInterrogationGridNo[ cnt ], 0 );
|
||||
ubTargetID = WhoIsThere2( gModSettings.iMeanwhileInterrogatePOWGridNo[ cnt ], 0 );
|
||||
if ( ubTargetID == NOBODY )
|
||||
{
|
||||
continue;
|
||||
@@ -4132,9 +4132,9 @@ void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum
|
||||
|
||||
case NPC_ACTION_ADD_RAT:
|
||||
// add Rat
|
||||
gMercProfiles[ RAT ].sSectorX = 9;
|
||||
gMercProfiles[ RAT ].sSectorY = MAP_ROW_G;
|
||||
gMercProfiles[ RAT ].bSectorZ = 0;
|
||||
gMercProfiles[ RAT ].sSectorX = gModSettings.ubAddRatSectorX; //9
|
||||
gMercProfiles[ RAT ].sSectorY = gModSettings.ubAddRatSectorY; //7
|
||||
gMercProfiles[ RAT ].bSectorZ = gModSettings.ubAddRatSectorZ; //0
|
||||
break;
|
||||
|
||||
case NPC_ACTION_ENDGAME_STATE_1:
|
||||
|
||||
@@ -6080,16 +6080,16 @@ void TestMeanWhile( INT32 iID )
|
||||
INT32 cnt;
|
||||
SOLDIERTYPE *pSoldier;
|
||||
|
||||
MeanwhileDef.sSectorX = 3;
|
||||
MeanwhileDef.sSectorY = 16;
|
||||
MeanwhileDef.sSectorX = gModSettings.ubMeanwhilePalaceSectorX; //3
|
||||
MeanwhileDef.sSectorY = gModSettings.ubMeanwhilePalaceSectorY; //16
|
||||
MeanwhileDef.ubNPCNumber = QUEEN;
|
||||
MeanwhileDef.usTriggerEvent = 0;
|
||||
MeanwhileDef.ubMeanwhileID = (UINT8)iID;
|
||||
|
||||
if ( iID == INTERROGATION )
|
||||
{
|
||||
MeanwhileDef.sSectorX = 7;
|
||||
MeanwhileDef.sSectorY = 14;
|
||||
MeanwhileDef.sSectorX = gModSettings.ubMeanwhileInterrogatePOWSectorX; //7
|
||||
MeanwhileDef.sSectorY = gModSettings.ubMeanwhileInterrogatePOWSectorY; //14
|
||||
|
||||
// Loop through our mercs and set gridnos once some found.....
|
||||
// look for all mercs on the same team,
|
||||
@@ -6103,8 +6103,8 @@ void TestMeanWhile( INT32 iID )
|
||||
|
||||
ChangeSoldiersAssignment( pSoldier, ASSIGNMENT_POW );
|
||||
|
||||
pSoldier->sSectorX = 7;
|
||||
pSoldier->sSectorY = 14;
|
||||
pSoldier->sSectorX = gModSettings.ubMeanwhileInterrogatePOWSectorX; //7
|
||||
pSoldier->sSectorY = gModSettings.ubMeanwhileInterrogatePOWSectorY; //14
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user