Externalizations (by Buggler)

- 'Kingpin wants his money' history log hardcoded location to his actual location
- John & Mary sector to disappear on quest completion
- Dynamo prison sector for Matt's quest
- Joey primary & alternate location to be found
- Spike sector relocation when assassins are sent
- Weapon cache locations

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6477 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Wanne
2013-10-09 19:44:15 +00:00
parent e59e951e31
commit 3ab6da635f
16 changed files with 182 additions and 74 deletions
+59 -8
View File
@@ -2364,6 +2364,34 @@ void LoadModSettings(){
gModSettings.usCrateTileDef = iniReader.ReadInteger("Rebel Hideout", "CRATE_TILE_DEF", 411); gModSettings.usCrateTileDef = iniReader.ReadInteger("Rebel Hideout", "CRATE_TILE_DEF", 411);
gModSettings.usTrapdoorTileDef = iniReader.ReadInteger("Rebel Hideout", "TRAPDOOR_TILE_DEF", 2041); gModSettings.usTrapdoorTileDef = iniReader.ReadInteger("Rebel Hideout", "TRAPDOOR_TILE_DEF", 2041);
gModSettings.ubOmertaDropOffX = iniReader.ReadInteger("Gear Dropoff", "OMERTA_DROPOFF_X", 9);
gModSettings.ubOmertaDropOffY = iniReader.ReadInteger("Gear Dropoff", "OMERTA_DROPOFF_Y", 1);
gModSettings.ubOmertaDropOffZ = iniReader.ReadInteger("Gear Dropoff", "OMERTA_DROPOFF_Z", 0);
gModSettings.iOmertaDropOff = iniReader.ReadInteger("Gear Dropoff", "OMERTA_DROPOFF_GRIDNO", 4868);
//[Omerta]
//[Drassen]
gModSettings.ubJohnUnescortSectorX = iniReader.ReadInteger("Drassen", "JOHN_UNESCORT_SECTOR_X", 13);
gModSettings.ubJohnUnescortSectorY = iniReader.ReadInteger("Drassen", "JOHN_UNESCORT_SECTOR_Y", 2);
gModSettings.ubJohnUnescortSectorZ = iniReader.ReadInteger("Drassen", "JOHN_UNESCORT_SECTOR_Z", 0);
//[Alma]
gModSettings.sRocketRifleGridNo = iniReader.ReadInteger("Alma", "ROCKETRIFLE_POSITION", 10472);
//[Grumm]
//[Tixa]
gModSettings.ubDyanmoPrisonSectorX = iniReader.ReadInteger("Tixa", "DYNAMO_PRISON_SECTOR_X", 9);
gModSettings.ubDyanmoPrisonSectorY = iniReader.ReadInteger("Tixa", "DYNAMO_PRISON_SECTOR_Y", 10);
gModSettings.ubDyanmoPrisonSectorZ = iniReader.ReadInteger("Tixa", "DYNAMO_PRISON_SECTOR_Z", 0);
//[Cambria]
gModSettings.ubHospitalSectorX = iniReader.ReadInteger("Cambria", "HOSPITAL_SECTOR_X", 8);
gModSettings.ubHospitalSectorY = iniReader.ReadInteger("Cambria", "HOSPITAL_SECTOR_Y", 6);
gModSettings.ubHospitalSectorZ = iniReader.ReadInteger("Cambria", "HOSPITAL_SECTOR_Z", 0);
//[San Mona]
gModSettings.usPornShopRoomHans = iniReader.ReadInteger("San Mona", "PORN_SHOP_ROOM_HANS", 49); gModSettings.usPornShopRoomHans = iniReader.ReadInteger("San Mona", "PORN_SHOP_ROOM_HANS", 49);
gModSettings.iHansGridNo = iniReader.ReadInteger("San Mona", "HANS_POSTION", 13523); gModSettings.iHansGridNo = iniReader.ReadInteger("San Mona", "HANS_POSTION", 13523);
gModSettings.usPornShopRoomBrenda = iniReader.ReadInteger("San Mona", "PORN_SHOP_ROOM_BRENDA", 47); gModSettings.usPornShopRoomBrenda = iniReader.ReadInteger("San Mona", "PORN_SHOP_ROOM_BRENDA", 47);
@@ -2389,16 +2417,39 @@ void LoadModSettings(){
gModSettings.ubKingpinMoneySectorY = iniReader.ReadInteger("San Mona", "KINGPIN_MONEY_SECTOR_Y", 4); gModSettings.ubKingpinMoneySectorY = iniReader.ReadInteger("San Mona", "KINGPIN_MONEY_SECTOR_Y", 4);
gModSettings.ubKingpinMoneySectorZ = iniReader.ReadInteger("San Mona", "KINGPIN_MONEY_SECTOR_Z", 1); gModSettings.ubKingpinMoneySectorZ = iniReader.ReadInteger("San Mona", "KINGPIN_MONEY_SECTOR_Z", 1);
gModSettings.ubOmertaDropOffX = iniReader.ReadInteger("Gear Dropoff", "OMERTA_DROPOFF_X", 9); gModSettings.ubJoeyPrimarySectorX = iniReader.ReadInteger("San Mona", "JOEY_PRIMARY_SECTOR_X", 4);
gModSettings.ubOmertaDropOffY = iniReader.ReadInteger("Gear Dropoff", "OMERTA_DROPOFF_Y", 1); gModSettings.ubJoeyPrimarySectorY = iniReader.ReadInteger("San Mona", "JOEY_PRIMARY_SECTOR_Y", 4);
gModSettings.ubOmertaDropOffZ = iniReader.ReadInteger("Gear Dropoff", "OMERTA_DROPOFF_Z", 0); gModSettings.ubJoeyPrimarySectorZ = iniReader.ReadInteger("San Mona", "JOEY_PRIMARY_SECTOR_Z", 1);
gModSettings.iOmertaDropOff = iniReader.ReadInteger("Gear Dropoff", "OMERTA_DROPOFF_GRIDNO", 4868);
gModSettings.sRocketRifleGridNo = iniReader.ReadInteger("Alma", "ROCKETRIFLE_POSITION", 10472); gModSettings.ubJoeyAlternateSectorX = iniReader.ReadInteger("San Mona", "JOEY_ALTERNATE_SECTOR_X", 5);
gModSettings.ubJoeyAlternateSectorY = iniReader.ReadInteger("San Mona", "JOEY_ALTERNATE_SECTOR_Y", 3);
gModSettings.ubJoeyAlternateSectorZ = iniReader.ReadInteger("San Mona", "JOEY_ALTERNATE_SECTOR_Z", 0);
gModSettings.ubHospitalSectorX = iniReader.ReadInteger("Cambria", "HOSPITAL_SECTOR_X", 8); gModSettings.ubSpikeNewSectorX = iniReader.ReadInteger("San Mona", "SPIKE_NEW_SECTOR_X", 5);
gModSettings.ubHospitalSectorY = iniReader.ReadInteger("Cambria", "HOSPITAL_SECTOR_Y", 6); gModSettings.ubSpikeNewSectorY = iniReader.ReadInteger("San Mona", "SPIKE_NEW_SECTOR_Y", 3);
gModSettings.ubHospitalSectorZ = iniReader.ReadInteger("Cambria", "HOSPITAL_SECTOR_Z", 0);
//[Estoni]
//[Orta]
//[Balime]
//[Meduna]
//[Chitzena]
gModSettings.ubWeaponCache1X = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_1_X", 11);
gModSettings.ubWeaponCache1Y = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_1_Y", 5);
gModSettings.ubWeaponCache2X = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_2_X", 5);
gModSettings.ubWeaponCache2Y = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_2_Y", 8);
gModSettings.ubWeaponCache3X = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_3_X", 10);
gModSettings.ubWeaponCache3Y = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_3_Y", 8);
gModSettings.ubWeaponCache4X = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_4_X", 12);
gModSettings.ubWeaponCache4Y = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_4_Y", 10);
gModSettings.ubWeaponCache5X = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_5_X", 9);
gModSettings.ubWeaponCache5Y = iniReader.ReadInteger("Weapon Cache", "WEAPON_CACHE_5_Y", 13);
} }
// silversurfer: load item property modifiers // silversurfer: load item property modifiers
+67 -12
View File
@@ -1693,8 +1693,39 @@ typedef struct
INT32 iFinalCrateGrid; INT32 iFinalCrateGrid;
UINT16 usCrateTileDef; UINT16 usCrateTileDef;
UINT16 usTrapdoorTileDef; UINT16 usTrapdoorTileDef;
//Leave Stuff
UINT8 ubOmertaDropOffX;
UINT8 ubOmertaDropOffY;
UINT8 ubOmertaDropOffZ;
INT32 iOmertaDropOff;
//San Mona C5 //[Omerta]
//[Drassen]
//John & Mary disappear if unescort in sector
UINT8 ubJohnUnescortSectorX;
UINT8 ubJohnUnescortSectorY;
UINT8 ubJohnUnescortSectorZ;
//[Alma]
INT32 sRocketRifleGridNo;
//[Grumm]
//[Tixa]
//Dynamo Prison Sector
UINT8 ubDyanmoPrisonSectorX;
UINT8 ubDyanmoPrisonSectorY;
UINT8 ubDyanmoPrisonSectorZ;
//[Cambria]
//Hospital Sector
UINT8 ubHospitalSectorX;
UINT8 ubHospitalSectorY;
UINT8 ubHospitalSectorZ;
//[San Mona]
//Porn Quest //Porn Quest
UINT16 usPornShopRoomHans; UINT16 usPornShopRoomHans;
INT32 iHansGridNo; INT32 iHansGridNo;
@@ -1719,23 +1750,47 @@ typedef struct
INT32 iBrothelDoor2; INT32 iBrothelDoor2;
INT32 iBrothelDoor3; INT32 iBrothelDoor3;
// Kingpin Private Stash //Kingpin Private Stash
UINT8 ubKingpinMoneySectorX; UINT8 ubKingpinMoneySectorX;
UINT8 ubKingpinMoneySectorY; UINT8 ubKingpinMoneySectorY;
UINT8 ubKingpinMoneySectorZ; UINT8 ubKingpinMoneySectorZ;
//Leave Stuff //Joey Primary Location to be found
UINT8 ubOmertaDropOffX; UINT8 ubJoeyPrimarySectorX;
UINT8 ubOmertaDropOffY; UINT8 ubJoeyPrimarySectorY;
UINT8 ubOmertaDropOffZ; UINT8 ubJoeyPrimarySectorZ;
INT32 iOmertaDropOff;
INT32 sRocketRifleGridNo; //Joey Alternate Location
UINT8 ubJoeyAlternateSectorX;
UINT8 ubJoeyAlternateSectorY;
UINT8 ubJoeyAlternateSectorZ;
//Hospital Sector //Spike new location when assassins are sent
UINT8 ubHospitalSectorX; UINT8 ubSpikeNewSectorX;
UINT8 ubHospitalSectorY; UINT8 ubSpikeNewSectorY;
UINT8 ubHospitalSectorZ;
//[Estoni]
//[Orta]
//[Balime]
//[Meduna]
//[Chitzena]
//Weapon Cache Locations
UINT8 ubWeaponCache1X;
UINT8 ubWeaponCache1Y;
UINT8 ubWeaponCache2X;
UINT8 ubWeaponCache2Y;
UINT8 ubWeaponCache3X;
UINT8 ubWeaponCache3Y;
UINT8 ubWeaponCache4X;
UINT8 ubWeaponCache4Y;
UINT8 ubWeaponCache5X;
UINT8 ubWeaponCache5Y;
}MOD_SETTINGS; }MOD_SETTINGS;
+2 -1
View File
@@ -925,7 +925,8 @@ BOOLEAN CheckFact( UINT16 usFact, UINT8 ubProfileID )
gubFact[usFact] = IsHisMineAtMaxProduction( ubProfileID ); gubFact[usFact] = IsHisMineAtMaxProduction( ubProfileID );
break; break;
case FACT_DYNAMO_IN_J9: case FACT_DYNAMO_IN_J9:
gubFact[usFact] = CheckNPCSector( DYNAMO, 9, MAP_ROW_J, 0 ) && NumEnemiesInAnySector( 9, 10, 0 ); gubFact[usFact] = CheckNPCSector( DYNAMO, gModSettings.ubDyanmoPrisonSectorX, gModSettings.ubDyanmoPrisonSectorY, gModSettings.ubDyanmoPrisonSectorZ ) &&
NumEnemiesInAnySector( gModSettings.ubDyanmoPrisonSectorX, gModSettings.ubDyanmoPrisonSectorY, gModSettings.ubDyanmoPrisonSectorZ ); //( 9, 10, 0 )
break; break;
case FACT_DYNAMO_ALIVE: case FACT_DYNAMO_ALIVE:
gubFact[usFact] = ( gMercProfiles[ DYNAMO ].bMercStatus != MERC_IS_DEAD ); gubFact[usFact] = ( gMercProfiles[ DYNAMO ].bMercStatus != MERC_IS_DEAD );
+10 -10
View File
@@ -1526,7 +1526,7 @@ void InitStrategicAI()
case 1: case 1:
if( ubPicked[0] != ubSector && ubPicked[1] != ubSector ) if( ubPicked[0] != ubSector && ubPicked[1] != ubSector )
{ {
pSector = &SectorInfo[ SEC_E11 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache1X, gModSettings.ubWeaponCache1Y ) ]; //SEC_E11
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
if (ubPicked[0] == 0) if (ubPicked[0] == 0)
@@ -1544,7 +1544,7 @@ void InitStrategicAI()
case 2: case 2:
if( ubPicked[0] != ubSector && ubPicked[1] != ubSector ) if( ubPicked[0] != ubSector && ubPicked[1] != ubSector )
{ {
pSector = &SectorInfo[ SEC_H5 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache2X, gModSettings.ubWeaponCache2Y ) ]; //SEC_H5
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
if (ubPicked[0] == 0) if (ubPicked[0] == 0)
@@ -1562,7 +1562,7 @@ void InitStrategicAI()
case 3: case 3:
if( ubPicked[0] != ubSector && ubPicked[1] != ubSector ) if( ubPicked[0] != ubSector && ubPicked[1] != ubSector )
{ {
pSector = &SectorInfo[ SEC_H10 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache3X, gModSettings.ubWeaponCache3Y ) ]; //SEC_H10
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
if (ubPicked[0] == 0) if (ubPicked[0] == 0)
@@ -1580,7 +1580,7 @@ void InitStrategicAI()
case 4: case 4:
if( ubPicked[0] != ubSector && ubPicked[1] != ubSector ) if( ubPicked[0] != ubSector && ubPicked[1] != ubSector )
{ {
pSector = &SectorInfo[ SEC_J12 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache4X, gModSettings.ubWeaponCache4Y ) ]; //SEC_J12
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
if (ubPicked[0] == 0) if (ubPicked[0] == 0)
@@ -1598,7 +1598,7 @@ void InitStrategicAI()
case 5: case 5:
if( ubPicked[0] != ubSector && ubPicked[1] != ubSector ) if( ubPicked[0] != ubSector && ubPicked[1] != ubSector )
{ {
pSector = &SectorInfo[ SEC_M9 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache5X, gModSettings.ubWeaponCache5Y ) ]; //SEC_M9
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
if (ubPicked[0] == 0) if (ubPicked[0] == 0)
@@ -1622,23 +1622,23 @@ void InitStrategicAI()
} }
else else
{ {
pSector = &SectorInfo[ SEC_E11 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache1X, gModSettings.ubWeaponCache1Y ) ]; //SEC_E11
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
pSector = &SectorInfo[ SEC_H5 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache2X, gModSettings.ubWeaponCache2Y ) ]; //SEC_H5
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
pSector = &SectorInfo[ SEC_H10 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache3X, gModSettings.ubWeaponCache3Y ) ]; //SEC_H10
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
pSector = &SectorInfo[ SEC_J12 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache4X, gModSettings.ubWeaponCache4Y ) ]; //SEC_J12
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
pSector = &SectorInfo[ SEC_M9 ]; pSector = &SectorInfo[ SECTOR( gModSettings.ubWeaponCache5X, gModSettings.ubWeaponCache5Y ) ]; //SEC_M9
pSector->uiFlags |= SF_USE_ALTERNATE_MAP; pSector->uiFlags |= SF_USE_ALTERNATE_MAP;
pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2); pSector->ubNumTroops = (UINT8)(6 + gGameOptions.ubDifficultyLevel * 2);
} }
+9 -9
View File
@@ -714,7 +714,7 @@ void HandleNPCSystemEvent( UINT32 uiEvent )
#else #else
AddEmail( KING_PIN_LETTER, KING_PIN_LETTER_LENGTH, KING_PIN, GetWorldTotalMin(), -1, -1 , TYPE_EMAIL_EMAIL_EDT ); AddEmail( KING_PIN_LETTER, KING_PIN_LETTER_LENGTH, KING_PIN, GetWorldTotalMin(), -1, -1 , TYPE_EMAIL_EMAIL_EDT );
#endif #endif
StartQuest( QUEST_KINGPIN_MONEY, 5, MAP_ROW_D ); StartQuest( QUEST_KINGPIN_MONEY, gMercProfiles[ KINGPIN ].sSectorX, gMercProfiles[ KINGPIN ].sSectorY );
// add event to send terrorists two days from now // add event to send terrorists two days from now
AddFutureDayStrategicEvent( EVENT_SET_BY_NPC_SYSTEM, Random( 120 ), FACT_KINGPIN_KNOWS_MONEY_GONE, 2 ); AddFutureDayStrategicEvent( EVENT_SET_BY_NPC_SYSTEM, Random( 120 ), FACT_KINGPIN_KNOWS_MONEY_GONE, 2 );
} }
@@ -723,8 +723,8 @@ void HandleNPCSystemEvent( UINT32 uiEvent )
// knows money gone, quest is still in progress // knows money gone, quest is still in progress
// event indicates Kingpin can start to send terrorists // event indicates Kingpin can start to send terrorists
SetFactTrue( FACT_KINGPIN_CAN_SEND_ASSASSINS ); SetFactTrue( FACT_KINGPIN_CAN_SEND_ASSASSINS );
gMercProfiles[ SPIKE ].sSectorX = 5; gMercProfiles[ SPIKE ].sSectorX = gModSettings.ubSpikeNewSectorX; //5
gMercProfiles[ SPIKE ].sSectorY = MAP_ROW_C; gMercProfiles[ SPIKE ].sSectorY = gModSettings.ubSpikeNewSectorY; //MAP_ROW_C
gTacticalStatus.fCivGroupHostile[ KINGPIN_CIV_GROUP ] = CIV_GROUP_WILL_BECOME_HOSTILE; gTacticalStatus.fCivGroupHostile[ KINGPIN_CIV_GROUP ] = CIV_GROUP_WILL_BECOME_HOSTILE;
} }
} }
@@ -789,9 +789,9 @@ void HandleNPCSystemEvent( UINT32 uiEvent )
case NPC_ACTION_ADD_JOEY_TO_WORLD: case NPC_ACTION_ADD_JOEY_TO_WORLD:
// If Joey is not dead, escorted, or already delivered // If Joey is not dead, escorted, or already delivered
if ( gMercProfiles[ JOEY ].bMercStatus != MERC_IS_DEAD && !CheckFact( FACT_JOEY_ESCORTED, 0 ) && if ( gMercProfiles[ JOEY ].bMercStatus != MERC_IS_DEAD && !CheckFact( FACT_JOEY_ESCORTED, 0 ) &&
gMercProfiles[ JOEY ].sSectorX == 4 && gMercProfiles[ JOEY ].sSectorX == gModSettings.ubJoeyPrimarySectorX && //4
gMercProfiles[ JOEY ].sSectorY == MAP_ROW_D && gMercProfiles[ JOEY ].sSectorY == gModSettings.ubJoeyPrimarySectorY && //MAP_ROW_D
gMercProfiles[ JOEY ].bSectorZ == 1 ) gMercProfiles[ JOEY ].bSectorZ == gModSettings.ubJoeyPrimarySectorZ ) //1
{ {
SOLDIERTYPE * pJoey; SOLDIERTYPE * pJoey;
@@ -804,9 +804,9 @@ void HandleNPCSystemEvent( UINT32 uiEvent )
else else
{ {
// move Joey from caves to San Mona // move Joey from caves to San Mona
gMercProfiles[ JOEY ].sSectorX = 5; gMercProfiles[ JOEY ].sSectorX = gModSettings.ubJoeyAlternateSectorX; //5
gMercProfiles[ JOEY ].sSectorY = MAP_ROW_C; gMercProfiles[ JOEY ].sSectorY = gModSettings.ubJoeyAlternateSectorY; //MAP_ROW_C
gMercProfiles[ JOEY ].bSectorZ = 0; gMercProfiles[ JOEY ].bSectorZ = gModSettings.ubJoeyAlternateSectorZ; //0
} }
} }
break; break;
+3 -3
View File
@@ -2489,9 +2489,9 @@ void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum
break; break;
case NPC_ACTION_ADD_JOEY_TO_WORLD: case NPC_ACTION_ADD_JOEY_TO_WORLD:
gMercProfiles[ JOEY ].sSectorX = 4; gMercProfiles[ JOEY ].sSectorX = gModSettings.ubJoeyPrimarySectorX; //4
gMercProfiles[ JOEY ].sSectorY = MAP_ROW_D; gMercProfiles[ JOEY ].sSectorY = gModSettings.ubJoeyPrimarySectorY; //MAP_ROW_D
gMercProfiles[ JOEY ].bSectorZ = 1; gMercProfiles[ JOEY ].bSectorZ = gModSettings.ubJoeyPrimarySectorZ; //1
AddFutureDayStrategicEvent( EVENT_SET_BY_NPC_SYSTEM, GetWorldMinutesInDay(), NPC_SYSTEM_EVENT_ACTION_PARAM_BONUS + NPC_ACTION_ADD_JOEY_TO_WORLD, 3 ); AddFutureDayStrategicEvent( EVENT_SET_BY_NPC_SYSTEM, GetWorldMinutesInDay(), NPC_SYSTEM_EVENT_ACTION_PARAM_BONUS + NPC_ACTION_ADD_JOEY_TO_WORLD, 3 );
break; break;
+2 -1
View File
@@ -1992,7 +1992,8 @@ BOOLEAN UnRecruitEPC( UINT8 ubCharNum )
// update sector values to current // update sector values to current
// check to see if this person should disappear from the map after this // check to see if this person should disappear from the map after this
if ( (ubCharNum == JOHN || ubCharNum == MARY) && pSoldier->sSectorX == 13 && pSoldier->sSectorY == MAP_ROW_B && pSoldier->bSectorZ == 0 ) if ( (ubCharNum == JOHN || ubCharNum == MARY) && pSoldier->sSectorX == gModSettings.ubJohnUnescortSectorX &&
pSoldier->sSectorY == gModSettings.ubJohnUnescortSectorY && pSoldier->bSectorZ == gModSettings.ubJohnUnescortSectorZ ) // ( 13, MAP_ROW_B, 0 )
{ {
gMercProfiles[ ubCharNum ].sSectorX = 0; gMercProfiles[ ubCharNum ].sSectorX = 0;
gMercProfiles[ ubCharNum ].sSectorY = 0; gMercProfiles[ ubCharNum ].sSectorY = 0;
+2 -2
View File
@@ -5728,8 +5728,8 @@ STR16 pMessageStrings[] =
// Lock / release mouse in windowed mode (window boundary) // Lock / release mouse in windowed mode (window boundary)
L"鼠标已锁定,鼠标移动范围强制限制在游戏窗口内部区域。", // 104 L"鼠标已锁定,鼠标移动范围强制限制在游戏窗口内部区域。", // 104
L"鼠标已释放,鼠标移动范围不再受限于游戏窗口内部区域。", // 105 L"鼠标已释放,鼠标移动范围不再受限于游戏窗口内部区域。", // 105
L"Mercs will move in formation", // TODO.Translate L"Move in Formation ON", // TODO.Translate
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };
+4 -4
View File
@@ -5736,10 +5736,10 @@ STR16 pMessageStrings[] =
L"Auto%02d.sav", // 102 L"Auto%02d.sav", // 102
L"SaveGame%02d.sav", //103 L"SaveGame%02d.sav", //103
// Lock / release mouse in windowed mode (window boundary) // TODO.Translate // Lock / release mouse in windowed mode (window boundary) // TODO.Translate
L"Locking mouse cursor to stay within window boundary.", // 104 L"Lock mouse cursor within game window boundary.", // 104
L"Releasing mouse cursor to move outside window boundary.", // 105 L"Release mouse cursor from game window boundary.", // 105
L"Mercs will move in formation", // TODO.Translate L"Move in Formation ON", // TODO.Translate
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };
+4 -4
View File
@@ -5726,10 +5726,10 @@ STR16 pMessageStrings[] =
L"Auto%02d.sav", // 102 L"Auto%02d.sav", // 102
L"SaveGame%02d.sav", //103 L"SaveGame%02d.sav", //103
// Lock / release mouse in windowed mode (window boundary) // Lock / release mouse in windowed mode (window boundary)
L"Locking mouse cursor to stay within window boundary.", // 104 L"Lock mouse cursor within game window boundary.", // 104
L"Releasing mouse cursor to move outside window boundary.", // 105 L"Release mouse cursor from game window boundary.", // 105
L"Mercs will move in formation", L"Move in Formation ON",
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };
+2 -2
View File
@@ -5733,8 +5733,8 @@ STR16 pMessageStrings[] =
// Lock / release mouse in windowed mode (window boundary) // TODO.Translate // Lock / release mouse in windowed mode (window boundary) // TODO.Translate
L"Verrouiller le curseur pour qu'il reste dans la fenêtre.", // 104 L"Verrouiller le curseur pour qu'il reste dans la fenêtre.", // 104
L"Libérer le curseur pour qu'il se déplace hors de la fenêtre.", // 105 L"Libérer le curseur pour qu'il se déplace hors de la fenêtre.", // 105
L"Mercs will move in formation", // TODO.Translate L"Move in Formation ON", // TODO.Translate
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };
+2 -2
View File
@@ -5571,8 +5571,8 @@ STR16 pMessageStrings[] =
// Lock / release mouse in windowed mode (window boundary) // Lock / release mouse in windowed mode (window boundary)
L"Mausberech begrenzen, damit Mauscursor innerhalb des Spielfensters bleibt.", // 104 L"Mausberech begrenzen, damit Mauscursor innerhalb des Spielfensters bleibt.", // 104
L"Mausbereich wieder freigeben, um uneingeschränkte Mausbewebung zu erhalten.", // 105 L"Mausbereich wieder freigeben, um uneingeschränkte Mausbewebung zu erhalten.", // 105
L"Mercs will move in formation", // TODO.Translate L"Move in Formation ON", // TODO.Translate
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };
CHAR16 ItemPickupHelpPopup[][40] = CHAR16 ItemPickupHelpPopup[][40] =
+4 -4
View File
@@ -5720,10 +5720,10 @@ STR16 pMessageStrings[] =
L"Auto%02d.sav", // 102 L"Auto%02d.sav", // 102
L"SaveGame%02d.sav", //103 L"SaveGame%02d.sav", //103
// Lock / release mouse in windowed mode (window boundary) // TODO.Translate // Lock / release mouse in windowed mode (window boundary) // TODO.Translate
L"Locking mouse cursor to stay within window boundary.", // 104 L"Lock mouse cursor within game window boundary.", // 104
L"Releasing mouse cursor to move outside window boundary.", // 105 L"Release mouse cursor from game window boundary.", // 105
L"Mercs will move in formation", // TODO.Translate L"Move in Formation ON", // TODO.Translate
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };
+4 -4
View File
@@ -5736,10 +5736,10 @@ STR16 pMessageStrings[] =
L"Auto%02d.sav", // 102 L"Auto%02d.sav", // 102
L"SaveGame%02d.sav", //103 L"SaveGame%02d.sav", //103
// Lock / release mouse in windowed mode (window boundary) // TODO.Translate // Lock / release mouse in windowed mode (window boundary) // TODO.Translate
L"Locking mouse cursor to stay within window boundary.", // 104 L"Lock mouse cursor within game window boundary.", // 104
L"Releasing mouse cursor to move outside window boundary.", // 105 L"Release mouse cursor from game window boundary.", // 105
L"Mercs will move in formation", // TODO.Translate L"Move in Formation ON", // TODO.Translate
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };
+4 -4
View File
@@ -5725,10 +5725,10 @@ STR16 pMessageStrings[] =
L"Auto%02d.sav", // 102 L"Auto%02d.sav", // 102
L"SaveGame%02d.sav", //103 L"SaveGame%02d.sav", //103
// Lock / release mouse in windowed mode (window boundary) // TODO.Translate // Lock / release mouse in windowed mode (window boundary) // TODO.Translate
L"Locking mouse cursor to stay within window boundary.", // 104 L"Lock mouse cursor within game window boundary.", // 104
L"Releasing mouse cursor to move outside window boundary.", // 105 L"Release mouse cursor from game window boundary.", // 105
L"Mercs will move in formation", // TODO.Translate L"Move in Formation ON", // TODO.Translate
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };
+4 -4
View File
@@ -5737,10 +5737,10 @@ STR16 pMessageStrings[] =
L"Auto%02d.sav", // 102 L"Auto%02d.sav", // 102
L"SaveGame%02d.sav", //103 L"SaveGame%02d.sav", //103
// Lock / release mouse in windowed mode (window boundary) // TODO.Translate // Lock / release mouse in windowed mode (window boundary) // TODO.Translate
L"Locking mouse cursor to stay within window boundary.", // 104 L"Lock mouse cursor within game window boundary.", // 104
L"Releasing mouse cursor to move outside window boundary.", // 105 L"Release mouse cursor from game window boundary.", // 105
L"Mercs will move in formation", L"Move in Formation ON",
L"Mercs will gather at destination", L"Move in Formation OFF",
}; };