diff --git a/gamedir/Data-1.13/APBPConstants.ini b/gamedir/Data-1.13/APBPConstants.ini index 18e16d0c8..506c6f3ca 100644 --- a/gamedir/Data-1.13/APBPConstants.ini +++ b/gamedir/Data-1.13/APBPConstants.ini @@ -460,6 +460,11 @@ AP_WATERTAP = 20 ;*********************************************************************** AP_SODAMACHINE = 30 +;*********************************************************************** +;* The APs to take a photo * +;*********************************************************************** +AP_CAMERA = 30 + [BPConstants] ;*********************************************************************** ;* Ratio of breath points to 1 energy (default = 100) * diff --git a/gamedir/Data-1.13/Ja2_Options.INI b/gamedir/Data-1.13/Ja2_Options.INI index eb7b2fba8..ba0be8f49 100644 --- a/gamedir/Data-1.13/Ja2_Options.INI +++ b/gamedir/Data-1.13/Ja2_Options.INI @@ -3417,21 +3417,12 @@ PRISONER_RETURN_TO_ARMY_CHANCE = 50 ; chance that interrogated soldiers decide to join your cause (they will be turned into militia of same or lower quality) PRISONER_DEFECT_CHANCE = 25 -; chance that interrogated soldiers can give info on enemy positions -PRISONER_INFO_BASECHANCE = 25 - -; if they give info, chance that interrogated soldiers can give info on enemy numbers -PRISONER_INFO_NUMBER_CHANCE = 30 - -; if they give info, chance that interrogated soldiers can give info on enemy movement directions -PRISONER_INFO_DIRECTION_CHANCE = 40 +; chance that interrogated soldiers give us intel (see Intel Settings) +PRISONER_INTEL_CHANCE = 25 ; chance that interrogated soldiers get you ransom money PRISONER_RANSOM_CHANCE = 25 -; chance that you get nothing -PRISONER_NOTHING_CHANCE = 25 - ; points needed to interrogate prisoners of specific types. You can see your points on the merc's face in strategic: 145/7 means 145 points, 7 prisoners ; When ordering mercs to interrogate, you can order them to target a specific class of prisoners, they will first interrogate those and then focus on the other types PRISONER_INTERROGATION_POINTS_ADMIN = 30 @@ -3441,15 +3432,6 @@ PRISONER_INTERROGATION_POINTS_OFFICER = 150 PRISONER_INTERROGATION_POINTS_GENERAL = 250 PRISONER_INTERROGATION_POINTS_CIVILIAN = 25 -; if we get interrogate high-value prisoners, there is a chance that we learn about the locations of enemy generals. -; See also Tactical Enemy Role Settings for what generals are -PRISONER_INTERROGATION_ENEMY_GENERAL_CHANCE_ADMIN = 0 -PRISONER_INTERROGATION_ENEMY_GENERAL_CHANCE_REGULAR = 1 -PRISONER_INTERROGATION_ENEMY_GENERAL_CHANCE_ELITE = 10 -PRISONER_INTERROGATION_ENEMY_GENERAL_CHANCE_OFFICER = 60 -PRISONER_INTERROGATION_ENEMY_GENERAL_CHANCE_GENERAL = 90 -PRISONER_INTERROGATION_ENEMY_GENERAL_CHANCE_CIVILIAN = 0 - ;------------------------------------------------------------------------------------------------------------------------------ ; Helicopter Repair ;------------------------------------------------------------------------------------------------------------------------------ @@ -4347,6 +4329,33 @@ MILITIA_RESOURCES_WEAPONMOD_SHOTGUN = 1.0 ;****************************************************************************************************************************** ;****************************************************************************************************************************** +[Intel Settings] + +;------------------------------------------------------------------------------------------------------------------------------ +; The player can acquire and spend the Intel resource. This resource is closely tied to espionage and information brokering. +; The goal is to deepen the game experience by allowing for more espionage/intelligence/reconaissance roleplay. +; +; Intel can be gained in several ways: +; - interactive actions (like reading classified documents in a military base, hacking computers) can give one-time resources. +; see function HandleInteractiveActionResult(...) in Overhead.lua for examples (warning, spoilers!) +; - interrogating prisoners can give us intel, the amount depends on prisoner type +; - mercs can hide in disguise and gather intel in enemy-occupied territory. It is very strongly recommended that any mercs +; attempting to do so have the covert trait. +; - You can take a camera and take photograps of important NPCs or locations of special interest. With luck, you can sell them +; on the R.I.S. website. After a few hours of verification, you will receive a intel reward. +; - Recruiting some NPCs gives you tiny bits of intel. +; +; You can spend intel in several ways: +; - After you've received your first intel, you will receive an email with further tips on this. One will be the link to the +; R.I.S. website. You can buy information on several things (troop presence & movement, enemy VIPs, location of imprisoned mercs...) here. +; - Rumours say that a special trader deals high-tech weaponry exclusively for intel. +;------------------------------------------------------------------------------------------------------------------------------ + +RESOURCE_INTEL = TRUE + +;****************************************************************************************************************************** +;****************************************************************************************************************************** + [Shopkeeper Inventory Settings] ;****************************************************************************************************************************** diff --git a/gamedir/Data-1.13/Scripts/Overhead.lua b/gamedir/Data-1.13/Scripts/Overhead.lua index bd1802d53..ccc0f998d 100644 --- a/gamedir/Data-1.13/Scripts/Overhead.lua +++ b/gamedir/Data-1.13/Scripts/Overhead.lua @@ -9,6 +9,7 @@ Facts = FACT_JOEY_NEAR_MARTHA = 110, FACT_JOHN_ALIVE = 190, FACT_MARY_OR_JOHN_ARRIVED = 192, + FACT_CHALICE_STOLEN = 184, FACT_MARY_ALIVE = 187, FACT_FIRST_ROBOT_DESTROYED = 203, FACT_ROBOT_READY_SECOND_TIME = 205, @@ -596,6 +597,47 @@ ModSpecificActions = MINIGAME_TETRIS = 50, MINIGAME_PONG = 51, -- |||||||||||||||||||||||||||||||||| minigames ||||||||||||||||||||||||||||||||||||| + + -- |||||||||||||||||||||||||||||||||| photo data ||||||||||||||||||||||||||||||||||||| + PHOTO_FLAGS_BEGIN = 60, + + PHOTO_FLAGS_GENERAL = 61, + PHOTO_FLAGS_WARDEN = 62, + PHOTO_FLAGS_ERNEST = 63, + PHOTO_FLAGS_ARMAND = 64, + PHOTO_FLAGS_KINGPIN = 65, + PHOTO_FLAGS_DARREN = 66, + PHOTO_FLAGS_TONY = 67, + PHOTO_FLAGS_JOE = 68, + PHOTO_FLAGS_MADLAB = 69, + PHOTO_FLAGS_MIKE = 70, + PHOTO_FLAGS_DEVIN = 71, + PHOTO_FLAGS_MICKY = 72, + PHOTO_FLAGS_CARMEN = 73, + + PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE = 80, + PHOTO_FLAGS_ALMA_HQ_CONTROLROOM = 81, + PHOTO_FLAGS_ALMA_STORAGE_ROCKETS = 82, + PHOTO_FLAGS_ALMA_PRISON_TORTURE = 83, + PHOTO_FLAGS_TIXA_TORTURE = 84, + PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS = 85, + PHOTO_FLAGS_CREATURE_LVL3 = 86, + PHOTO_FLAGS_ORTA_LABS = 87, + PHOTO_FLAGS_ORTA_STORAGE = 88, + PHOTO_FLAGS_ORTA_MANUFACTURING = 89, + PHOTO_FLAGS_BALIME_MUSEUM = 90, + PHOTO_FLAGS_GRUMM_RADIOACTIVE = 91, + PHOTO_FLAGS_MEDUNA_ARENA = 92, + PHOTO_FLAGS_MEDUNA_BUNKER = 93, + + PHOTO_FLAGS_SAM_DRASSEN = 94, + PHOTO_FLAGS_SAM_CHITZENA = 95, + PHOTO_FLAGS_SAM_CENTRAL = 96, + PHOTO_FLAGS_SAM_MEDUNA = 97, + + PHOTO_FLAGS_END = 100, + -- |||||||||||||||||||||||||||||||||| photo data ||||||||||||||||||||||||||||||||||||| + } -- General defines for various states @@ -808,7 +850,7 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL elseif ( GetModderLUAFact(sLuaactionid) == ActionState.STATE_GAVEREWARD_OK ) then SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "You play a bit of solitaire.") end - -- hint on Dr. Kairns missing + -- hint on MADLAB missing elseif ( sLuaactionid == ModSpecificActions.COMPUTER_ORTA_BASEMENT_CONTROL_CONSOLE_1 ) then if ( GetModderLUAFact(sLuaactionid) == ActionState.STATE_OK ) then SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "TO: ORTA HEAD OF SECURITY") @@ -914,16 +956,14 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Decrypting files") SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Decryption complete") SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Accessing database") - - -- give us info on troop movement - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - - -- if we are really good, more data + + -- give us intel if ( successpts > 50 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 15 ) elseif ( successpts > 20 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 10 ) + else + AddIntel( 5 ) end SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "We were able to learn of enemy movement thanks to the data!") @@ -982,15 +1022,13 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Decryption complete") SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Accessing database") - -- give us info on troop movement - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - - -- if we are really good, more data + -- give us intel if ( successpts > 50 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 15 ) elseif ( successpts > 20 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 10 ) + else + AddIntel( 5 ) end SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "We were able to learn of enemy movement thanks to the data!") @@ -1067,15 +1105,13 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Decryption complete") SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Accessing database") - -- give us info on troop movement - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - - -- if we are really good, more data + -- give us intel if ( successpts > 50 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 15 ) elseif ( successpts > 20 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 10 ) + else + AddIntel( 5 ) end SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "We were able to learn of enemy movement thanks to the data!") @@ -1174,15 +1210,13 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Decryption complete") SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Accessing database") - -- give us info on troop movement - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - - -- if we are really good, more data + -- give us intel if ( successpts > 50 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 15 ) elseif ( successpts > 20 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 10 ) + else + AddIntel( 5 ) end SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "We were able to learn of enemy movement thanks to the data!") @@ -1313,20 +1347,14 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "The computer contains personnel files.") SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "The guard units seem to shift every few weeks.") SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "You are able to deduct several troop movements.") - - -- give us info on troop movement - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - - -- if we are really good, more data + + -- give us intel if ( successpts > 40 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 40 ) elseif ( successpts > 10 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 20 ) + else + AddIntel( 10 ) end SetModderLUAFact(sLuaactionid, ActionState.STATE_GAVEREWARD_OK) @@ -1365,7 +1393,7 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "It seems to be about some kind of new infantry weapon.") SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "You are able to pinpoint the location of the military project lead!") - AddInfo( InfoTypes.INFO_TYPE_VIP) + AddIntel( 50 ) SetModderLUAFact(sLuaactionid, ActionState.STATE_GAVEREWARD_OK) elseif ( GetModderLUAFact(sLuaactionid) == ActionState.STATE_GAVEREWARD_OK ) then @@ -1468,18 +1496,13 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Decryption complete") SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "... Accessing database") - -- give us info on troop movement - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - - -- if we are really good, more data + -- give us intel if ( successpts > 50 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 30 ) elseif ( successpts > 20 ) then - AddInfo( InfoTypes.INFO_TYPE_NORMAL) + AddIntel( 20 ) + else + AddIntel( 15 ) end SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "We were able to learn of enemy movement thanks to the data!") @@ -1579,9 +1602,1137 @@ function HandleInteractiveActionResult(sSectorX, sSectorY, bSectorZ, sGridNo, bL end end + + end --- tpyes of weather +-- states of a photo fact +PhotoFlag = +{ + NONE = 0, + TAKEN = 1, + UPLOADED = 2, + VERIFIED = 3, -- the code only has one value for verification, but we use several ones for different results + VERIFIED_RESULT_2 = 4, +} + +-- In this function we can define what and how many items a intel-based dealer should trade with, and how much an item is worth in intel +-- AddArmsDealerAdditionalIntelData takes 4 arguments: +-- usDealer: shopkeeper this is intended for +-- usItem: number of item +-- sIntelPrice: price of item in intel +-- sOptimalNumber: how many items the trader should have at maximum +function AddArmsDealerAdditionalIntelData() + + -- price is affected by player progress - on higher progress items get cheaper (as they are less useful at that point) + progress = CurrentPlayerProgressPercentage() + ratio = (200 - progress) / 100.0 + + -- black market: + -- guns + AddArmsDealerAdditionalIntelDataItem(68, 337, 10 * ratio, 2) -- Five-Seven + AddArmsDealerAdditionalIntelDataItem(68, 663, 15 * ratio, 1) -- HK G11 PDW + AddArmsDealerAdditionalIntelDataItem(68, 1073, 10 * ratio, 2) -- HK UCP + AddArmsDealerAdditionalIntelDataItem(68, 673, 13 * ratio, 2) -- HK MP7A1 + AddArmsDealerAdditionalIntelDataItem(68, 686, 20 * ratio, 1) -- Metal Storm Surf Zone + AddArmsDealerAdditionalIntelDataItem(68, 1191, 25 * ratio, 1) -- Magpul PDR-D + AddArmsDealerAdditionalIntelDataItem(68, 65, 40 * ratio, 1) -- Auto Rocket Rifle + AddArmsDealerAdditionalIntelDataItem(68, 1334, 27 * ratio, 1) -- AR57 6" Silenced + AddArmsDealerAdditionalIntelDataItem(68, 335, 40 * ratio, 1) -- Barret M82A2 + AddArmsDealerAdditionalIntelDataItem(68, 676, 35 * ratio, 1) -- HL SL9SD + AddArmsDealerAdditionalIntelDataItem(68, 774, 50 * ratio, 1) -- VSSK Vychlop + AddArmsDealerAdditionalIntelDataItem(68, 605, 22 * ratio, 1) -- AICW + AddArmsDealerAdditionalIntelDataItem(68, 748, 22 * ratio, 2) -- XM-29 OICW + AddArmsDealerAdditionalIntelDataItem(68, 752, 20 * ratio, 1) -- XM-8 Sharpshooter + AddArmsDealerAdditionalIntelDataItem(68, 1065, 23 * ratio, 1) -- Steyr AUG-A3 + AddArmsDealerAdditionalIntelDataItem(68, 680, 16 * ratio, 1) -- Jackhammer Mk3A1 + + -- Ammo + AddArmsDealerAdditionalIntelDataItem(68, 1455, 8 * ratio, 2) -- 5.7x28 100 AET + AddArmsDealerAdditionalIntelDataItem(68, 1450, 8 * ratio, 2) -- 4.7x33 100 SAP + AddArmsDealerAdditionalIntelDataItem(68, 1460, 8 * ratio, 2) -- 4.6x30 100 AET + AddArmsDealerAdditionalIntelDataItem(68, 544, 5 * ratio, 2) -- 9mm MS 72 SAP + AddArmsDealerAdditionalIntelDataItem(68, 1518, 10 * ratio, 2) -- 6x35 100 AP + AddArmsDealerAdditionalIntelDataItem(68, 113, 5 * ratio, 5) -- Minirocket 5 HEAP + AddArmsDealerAdditionalIntelDataItem(68, 1738, 10 * ratio, 2) -- Minirocket 5 Cryo + AddArmsDealerAdditionalIntelDataItem(68, 116, 5 * ratio, 4) -- .50 BMG 10 AP + AddArmsDealerAdditionalIntelDataItem(68, 540, 3 * ratio, 4) -- 7.62x37 10 AP + AddArmsDealerAdditionalIntelDataItem(68, 1512, 7 * ratio, 3) -- 12.7x97 Subsonic 15 AP + AddArmsDealerAdditionalIntelDataItem(68, 1520, 10 * ratio, 2) -- 6.8x43 SPC 100 AP + AddArmsDealerAdditionalIntelDataItem(68, 1423, 3 * ratio, 5) -- 12 gauge 25 Flechette + AddArmsDealerAdditionalIntelDataItem(68, 1578, 1 * ratio, 10) -- Darts 1 Neurotoxin + + -- Launchers + AddArmsDealerAdditionalIntelDataItem(68, 908, 20 * ratio, 1) -- XM-25 Grenade Launcher + AddArmsDealerAdditionalIntelDataItem(68, 1736, 40 * ratio, 1) -- Strela-2 + + -- Grenades + AddArmsDealerAdditionalIntelDataItem(68, 957, 4 * ratio, 2) -- 20mm Thermobaric Clip + AddArmsDealerAdditionalIntelDataItem(68, 963, 4 * ratio, 2) -- 25mm Thermobaric Clip + AddArmsDealerAdditionalIntelDataItem(68, 970, 2 * ratio, 5) -- 40mm Thermobaric Grenade + AddArmsDealerAdditionalIntelDataItem(68, 978, 4 * ratio, 5) -- Thermobaric Rocket + AddArmsDealerAdditionalIntelDataItem(68, 987, 4 * ratio, 2) -- 40mm MS Thermobaric Clip + AddArmsDealerAdditionalIntelDataItem(68, 989, 4 * ratio, 2) -- 20mm Napalm Clip + AddArmsDealerAdditionalIntelDataItem(68, 990, 4 * ratio, 2) -- 25mm Napalm Clip + AddArmsDealerAdditionalIntelDataItem(68, 991, 1 * ratio, 5) -- 40mm Napalm Grenade + AddArmsDealerAdditionalIntelDataItem(68, 993, 4 * ratio, 2) -- 40mm MS Napalm Clip + AddArmsDealerAdditionalIntelDataItem(68, 1737, 6 * ratio, 4) -- Strela-2 Missile + + -- Explosives + AddArmsDealerAdditionalIntelDataItem(68, 951, 4 * ratio, 3) -- 60mm Mustard Gas Shell + AddArmsDealerAdditionalIntelDataItem(68, 1523, 3 * ratio, 3) -- M18 Claymore + AddArmsDealerAdditionalIntelDataItem(68, 1735, 3 * ratio, 4) -- TM-62P2 anti-tank Mine + + -- Face items + AddArmsDealerAdditionalIntelDataItem(68, 1025, 20 * ratio, 2) -- NVG Gen IV + + -- Misc + AddArmsDealerAdditionalIntelDataItem(68, 216, 10 * ratio, 3) -- Compound 18 + AddArmsDealerAdditionalIntelDataItem(68, 235, 2 * ratio, 4) -- Regeneration Booster + AddArmsDealerAdditionalIntelDataItem(68, 324, 50 * ratio, 1) -- X-Ray Detector + AddArmsDealerAdditionalIntelDataItem(68, 327, 11 * ratio, 2) -- Tank of gas + AddArmsDealerAdditionalIntelDataItem(68, 592, 3 * ratio, 2) -- Sniper Suppressor + AddArmsDealerAdditionalIntelDataItem(68, 1026, 2 * ratio, 2) -- Trigger Group + AddArmsDealerAdditionalIntelDataItem(68, 1538, 1 * ratio, 5) -- Stim + AddArmsDealerAdditionalIntelDataItem(68, 1744, 7 * ratio, 2) -- Ballistic Shield + +end + +function SetPhotoState( aIndex, aState ) + + if ( (aIndex >= ModSpecificActions.PHOTO_FLAGS_BEGIN) and (aIndex <= ModSpecificActions.PHOTO_FLAGS_END) and (aState >= PhotoFlag.NONE) and (aState <= PhotoFlag.VERIFIED_RESULT_2) ) then + + SetModderLUAFact( aIndex, aState ) + + end +end + +function AddPhotoData( sSectorX, sSectorY, bSectorZ, sGridNo, bLevel, ubPhotographerProfile, room, usTargetProfile ) + + if ( usTargetProfile ~= NO_PROFILE ) then + + if ( usTargetProfile == Profil.GENERAL ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_GENERAL) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the general.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_GENERAL, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.WARDEN ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_WARDEN) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the head warden.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_WARDEN, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.ERNEST ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ERNEST) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the head researcher.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_ERNEST, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.ARMAND ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ARMAND) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Armand.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_ARMAND, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.KINGPIN ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_KINGPIN) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Kingpin.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_KINGPIN, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.DARREN ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_DARREN) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Darren.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_DARREN, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.TONY ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TONY) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Tony.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_TONY, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.JOE ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_JOE) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Joe.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_JOE, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.MADLAB ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MADLAB) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Dr. Kairns.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_MADLAB, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.MIKE ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MIKE) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Mike.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_MIKE, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.DEVIN ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_DEVIN) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Devin.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_DEVIN, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.MICKY ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MICKY) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Micky.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_MICKY, PhotoFlag.TAKEN ) + end + + elseif ( usTargetProfile == Profil.CARMEN ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CARMEN) < PhotoFlag.TAKEN ) then + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of Carmen.") + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_CARMEN, PhotoFlag.TAKEN ) + end + + end + + elseif ( bSectorZ == 0 ) then + + -- Cambria hospital morgue + if ( (sSectorY == SectorY.MAP_ROW_F) and (sSectorX == 8) ) then + + if ((room == 70) or (room == 71) or (room == 72)) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the morgue.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE, PhotoFlag.TAKEN ) + + end + + end + + -- Alma + elseif ( (sSectorY == SectorY.MAP_ROW_H) and (sSectorX == 13) ) then + + if ((room == 12) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the command center.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM, PhotoFlag.TAKEN ) + + end + + end + + elseif ( (sSectorY == SectorY.MAP_ROW_H) and (sSectorX == 14) ) then + + if ((room == 8) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the missile storage.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS, PhotoFlag.TAKEN ) + + end + + end + + elseif ( (sSectorY == SectorY.MAP_ROW_I) and (sSectorX == 13) ) then + + if ((room == 19) or (room == 20) or (room == 21)) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the torture room.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE, PhotoFlag.TAKEN ) + + end + + end + + -- Tixa + elseif ( (sSectorY == SectorY.MAP_ROW_J) and (sSectorX == 9) ) then + + if ((room == 19) or (room == 20) or (room == 21)) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the torture room.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE, PhotoFlag.TAKEN ) + + end + + end + + -- Balime + elseif ( (sSectorY == SectorY.MAP_ROW_L) and (sSectorX == 12) ) then + + if ((room == 37) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the museum's most prized exhibition.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM, PhotoFlag.TAKEN ) + + end + + end + + -- Grumm + elseif ( (sSectorY == SectorY.MAP_ROW_G) and (sSectorX == 2) ) then + + if ((room == 1) or (room == 7) or (room == 8)) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the dangerous materials handled here.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE, PhotoFlag.TAKEN ) + + end + + end + + -- Meduna + elseif ( (sSectorY == SectorY.MAP_ROW_N) and (sSectorX == 5) ) then + + if ((room == 17) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MEDUNA_ARENA) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the royal lodge.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_MEDUNA_ARENA, PhotoFlag.TAKEN ) + + end + + end + + elseif ( (sSectorY == SectorY.MAP_ROW_N) and (sSectorX == 4) ) then + + if ((room == 1) or (room == 2) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the control room.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA, PhotoFlag.TAKEN ) + + end + + end + + -- Drassen SAM + elseif ( (sSectorY == SectorY.MAP_ROW_D) and (sSectorX == 15) ) then + + if ((room == 2) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the control room.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN, PhotoFlag.TAKEN ) + + end + + end + + -- Chitzena SAM + elseif ( (sSectorY == SectorY.MAP_ROW_D) and (sSectorX == 2) ) then + + if ((room == 7) or (room == 8) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the control room.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA, PhotoFlag.TAKEN ) + + end + + end + + -- central SAM + elseif ( (sSectorY == SectorY.MAP_ROW_I) and (sSectorX == 8) ) then + + if ((room == 16) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the control room.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL, PhotoFlag.TAKEN ) + + end + + end + + end + + elseif ( bSectorZ == 1 ) then + + -- Tixa + if ( (sSectorY == SectorY.MAP_ROW_J) and (sSectorX == 9) ) then + + if ((room == 3) or (room == 9) or (room == 10) or (room == 12)) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the inhuman conditions here.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS, PhotoFlag.TAKEN ) + + end + + end + + -- Orta + elseif ( (sSectorY == SectorY.MAP_ROW_K) and (sSectorX == 4) ) then + + if ((room == 13) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the stored and packaged experimental weaponry.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE, PhotoFlag.TAKEN ) + + end + + elseif ((room == 11) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the manufacturing process.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING, PhotoFlag.TAKEN ) + + end + + elseif ((room == 16) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_LABS) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the experiments in the laboratories.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_ORTA_LABS, PhotoFlag.TAKEN ) + + end + + end + + -- Meduna + elseif ( (sSectorY == SectorY.MAP_ROW_P) and (sSectorX == 3) ) then + + if ((room == 24) ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of the bunker control room.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER, PhotoFlag.TAKEN ) + + end + + end + + end + + elseif ( bSectorZ == 3 ) then + + -- only lvl 3 sectors are creature sectors (apart from a secret sector most players will never know of :-) ). So any location will do. + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3) < PhotoFlag.TAKEN ) then + + SetScreenMsg(FontColour.FONT_MCOLOR_DKWHITE, "Took a photo of... whatever THIS is.") + + SetPhotoState( ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3, PhotoFlag.TAKEN ) + + end + + end + +end + +function GetPhotoData( aType ) + + if ( aType == PhotoFlag.TAKEN ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_GENERAL) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_GENERAL, "Positive identification of the commanding officer of the Alma military base.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_WARDEN) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_WARDEN, "We've identified the director of Tixa.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ERNEST) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ERNEST, "We've identified the current head of research in Orta.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ARMAND) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ARMAND, "We've come across a wealthy industrialist in Balime.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_KINGPIN) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_KINGPIN, "We've identified the unofficial leader of San Mona - some kind of crime syndicate leader?") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_DARREN) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_DARREN, "A photo of the possible second in command of the 'Kingpin' crime syndicate.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TONY) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TONY, "Contact with an arms dealer in San Mona has been established.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_JOE) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_JOE, "Visual identification of the queen's personal head of security.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MADLAB) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MADLAB, "We managed to contact the former head researcher of the Orta research lab.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MIKE) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MIKE, "Visual identification of a high-ranking mercenary in the queen's payroll.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_DEVIN) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_DEVIN, "We took a photo of an arms dealer specialising in explosives.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MICKY) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MICKY, "A shady character in a bar mentioned an interest in animal parts.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CARMEN) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CARMEN, "We made the acquaintance of a head hunter.") end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE, "Photos of a filled morgue.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM, "Visuals detailing the control room of the Alma command center.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS, "Images taken in a storage facility show a number of artillery missiles.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE, "Images show a secret torture room in a military prison.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE, "We've documented a dedicated interrogation room in Tixa.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS, "Pictures seem to indicate systematic torture and killings in Tixa.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3, "We've come across some sort of... unknown animals.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_LABS) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_LABS, "Horrific experiments are undertaken in a secret government facility.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE, "Images show a storage room full of experimental weaponry.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING, "A remote facility is involved in the manufacturing of prototype weaponry.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM, "A museum showcases an important artifact.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE, "We have documented drastically unsafe working conditions in Grumm.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MEDUNA_ARENA) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MEDUNA_ARENA, "It seems there is some sort of entertainment arena in Meduna.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER, "We managed to photograph the control room of the royal bunker.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN, "We documented the control center of a surface to air battery near Drassen.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA, "We documented the control center of a surface to air battery near Chitzena.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL, "We documented the control center of a surface to air battery near Cambria.") end + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA) == PhotoFlag.TAKEN ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA, "We documented the control center of a surface to air battery in Meduna.") end + + elseif ( aType == PhotoFlag.VERIFIED ) then + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_GENERAL) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_GENERAL, "General Theo Humphey is a former US officer. He is in charge of the Alma training facility. His intimate knowledge of the military could be valuable.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_GENERAL) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_GENERAL, "General Theo Humphey was a former US officer. He was in charge of the Alma training facility. KIA.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_WARDEN) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_WARDEN, "Christine Woltz commands the Tixa correctional facility. Her knowledge of political prisoners could be a potential information goldmine.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_WARDEN) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_WARDEN, "Christine Woltz commanded the Tixa correctional facility. KIA.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ERNEST) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ERNEST, "Dr. Ernest Poppin is the current head researcher of Orta. He might have knowledge of important interna.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ERNEST) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ERNEST, "Dr. Ernest Poppin was Orta head of research before the lab fell. It is likely classified information was lost with his death.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ARMAND) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ARMAND, "Armand Ricci, board member of Ricci Mining Corp., was identified in Balime. Ricci mining is an important regional player, and rumoured to be heavily invested in Balime as well.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ARMAND) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ARMAND, "A board member of Ricci Mining Corp. was killed under unknwon circumstances. The company quickly issued a statement blaming the rebel uprising for this terrorist attack.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_KINGPIN) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_KINGPIN, "Peter Klauss commands the powerful San Mona crime syndicate. The relation of his ship to Deidranna is not fully understood and should be investigated further.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_KINGPIN) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_KINGPIN, "Peter Klauss led the San Mona syndicate. His death is likely to have shattered the syndicate.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_DARREN) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_DARREN, "Darren Van Haussen is in charge of Kingpin's main club in San Mona. It is likely he is familiar with the syndicate's structure.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_DARREN) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_DARREN, "Mr. Haussen was a high-level subordinate of Kinpin. KIA.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TONY) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TONY, "'Tony' is a well-stocked arms dealer operating in San Mona from behind a front shop. Though initially believed otherwise, he is not part of the 'Kingpin' syndicate. Whether he belongs to some other hitherto unknown organisation is unclear, but likely.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TONY) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TONY, "An international arms dealer operated in San Mona. His death will make it harder for irregular organisations to acquire weaponry.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_JOE) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_JOE, "Joseph Papanus commands the queen's personal forces. What sparse information remains paints the picture of a very violent man. Due to his gambling addiction, it is believed that he could be motivated to seek new employment if significant monetary rewards are offered.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_JOE) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_JOE, "Joseph Papanus was head of royal security. KIA.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MADLAB) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MADLAB, "Dr. Nathaniel Kairns was head researcher of Orta until he deserted. His motivation remains unclear, but he is likely to posess useful intel and skills.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MADLAB) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MADLAB, "Once the project lead of Orta, Dr. Nathaniel Kairns could have been a valuable source of intel.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MIKE) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MIKE, "The former AIM mercenary 'Mike' has been identified as part of an elite division. This is a clear indicator that the army has stepped employment of outside forces significantly. It will likely lead to some consternation among parts of the mercenary world, AIM in particular.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MIKE) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MIKE, "A veteran AIM member, 'Mike' was a high-ranking mercenary in royal services. His death will have deprived the army of one of their most competent officers.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_DEVIN) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_DEVIN, "Devin Connell is more than just an arms dealer. Data reconciliation with MI5 revealed that he was linked to MI5 in some capacity. The exact details are disclosed, but his current business conduct might give some insight. It is possible he may also freelance as a mercenary from time to time.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_DEVIN) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_DEVIN, "Devin Connell was an arms dealer specialising in explosives. Rumours about a possible IRA connection could not be established or rejected.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MICKY) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MICKY, "The notorious arms dealer Micky O'Brien has been in the business for decades. He has switched to trading the rare animals parts of protected species for south-east asia buyers.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MICKY) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MICKY, "After decades of trading arms, Micky O'Brien finally ran out of luck in Arulco.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CARMEN) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CARMEN, "Carmen Dancio is a bounty hunter. He is currently in Arulco on the hunt for several targets on Interpol's 'Most Wanted' list. He is rather unscrupulous in achieving his targets.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CARMEN) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CARMEN, "A seasoned bounty hunter, Carmen Dancio, was killed before further contact could be established.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE, "Several images taken detail a morgue in a local hospital. The often borderline excessive wounds on the deceased concur with a widespread campaign of indiscriminate killings..") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE, "Several images taken detail a morgue in a local hospital. The often borderline excessive wounds on the deceased concur with a widespread campaign of indiscriminate killings. As the hospital was no longer under rebel control when the images were taken, goverment accountability is in question.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM, "High-definition photos of the army headquarter command center still have to be investigated painstakingly, but should deliver a wealth of information to analysts.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM, "High-definition pictures of the army headquarter command center in alma are available. The usefulness is put into question, however, as the rebels have already taken the facility.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS, "An army storage depot in Alma houses a number of rockets. This could possibly lead to identification of as-of-yet unknown artillery pieces the army might possess.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS, "An army storage depot in Alma houses a number of rockets. The regime denies responsibility and blames the rebels, who indeed control the depot, for subverting an arms embargo.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE, "Rebels obtained images of a dedicated torture room in a military prison. This gives further credence to claims of widespread human rights abuses in the country.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE, "Rebels claim images show a dedicated torture room in a military prison. As the facility is under their control, the culpability of the regime is put into question by outside parties.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE, "Dissidents claim that torture is so regular in a notorious prison that the regime has set up dedicated rooms for it. Images taken in secret paint a chilling picture indeed.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE, "Dissidents claim that torture is so regular in a notorious prison that the regime has set up dedicated rooms for it. The regime denies this and states that this 'is an obvious set-up by a terrorist gane no-one in their right mind would believe'.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS, "The images coming to us from a secret section of a remote prison are hard to stomach, even for veteran analysts. The limited material dissidents managed to smuggle outside reveals both malicious, wanton destruction and ignorance of even bare lip-service to human decency.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS, "Rebel photographers documented serious human rights abuses of staggering magnitude in a government prison. Regime sympathizers deny these allegations and point out that any loss of life is soley to blame on the rebels, who recently took the facility after fierce fighting.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3, "Scientists are baffled by images showing large, insect-like creatures from the caves of Arulco. Once the fighting has dies down, an expedition will want to research this.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3, "Scientists are baffled by images showing large, insect-like creatures from the caves of Arulco. As the rebels claim to have eradicated them, this is likely some kind of obscure hoax.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_LABS) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_LABS, "Images smuggled out of laboratory at an undisclosed location show bizarre images involving prisoners, giant cats and huge amounts of irradiated goo. Frankly, we're out of our depth here, but this is probably not good.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_LABS) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_LABS, "After taking a laboratory in fierce fighting, rebels leaked images, claiming there were experiments done involving live humans, large predatory cats and 'radioactive stuff'. We're honestly not sure how to proceed.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE, "Estimates of the regime's strength will likely have to be revised, as images clearly show huge numbers of some sort of missile-based assault rifle in storage.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE, "Dissidents claim a former government storage depot contained huge numbers of missile-based weaponry. As the facility is no longer under government control, this cannot be fully verfified.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING, "According to recent leaks, an underground facility is involved in the creation of experimental weapon systems. The exact nature of said systems has yet to be disclosed, but seems missile-based.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING, "A formerly regime-controlled facility was involved in weapons manufacturing, according to rebel sources. This is put into doubt by the fact that rebels might have altered the facility after taking it.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM, "Arulco's most important artifact, the Chalice of Chance, is on display in Balime. Dissidents protest against the sacrilege of removing it from the ruins of Chitzena in the first place.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM, "Arulco's most important artifact, the Chalice of Chance, was recently stolen from the Balime museum. The current whereabouts are unknown, this represents yet another loss for arulcan culture.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE, "Leaked images show clearly unsafe working conditions in the industrial city of Grumm. Irradiated equipment is used by workers without any sort of protection.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE, "Leaked images show clearly unsafe working conditions in the industrial city of Grumm. The regime denies any culpability and puts the blame soley on the rebels, who currently administer the region.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MEDUNA_ARENA) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MEDUNA_ARENA, "In a bizarre twist, leaked photography from Meduna shows a small arena, fit for roman-style entertainment, including a luxurious lodge for the queen herself. This lavish display is in stark contrast with the often impoverished population.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER, "In a daring operation, rebels were able to obtain images of the command room of the queen's personal bunker. The paranoid security system prominently includes an active mine field.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER, "Before it was taken by the rebels, the queen's personal bunker control room housed elaborate security systems, including a mine field.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN, "Images leaked to us show details of a surface to air missile battery near Drassen. It can only be controlled via a command console, making that an obvious weakpoint.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN, "Rebels detailed the control center of a recently occupied anti-air installation in the north-east. It can be presumed that other installations use similar hardware.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA, "Images leaked to us show details of a surface to air missile battery near chitzena. The immediate placement at the coast is an obvious weakpoint, especially considering the lack of marine forces.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA, "Rebels detailed the control center of a recently occupied anti-air installation in the north-west. It can be presumed that other installations use similar hardware.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL, "Images leaked to us show details of a surface to air missile battery in the center of the country. While the placement of this installation yields overlapping air coverage on much of the country's airspace, this leaves the south-east of the country without any air coverage.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL, "The central anti-air installation was recently taken by rebels after fierce fighting. Apart from the sizeable garrison, it included mine-fields and internal gas deployment systems.") + end + + if ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA) == PhotoFlag.VERIFIED ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA, "Images leaked to us show details of a heavily guarded surface to air missile battery in Meduna. It can only be controlled via a command console, making that an obvious weakpoint. It is unknown whether the different batteries are somehow linked to each other.") + elseif ( GetModderLUAFact(ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA) == PhotoFlag.VERIFIED_RESULT_2 ) then SetPhotoFactLaptopData(aType, ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA, "The anti-air battery in Meduna itself has fallen to the rebels. It is unknown whether there are any loyalist aircraft left against whom this could be used.") + end + + end + +end + +function VerifyPhotoState(aIndex) + + if ( (aIndex >= ModSpecificActions.PHOTO_FLAGS_BEGIN) and (aIndex <= ModSpecificActions.PHOTO_FLAGS_END) and (GetModderLUAFact(aIndex) == PhotoFlag.UPLOADED) ) then + + if (aIndex == ModSpecificActions.PHOTO_FLAGS_GENERAL) then + + if ( MercIsDead(Profil.GENERAL) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 15 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying General Theo Humphey. Amount lowered due to death.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 30 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying General Theo Humphey.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_WARDEN) then + + if ( MercIsDead(Profil.WARDEN) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 7 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Christine Woltz. Amount lowered due to death.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 15 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Christine Woltz.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_ERNEST) then + + if ( MercIsDead(Profil.ERNEST) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 15 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Dr. Ernest Poppin. Amount lowered due to death.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 30 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Dr. Ernest Poppin.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_ARMAND) then + + if ( MercIsDead(Profil.ARMAND) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Armand Ricci. Amount lowered due to death.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Armand Ricci.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_KINGPIN) then + + if ( MercIsDead(Profil.KINGPIN) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Peter Klauss. Amount lowered, as his organisation is effectively destroyed.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 25 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Peter Klauss.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_DARREN) then + + if ( MercIsDead(Profil.DARREN) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 3 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Darren Van Haussen. Amount lowered as his death rendered the information obsolete.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Darren Van Haussen.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_TONY) then + + if ( MercIsDead(Profil.TONY) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 12 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Tony. Amount lowered due to death.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Tony.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_JOE) then + + if ( MercIsDead(Profil.JOE) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 4 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Joseph Papanus. Amount lowered as his death rendered the information obsolete.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 15 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Joseph Papanus.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_MADLAB) then + + if ( MercIsDead(Profil.MADLAB) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Dr. Nathaniel Kairns. Amount lowered as his death removed a valuable source of intel.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 35 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Dr. Nathaniel Kairns.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_MIKE) then + + if ( MercIsDead(Profil.MIKE) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 5 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Mike. Amount lowered as his death rendered the information obsolete.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Mike.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_DEVIN) then + + if ( MercIsDead(Profil.DEVIN) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 15 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Devin Connell. Amount lowered as his death lowers possible interest from disclosed organisations.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Devin.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_MICKY) then + + if ( MercIsDead(Profil.MICKY) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 4 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Micky O'Brien. Amount lowered as his death rendered the information obsolete.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 15 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Micky O'Brien.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_CARMEN) then + + if ( MercIsDead(Profil.CARMEN) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 4 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Carmen Dancio. Amount lowered as his death rendered the information obsolete.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for identifying Carmen Dancio.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_CAMBRIA_HOSPITAL_MORGUE) then + + if ( GetNumHostilesInSector(8, SectorY.MAP_ROW_F, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 14 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the conditions in Cambria hospital.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 7 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the conditions in Cambria hospital. Amount lowered as sector is no longer government-controlled, culpability for any crimes no longer undeniable.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_ALMA_HQ_CONTROLROOM) then + + if ( GetNumHostilesInSector(13, SectorY.MAP_ROW_H, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the Alma military headquarter.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the Alma military headquarter. Amount lowered as informatino is now outdated due to the ousting of regime troops.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_ALMA_STORAGE_ROCKETS) then + + if ( GetNumHostilesInSector(14, SectorY.MAP_ROW_H, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the contents of a military depot in Alma.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the contents of a military depot in Alma. Amount lowered as information is now outdated due to the ousting of regime troops.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_ALMA_PRISON_TORTURE) then + + if ( GetNumHostilesInSector(13, SectorY.MAP_ROW_I, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting torture in a military prison.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 8 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting torture in a military prison. Amount lowered as sector is no longer government-controlled, culpability for any crimes no longer undeniable.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE) then + + if ( GetNumHostilesInSector(9, SectorY.MAP_ROW_J, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting torture in a prison.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 8 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting torture in a prison. Amount lowered as sector is no longer government-controlled, culpability for any crimes no longer undeniable.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_TIXA_TORTURE_DOWNSTAIRS) then + + if ( GetNumHostilesInSector(9, SectorY.MAP_ROW_J, 1) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 25 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting torture in a prison.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting torture in a prison. Amount lowered as sector is no longer government-controlled, culpability for any crimes no longer undeniable.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_CREATURE_LVL3) then + + if ( CheckQuest(Quests.QUEST_CREATURES) == pQuest.QUESTDONE ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 15 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting a nest of unknown creatures. Amount lowered as they have all been eradicated, making research impossible.") + + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 40 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting a nest of unknown creatures.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_ORTA_LABS) then + + if ( GetNumHostilesInSector(9, SectorY.MAP_ROW_J, 1) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 15 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting bizarre experiments in secret lab.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting bizarre experiments in secret lab. Amount lowered as sector is no longer government-controlled, culpability for any crimes no longer undeniable.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_ORTA_STORAGE) then + + if ( GetNumHostilesInSector(9, SectorY.MAP_ROW_J, 1) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 12 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for recording huge amounts of weaponry in army storage.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 4 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for recording huge amounts of weaponry in army storage. Amount lowered as sector is no longer government-controlled, culpability for any crimes no longer undeniable.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_ORTA_MANUFACTURING) then + + if ( GetNumHostilesInSector(9, SectorY.MAP_ROW_J, 1) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 14 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting a weapons manufacturing line.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 6 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting a weapons manufacturing line. Amount lowered as sector is no longer government-controlled, culpability for any crimes no longer undeniable.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_BALIME_MUSEUM) then + + if ( CheckFact( Facts.FACT_CHALICE_STOLEN, 0 ) == true ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 7 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for confirming a valuable artifact was in Balime. Amount lowered as its whereabouts are no longer known.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 20 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for confirming a valuable artifact is in Balime.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_GRUMM_RADIOACTIVE) then + + if ( GetNumHostilesInSector(2, SectorY.MAP_ROW_G, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 10 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting unsafe working conditions in Grumm.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 4 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting unsafe working conditions in Grumm. Amount lowered as sector is no longer government-controlled, culpability for any crimes no longer undeniable.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_MEDUNA_ARENA) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 9 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the existence of a private arena for the queen's entertainment.") + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_MEDUNA_BUNKER) then + + if ( GetNumHostilesInSector(3, SectorY.MAP_ROW_P, 1) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 30 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the layout of the royal bunker.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 8 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the layout of the royal bunker. Amount lowered as this is no longer relevant to the war effort.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_SAM_DRASSEN) then + + if ( GetNumHostilesInSector(15, SectorY.MAP_ROW_D, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 12 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the hard- and software of an anti-air installation near Drassen.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 6 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the hard- and software of an anti-air installation near Drassen. Amount lowered as sector is no longer government-controlled and thus the information is outdated.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_SAM_CHITZENA) then + + if ( GetNumHostilesInSector(2, SectorY.MAP_ROW_D, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 12 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the hard- and software of an anti-air installation near Chitzena.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 6 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the hard- and software of an anti-air installation near Chitzena. Amount lowered as sector is no longer government-controlled and thus the information is outdated.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_SAM_CENTRAL) then + + if ( GetNumHostilesInSector(2, SectorY.MAP_ROW_D, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 14 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the hard- and software of an anti-air installation near Cambria.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 7 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the hard- and software of an anti-air installation near Cambria. Amount lowered as sector is no longer government-controlled and thus the information is outdated.") + + end + + elseif (aIndex == ModSpecificActions.PHOTO_FLAGS_SAM_MEDUNA) then + + if ( GetNumHostilesInSector(4, SectorY.MAP_ROW_N, 0) ) then + + SetPhotoState( aIndex, PhotoFlag.VERIFIED ) + AddIntel( 16 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the hard- and software of an anti-air installation in Meduna.") + + else + + SetPhotoState( aIndex, PhotoFlag.VERIFIED_RESULT_2 ) + AddIntel( 8 ) + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "Received RIS compensation for documenting the hard- and software of an anti-air installation in Meduna. Amount lowered as sector is no longer government-controlled and thus the information is outdated.") + + end + + end + + end + +end + +-- types of weather Weather = { WEATHER_FORECAST_NORMAL = 0, @@ -1602,10 +2753,13 @@ Skill = SKILLS_RADIO_CALLREINFORCEMENTS = 4, SKILLS_RADIO_TURNOFF = 5, + SKILLS_INTEL_CONCEAL = 6, + SKILLS_INTEL_GATHERINTEL = 7, + -- various - SKILLS_SPOTTER = 6, - SKILLS_FOCUS = 7, - SKILLS_DRAG = 8, + SKILLS_SPOTTER = 8, + SKILLS_FOCUS = 9, + SKILLS_DRAG = 10, }; -- different dialogue action events diff --git a/gamedir/Data-1.13/Scripts/strategicmap.lua b/gamedir/Data-1.13/Scripts/strategicmap.lua index 62695160e..54a9738c7 100644 --- a/gamedir/Data-1.13/Scripts/strategicmap.lua +++ b/gamedir/Data-1.13/Scripts/strategicmap.lua @@ -177,6 +177,9 @@ Profil = MADLAB = 146, ROBOT = 62, MIGUEL = 57, + CARLOS = 58, + IRA = 59, + DIMITRI = 60, KYLE = 95, } @@ -201,6 +204,7 @@ CivGroup = FACTORY_GROUP = 31, ADMINISTRATIVE_STAFF_GROUP = 32, LOYAL_CIV_GROUP = 33, + BLACKMARKET_GROUP = 34, } Bodytype = @@ -387,7 +391,7 @@ function HandleSectorLiberation( sNewSectorX, sNewSectorY, bNewSectorZ, fFirstTi -- inform us that there is a sublevel if ( (GetModderLUAFact(ModSpecificFacts.TIXA_PRISON_SUBLEVEL_VOLUNTEERSGAINED) == 0) ) then - SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "This prison seems to have a sublevel, where more important inamtes are held.") + SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "This prison seems to have a sublevel, where more important inmates are held.") end -- if we haven't yet freed the Alma prisoners, give us a tip about that @@ -395,6 +399,8 @@ function HandleSectorLiberation( sNewSectorX, sNewSectorY, bNewSectorZ, fFirstTi SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "A few inmates inform us that there is another prison like this in Alma!") end + AddIntel( 5 ) + SetModderLUAFact(ModSpecificFacts.TIXA_PRISON_VOLUNTEERSGAINED, 1) -- Alma @@ -408,6 +414,8 @@ function HandleSectorLiberation( sNewSectorX, sNewSectorY, bNewSectorZ, fFirstTi SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "A few inmates inform us that there is another prison like this in a place called Tixa. They aren't sure where it is though.") end + AddIntel( 5 ) + SetModderLUAFact(ModSpecificFacts.ALMA_PRISON_VOLUNTEERSGAINED, 1) end end @@ -421,6 +429,8 @@ function HandleSectorLiberation( sNewSectorX, sNewSectorY, bNewSectorZ, fFirstTi SetScreenMsg(FontColour.FONT_MCOLOR_LTGREEN, "The prisoners are very grateful for freeing them.") + AddIntel( 5 ) + SetModderLUAFact(ModSpecificFacts.TIXA_PRISON_SUBLEVEL_VOLUNTEERSGAINED, 1) end end @@ -429,9 +439,18 @@ end -- this function is called whenever we recruit a RPC function RecruitRPCAdditionalHandling( usProfile ) - -- if Miguel joins us, the rest of the rebels joins us too + -- as the rebels join us, we gradually get more volunteers if ( usProfile == Profil.MIGUEL ) then - AddVolunteers( 10 ) + AddVolunteers( 4 ) + AddIntel( 10 ) + elseif ( usProfile == Profil.CARLOS ) then + AddVolunteers( 2 ) + elseif ( usProfile == Profil.DIMITRI ) then + AddVolunteers( 2 ) + AddIntel( 2 ) + elseif ( usProfile == Profil.IRA ) then + AddVolunteers( 2 ) + AddIntel( 5 ) end end @@ -698,6 +717,20 @@ function HandleSectorTacticalEntry( sSectorX, sSectorY, bSectorZ, fHasEverBeenPl -- hunting store CreateCivilian(11098, CivGroup.KINGPIN_CIV_GROUP, 62, Bodytype.REGMALE, Vest.BROWNVEST, Pants.GREENPANTS, -1, -1, 763, 135, 288, 284) end + + -- if we haven't pissed of the black market, spawn dealer + if ( CheckCivGroupHostile(CivGroup.BLACKMARKET_GROUP) == false ) then + + -- unlock the door so we can enter + ACTION_ITEM_UNLOCK_DOOR(12834) + + -- black market dealer and bodyguards + CreateCivilian(12992, CivGroup.BLACKMARKET_GROUP, 68, Bodytype.MANCIV, Vest.GREYVEST, Pants.JEANPANTS, Hair.WHITEHEAD, Skin.BLACKSKIN, 337, 264, -1, -1) + CreateArmedCivilain(CivGroup.BLACKMARKET_GROUP, SoldierClass.SOLDIER_CLASS_ELITE, 12672, 0) + CreateArmedCivilain(CivGroup.BLACKMARKET_GROUP, SoldierClass.SOLDIER_CLASS_ELITE, 13312, 0) + CreateArmedCivilain(CivGroup.BLACKMARKET_GROUP, SoldierClass.SOLDIER_CLASS_ELITE, 12995, 0) + end + elseif ( sSectorX == 5 and sSectorY == SectorY.MAP_ROW_C) then -- only add merchants if Kingpin is alive and not hostile towards us if ( (CheckFact( Facts.FACT_KINGPIN_DEAD, 0 ) == false) and @@ -712,6 +745,7 @@ function HandleSectorTacticalEntry( sSectorX, sSectorY, bSectorZ, fHasEverBeenPl -- wine store CreateCivilian(10804, CivGroup.KINGPIN_CIV_GROUP, 59, Bodytype.REGFEMALE, -1, -1, -1, -1, 340, 107, 302, 284) end + -- Chitzena -- Meduna elseif ( sSectorX == 4 and sSectorY == SectorY.MAP_ROW_O) then diff --git a/gamedir/Data-1.13/TableData/CivGroupNames.xml b/gamedir/Data-1.13/TableData/CivGroupNames.xml index 6105d3790..77cafa5a4 100644 --- a/gamedir/Data-1.13/TableData/CivGroupNames.xml +++ b/gamedir/Data-1.13/TableData/CivGroupNames.xml @@ -262,12 +262,14 @@ 1 0 + 34 - 0 - Empty Slot34 - 0 + 1 + Black Market + 1 0 + 0 35 diff --git a/gamedir/Data-1.13/TableData/Inventory/MercStartingGear.xml b/gamedir/Data-1.13/TableData/Inventory/MercStartingGear.xml index c4adfcdae..0ce13a5e0 100644 --- a/gamedir/Data-1.13/TableData/Inventory/MercStartingGear.xml +++ b/gamedir/Data-1.13/TableData/Inventory/MercStartingGear.xml @@ -24787,7 +24787,7 @@ 86 77 100 - 2 + 4 0 0 0 @@ -24842,40 +24842,29 @@ 86 77 100 - 2 + 4 201 99 - 1 1627 98 - 1 1628 - 100 - 1 1090 - 84 1200 - 88 -1 3 86 71 - 100 3 + 201 99 - 1 1627 98 - 1 214 - 100 - 1 + 1751 1090 - 84 1091 - 88 -1 @@ -24888,16 +24877,11 @@ 3 201 99 - 1 1627 98 - 1 1090 - 84 1204 - 90 1092 - 88 -1 @@ -24910,22 +24894,14 @@ 3 201 99 - 1 210 90 - 1 1627 98 - 1 1628 - 100 - 1 1090 - 84 1204 - 90 1092 - 88 diff --git a/gamedir/Data-1.13/TableData/Items/Items.xml b/gamedir/Data-1.13/TableData/Items/Items.xml index d4225d6f5..0f19a1d17 100644 --- a/gamedir/Data-1.13/TableData/Items/Items.xml +++ b/gamedir/Data-1.13/TableData/Items/Items.xml @@ -7767,6 +7767,7 @@ 1 1 1 + 8 100.0 @@ -52033,4 +52034,32 @@ + + 1751 + Camera + Camera + You can use this camera to document the highlights of your holidays. Or whatever else you want documented. + Camera + Use this simple to use camera to take pictures of all the funny shenanigans/gruesome atrocities you come across during your holidays/tour of duty. Whatever works. + 268435456 + 1 + 8 + 1 + 903 + 8 + 4 + 16 + 200 + 2 + 1 + 1 + 1 + 1 + 1 + 3 + 100.0 + + + + \ No newline at end of file diff --git a/gamedir/Data-1.13/TableData/Map/SectorNames.xml b/gamedir/Data-1.13/TableData/Map/SectorNames.xml index d44838035..9994a79ba 100644 --- a/gamedir/Data-1.13/TableData/Map/SectorNames.xml +++ b/gamedir/Data-1.13/TableData/Map/SectorNames.xml @@ -160,7 +160,6 @@ Omerta 0 150 - 2 4 50 0 @@ -173,7 +172,6 @@ Omerta 0 150 - 2 30 50 0 @@ -1089,7 +1087,6 @@ Cambria 1 100 - 1 100 40 0 @@ -1192,7 +1189,7 @@ Grumm 3 100 - 2 + 1 150 50 0 @@ -1382,7 +1379,6 @@ Grumm 3 100 - 1 200 55 0 @@ -1395,7 +1391,6 @@ Grumm Mine 3 150 - 1 200 50 0 @@ -1456,7 +1451,6 @@ Cambria Mine 0 130 - 1 200 35 2 @@ -2341,7 +2335,7 @@ Coastal, road 2 140 - 2 + 1 80 0 @@ -2353,7 +2347,7 @@ Swamp, road 3 450 - 2 + 1 90 0 50 @@ -2380,7 +2374,7 @@ Forest, road 0 160 - 2 + 1 50 0 @@ -2392,7 +2386,7 @@ Forest, road 0 160 - 2 + 1 50 0 @@ -2538,7 +2532,6 @@ Meduna Airport 1 100 - 1 2 100 60 @@ -2552,7 +2545,7 @@ Meduna, SAM Site 1 100 - 2 + 1 2 50 60 @@ -2566,7 +2559,7 @@ Meduna 1 100 - 2 + 1 100 50 0 @@ -2579,7 +2572,7 @@ Tropical, road 0 250 - 2 + 1 70 0 @@ -2738,7 +2731,6 @@ Meduna 1 100 - 1 300 50 0 diff --git a/gamedir/Data-1.13/TableData/MercProfiles.xml b/gamedir/Data-1.13/TableData/MercProfiles.xml index e7cfa91f8..a714bddb0 100644 --- a/gamedir/Data-1.13/TableData/MercProfiles.xml +++ b/gamedir/Data-1.13/TableData/MercProfiles.xml @@ -200,7 +200,7 @@ 1 Barry Unger Barry - 0 + 0 0 10 8 @@ -297,7 +297,7 @@ 1 Keith "Blood" Hanson Blood - 1 + 1 1 9 9 @@ -393,7 +393,7 @@ 1 Rudy "Lynx-Eyed" Roberts Lynx - 2 + 2 2 7 6 @@ -489,7 +489,7 @@ 1 Steve "Grizzly" Bornell Grizzly - 3 + 3 3 8 9 @@ -585,7 +585,7 @@ 1 Victoria Waters Vicki - 4 + 4 4 2 9 @@ -681,7 +681,7 @@ 1 Trevor Colby Trevor - 5 + 5 5 10 8 @@ -777,7 +777,7 @@ 1 Helmut Grunther Grunty - 6 + 6 6 8 8 @@ -873,7 +873,7 @@ 1 Ivan Dolvich Ivan - 7 + 7 7 6 9 @@ -969,7 +969,7 @@ 1 Bobby "Steroid" Gontarski Steroid - 8 + 8 8 7 9 @@ -1065,7 +1065,7 @@ 1 Igor Dolvich Igor - 9 + 9 9 8 8 @@ -1161,7 +1161,7 @@ 1 Kyle "Shadow" Simmons Shadow - 10 + 10 10 4 10 @@ -1257,7 +1257,7 @@ 1 Ernie "Red" Spragg Red - 11 + 11 11 9 9 @@ -1353,7 +1353,7 @@ 1 Carl "Reaper" Sheppards Reaper - 12 + 12 12 3 9 @@ -1449,7 +1449,7 @@ 1 Fidel Dahan Fidel - 13 + 13 13 8 9 @@ -1545,7 +1545,7 @@ 1 Cynthia "Fox" Guzzman Fox - 14 + 14 14 9 9 @@ -1641,7 +1641,7 @@ 1 Sidney Nettleson Sidney - 15 + 15 15 11 8 @@ -1737,7 +1737,7 @@ 1 Gus Tarballs Gus - 16 + 16 16 8 4 @@ -1833,7 +1833,7 @@ 1 Monica "Buns" Sondergaard Buns - 17 + 17 17 12 10 @@ -1929,7 +1929,7 @@ 1 Ice Williams Ice - 18 + 18 18 10 10 @@ -2025,7 +2025,7 @@ 1 Dr. Donna "Spider" Houston Spider - 19 + 19 19 12 11 @@ -2121,7 +2121,7 @@ 1 Dr. Clifford Highball Cliff - 20 + 20 20 9 8 @@ -2217,7 +2217,7 @@ 1 John "Bull" Peters Bull - 21 + 21 21 3 8 @@ -2313,7 +2313,7 @@ 1 Frank "Hitman" Hennessy Hitman - 22 + 22 22 7 9 @@ -2409,7 +2409,7 @@ 1 Louisa "Buzz" Garneau Buzz - 23 + 23 23 5 11 @@ -2506,7 +2506,7 @@ 1 Ron "Raider" Higgens Raider - 24 + 24 24 6 11 @@ -2602,7 +2602,7 @@ 1 Charlene "Raven" Higgens Raven - 25 + 25 25 8 11 @@ -2698,7 +2698,7 @@ 1 Kirk "Static" Stevenson Static - 26 + 26 26 9 11 @@ -2794,7 +2794,7 @@ 1 Corp. Len Anderson Len - 27 + 27 27 8 7 @@ -2890,7 +2890,7 @@ 1 Dr. Daniel Quinten Danny - 28 + 28 28 7 11 @@ -2986,7 +2986,7 @@ 1 Earl "Magic" Walker Magic - 29 + 29 29 6 12 @@ -3082,7 +3082,7 @@ 1 Stephen Rothman Stephen - 30 + 30 30 8 12 @@ -3178,7 +3178,7 @@ 1 Robert James Sullivan Scully - 31 + 31 31 9 11 @@ -3274,7 +3274,7 @@ 1 J.P. "La Malice" Viau Malice - 32 + 32 32 8 10 @@ -3370,7 +3370,7 @@ 1 Dr. Q. Huaong Dr. Q - 33 + 33 33 8 12 @@ -3467,7 +3467,7 @@ 1 Edgar "Nails" Smorth Nails - 34 + 34 34 7 11 @@ -3563,7 +3563,7 @@ 1 Thor Kaufman Thor - 35 + 35 35 7 6 @@ -3659,7 +3659,7 @@ 1 Sheila "Scope" Sterling Scope - 36 + 36 36 8 11 @@ -3755,7 +3755,7 @@ 1 Peter "Wolf" Sanderson Wolf - 37 + 37 37 8 10 @@ -3851,7 +3851,7 @@ 1 Dr. Michael Dawson MD - 38 + 38 38 8 9 @@ -3947,7 +3947,7 @@ 1 Norma "Meltdown" Jessop Meltdown - 39 + 39 39 8 10 @@ -4043,7 +4043,7 @@ 2 Biff Apscott Biff - 40 + 40 40 8 8 @@ -4139,7 +4139,7 @@ 2 Frankie "Haywire" Gordon Haywire - 41 + 41 41 8 9 @@ -4235,7 +4235,7 @@ 2 Doug "Gasket" Milton Gasket - 42 + 42 42 9 6 @@ -4331,7 +4331,7 @@ 2 Bill "Razor" Lamont Razor - 43 + 43 43 8 6 @@ -4427,7 +4427,7 @@ 2 Florence Gabriel Flo - 44 + 44 44 9 7 @@ -4523,7 +4523,7 @@ 2 Tim "Gumpy" Hillman Gumpy - 45 + 45 45 12 9 @@ -4619,7 +4619,7 @@ 2 Larry Roachburn Larry - 46 + 46 46 5 7 @@ -4715,7 +4715,7 @@ 2 Larry Roachburn Larry - 47 + 47 47 5 6 @@ -4811,7 +4811,7 @@ 2 Jim "Cougar" Wallace Cougar - 48 + 48 48 8 8 @@ -4907,7 +4907,7 @@ 2 Tim "Numb" Sutton Numb - 49 + 49 49 7 8 @@ -5003,7 +5003,7 @@ 2 Thorton "Bubba" Jones Bubba - 50 + 50 50 5 3 @@ -5099,7 +5099,7 @@ 6 PGmale1 - 51 + 51 51 0 0 @@ -5195,7 +5195,7 @@ 6 PGmale2 - 52 + 52 52 0 0 @@ -5291,7 +5291,7 @@ 6 PGmale3 - 53 + 53 53 0 0 @@ -5387,7 +5387,7 @@ 6 PGLady1 - 54 + 54 54 0 0 @@ -5483,7 +5483,7 @@ 6 PGLady2 - 55 + 55 55 0 0 @@ -5579,7 +5579,7 @@ 6 PGLady3 - 56 + 56 56 0 0 @@ -5675,7 +5675,7 @@ 3 Miguel Cordona Miguel - 57 + 57 57 22 33 @@ -5771,7 +5771,7 @@ 3 Carlos Dasouza Carlos - 58 + 58 58 22 30 @@ -5867,7 +5867,7 @@ 3 Ira Smythe Ira - 59 + 59 59 21 31 @@ -5963,7 +5963,7 @@ 3 Dimitri Guzzo Dimitri - 60 + 60 60 20 30 @@ -6059,7 +6059,7 @@ 3 Devin Connell Devin - 61 + 61 61 14 32 @@ -6155,7 +6155,7 @@ 3 Madlab's Robot Robot - 62 + 62 62 0 0 @@ -6251,7 +6251,7 @@ 3 Hamous Hamous - 63 + 63 63 21 30 @@ -6347,7 +6347,7 @@ 3 Slay Terry - 64 + 64 64 22 32 @@ -6443,7 +6443,7 @@ 3 Eskimo - Removed RPC65 - 65 + 65 65 28 30 @@ -6539,7 +6539,7 @@ 3 Greg "Dynamo" Duncan Dynamo - 66 + 66 66 21 29 @@ -6635,7 +6635,7 @@ 3 Breeham "Shank" Druz Shank - 67 + 67 67 25 32 @@ -6731,7 +6731,7 @@ 3 Igmus "Iggy" Palkov Iggy - 68 + 68 68 17 31 @@ -6827,7 +6827,7 @@ 3 Dr. Vincent Beaumont Vince - 69 + 69 69 21 32 @@ -6923,7 +6923,7 @@ 3 Lt. Conrad Gillitt Conrad - 70 + 70 70 13 31 @@ -7019,7 +7019,7 @@ 5 Combat Jeep C. Jeep - 71 + 71 71 0 0 @@ -7115,7 +7115,7 @@ 3 Kevin "Maddog" Cameron Maddog - 72 + 72 72 21 29 @@ -7211,7 +7211,7 @@ 3 Darrel Jr. Darrel - 73 + 73 73 22 27 @@ -7307,7 +7307,7 @@ 3 Alish Perkopoulos Perko - 74 + 74 74 22 29 @@ -7403,7 +7403,7 @@ 4 Queen Deidranna Deidranna - 75 + 75 75 20 32 @@ -7499,7 +7499,7 @@ 4 Auntie Auntie - 76 + 76 76 22 30 @@ -7595,7 +7595,7 @@ 4 Enrico Chivaldori Enrico - 77 + 77 77 15 32 @@ -7691,7 +7691,7 @@ 4 Carmen Dancio Carmen - 78 + 78 78 21 31 @@ -7787,7 +7787,7 @@ 4 Joseph Papanus Joe - 79 + 79 79 23 33 @@ -7883,7 +7883,7 @@ 4 Dr. Steven Willis Steve - 80 + 80 80 21 32 @@ -7979,7 +7979,7 @@ 4 Ricardo "Rat" Grimaldo Rat - 81 + 81 81 18 32 @@ -8075,7 +8075,7 @@ 4 MoM Annie - 82 + 82 82 21 32 @@ -8171,7 +8171,7 @@ 4 Imposter Chris - 83 + 83 83 21 30 @@ -8267,7 +8267,7 @@ 4 Bob Bob - 84 + 84 84 21 32 @@ -8363,7 +8363,7 @@ 4 Brenda Drake Brenda - 85 + 85 85 24 32 @@ -8459,7 +8459,7 @@ 4 Peter "Kingpin" Klauss Kingpin - 86 + 86 86 24 31 @@ -8555,7 +8555,7 @@ 4 Darren Van Haussen Darren - 87 + 87 87 26 33 @@ -8651,7 +8651,7 @@ 4 Maria DaSilva Maria - 88 + 88 88 19 32 @@ -8747,7 +8747,7 @@ 4 Angel Dasilva Angel - 89 + 89 89 30 31 @@ -8843,7 +8843,7 @@ 4 Joey Graham Joey - 90 + 90 90 22 32 @@ -8939,7 +8939,7 @@ 4 Tony Tony - 91 + 91 91 21 31 @@ -9035,7 +9035,7 @@ 4 Frank Frank - 92 + 92 92 14 32 @@ -9131,7 +9131,7 @@ 4 Spike Spike - 93 + 93 93 21 31 @@ -9227,7 +9227,7 @@ 4 Damon Warrick Damon - 94 + 94 94 31 32 @@ -9323,7 +9323,7 @@ 4 Kyle Lemmons Kyle - 95 + 95 95 21 33 @@ -9419,7 +9419,7 @@ 4 Micky O'Brien Micky - 96 + 96 96 20 32 @@ -9515,7 +9515,7 @@ 4 James "Skyrider" Bullock Skyrider - 97 + 97 97 28 31 @@ -9611,7 +9611,7 @@ 4 Pablo Greco Pablo - 98 + 98 98 19 32 @@ -9707,7 +9707,7 @@ 4 Salvatore Lappus Sal - 99 + 99 99 26 28 @@ -9803,7 +9803,7 @@ 4 Father John Walker Father - 100 + 100 100 28 32 @@ -9899,7 +9899,7 @@ 4 Fatima Fatima - 101 + 101 101 21 30 @@ -9995,7 +9995,7 @@ 4 Christine Woltz Warden - 102 + 102 102 22 34 @@ -10091,7 +10091,7 @@ 4 Gordon Jefferies Gordon - 103 + 103 103 21 29 @@ -10187,7 +10187,7 @@ 4 Gary "Gabby" Mulnick Gabby - 104 + 104 104 22 31 @@ -10283,7 +10283,7 @@ 4 Dr. Ernest Poppin Ernest - 105 + 105 105 26 32 @@ -10379,7 +10379,7 @@ 4 Fred Morris Fred - 106 + 106 106 24 33 @@ -10475,7 +10475,7 @@ 4 Madame Layla Madame - 107 + 107 107 18 27 @@ -10571,7 +10571,7 @@ 4 Yanni Nomigotta Yanni - 108 + 108 108 24 31 @@ -10667,7 +10667,7 @@ 4 Martha Graham Martha - 109 + 109 109 34 32 @@ -10763,7 +10763,7 @@ 4 Tiffany Joe - 110 + 110 110 28 30 @@ -10859,7 +10859,7 @@ 4 T-Rex Jasmin - 111 + 111 111 16 32 @@ -10955,7 +10955,7 @@ 4 Druggist Charlie - 112 + 112 112 21 32 @@ -11051,7 +11051,7 @@ 4 Jake Cameron Jake - 113 + 113 113 22 29 @@ -11147,7 +11147,7 @@ 4 Pacos Pacos - 114 + 114 114 22 32 @@ -11243,7 +11243,7 @@ 4 Dave Gerard Dave - 115 + 115 115 25 31 @@ -11339,7 +11339,7 @@ 4 Skipper Skipper - 116 + 116 116 21 30 @@ -11435,7 +11435,7 @@ 4 Hans Vanderkilt Hans - 117 + 117 117 14 30 @@ -11531,7 +11531,7 @@ 4 John Kulba John - 118 + 118 118 19 30 @@ -11627,7 +11627,7 @@ 4 Mary Kulba Mary - 119 + 119 119 26 31 @@ -11723,7 +11723,7 @@ 4 General Theo Humphey General - 120 + 120 120 22 28 @@ -11819,7 +11819,7 @@ 4 Sergeant Krott Sergeant - 121 + 121 121 22 29 @@ -11915,7 +11915,7 @@ 4 Armand Ricci Armand - 122 + 122 122 22 28 @@ -12011,7 +12011,7 @@ 4 Lora Ricci Lora - 123 + 123 123 24 33 @@ -12107,7 +12107,7 @@ 4 Franz Hinkle Franz - 124 + 124 124 23 30 @@ -12203,7 +12203,7 @@ 4 Howard Filmore Howard - 125 + 125 125 20 31 @@ -12299,7 +12299,7 @@ 4 Sam Rozen Sam - 126 + 126 126 22 32 @@ -12395,7 +12395,7 @@ 4 Eldin Fiddes Eldin - 127 + 127 127 18 29 @@ -12491,7 +12491,7 @@ 4 Arnold Brunzwell Arnie - 128 + 128 128 24 30 @@ -12587,7 +12587,7 @@ 4 Tina Elzan Tina - 129 + 129 129 21 28 @@ -12683,7 +12683,7 @@ 4 Alexander Fredo Fredo - 130 + 130 130 17 31 @@ -12779,7 +12779,7 @@ 4 Walter Bazzon Walter - 131 + 131 131 21 30 @@ -12875,7 +12875,7 @@ 4 Jenny Walden Jenny - 132 + 132 132 21 32 @@ -12971,7 +12971,7 @@ 4 Billy GoonBall Billy - 133 + 133 133 22 24 @@ -13067,7 +13067,7 @@ 4 Brewster Woltz Brewster - 134 + 134 134 21 31 @@ -13163,7 +13163,7 @@ 4 Messenger of bad news Elliot - 135 + 135 135 22 29 @@ -13259,7 +13259,7 @@ 4 Part of crowd for end game Derek - 136 + 136 136 22 27 @@ -13355,7 +13355,7 @@ 4 Part of endgame crowd Oliver - 137 + 137 137 22 31 @@ -13451,7 +13451,7 @@ 4 Waldo Zimmer Waldo - 138 + 138 138 21 32 @@ -13547,7 +13547,7 @@ 4 Doreen Harrows Doreen - 139 + 139 139 22 33 @@ -13643,7 +13643,7 @@ 4 Jim Perry Jim - 140 + 140 140 14 25 @@ -13739,7 +13739,7 @@ 4 Jack Remington Jack - 141 + 141 141 24 25 @@ -13835,7 +13835,7 @@ 4 Olaf Helinski Olaf - 142 + 142 142 29 28 @@ -13931,7 +13931,7 @@ 4 Ray Baker Ray - 143 + 143 143 24 28 @@ -14027,7 +14027,7 @@ 4 Olga Statova Olga - 144 + 144 144 28 28 @@ -14123,7 +14123,7 @@ 4 Tyrone Banks Tyrone - 145 + 145 145 22 27 @@ -14219,7 +14219,7 @@ 4 Dr. Nathaniel "MadLab" Kairns MadLab - 146 + 146 146 21 32 @@ -14315,7 +14315,7 @@ 4 Keith Hemps Keith - 147 + 147 147 22 28 @@ -14411,7 +14411,7 @@ 4 Matt Duncan Matt - 148 + 148 148 21 26 @@ -14507,7 +14507,7 @@ 3 Mike Mike - 149 + 149 149 19 31 @@ -14603,7 +14603,7 @@ 4 Daryl Hick Daryl - 150 + 150 150 21 21 @@ -14699,7 +14699,7 @@ 4 Herve Santos Herve - 151 + 151 151 24 28 @@ -14795,7 +14795,7 @@ 4 Peter Santos Peter - 152 + 152 152 24 28 @@ -14891,7 +14891,7 @@ 4 Alberto Santos Alberto - 153 + 153 153 24 28 @@ -14987,7 +14987,7 @@ 4 Carlo Santos Carlo - 154 + 154 154 24 28 @@ -15083,7 +15083,7 @@ 4 Manny Santos Manny - 155 + 155 155 23 30 @@ -15179,7 +15179,7 @@ 4 Oswald Johnston Oswald - 156 + 156 156 15 24 @@ -15275,7 +15275,7 @@ 4 Calvin Barkmore Calvin - 157 + 157 157 29 19 @@ -15371,7 +15371,7 @@ 4 Carl Tercel Carl - 158 + 158 158 22 31 @@ -15467,7 +15467,7 @@ 4 Speck... - 159 + 159 159 8 9 @@ -15563,7 +15563,7 @@ 5 Hummer Hummer - 160 + 160 160 0 0 @@ -15659,7 +15659,7 @@ 5 El Dorado El Dorado - 161 + 161 161 0 0 @@ -15755,7 +15755,7 @@ 5 Ice Cream Truck Truck - 162 + 162 162 0 0 @@ -15851,7 +15851,7 @@ 5 Heli Heli - 163 + 163 163 0 0 @@ -15947,7 +15947,7 @@ 5 Tank Tank - 164 + 164 164 0 0 @@ -16043,7 +16043,7 @@ 2 Gaston Cavalier Gaston - 165 + 165 165 13 5 @@ -16139,7 +16139,7 @@ 2 Lt. "Stogie" Horge Stogie - 166 + 166 166 9 4 @@ -16235,7 +16235,7 @@ 2 Tex Colburn Tex - 167 + 167 167 3 6 @@ -16331,7 +16331,7 @@ 2 Col. Frederick Biggins Biggins - 168 + 168 168 5 6 @@ -16427,7 +16427,7 @@ 6 PGmale4 - 169 + 169 169 0 0 @@ -16523,7 +16523,7 @@ 1 Victor "Monk" Kolesnikov Monk - 170 + 170 170 7 7 @@ -16619,7 +16619,7 @@ 1 Janno "Brain" Allik Brain - 171 + 171 171 7 7 @@ -16715,7 +16715,7 @@ 1 Lennart "Scream" Vilde Scream - 172 + 172 172 7 7 @@ -16811,7 +16811,7 @@ 1 Henning von Branitz Henning - 173 + 173 173 7 7 @@ -16907,7 +16907,7 @@ 1 Luc Fabre Lucky - 174 + 174 174 7 7 @@ -17003,7 +17003,7 @@ 1 Dr. Laura Colin Laura - 175 + 175 175 7 7 @@ -17099,7 +17099,7 @@ 1 Graziella "Grace" Girelli Grace - 176 + 176 176 7 7 @@ -17195,7 +17195,7 @@ 1 Rudolf Steiger Rudolf - 177 + 177 177 7 7 @@ -17291,7 +17291,7 @@ 2 Gregory "Spooky" Block Spooky - 178 + 178 178 14 14 @@ -17387,7 +17387,7 @@ 2 Bruce "Skitz" Bonner Skitz - 179 + 179 179 8 5 @@ -17483,7 +17483,7 @@ 2 Willy "Weasel" Augustin Weasel - 180 + 180 180 7 5 @@ -17579,7 +17579,7 @@ 2 Carl "It" Goodman It - 181 + 181 181 8 3 @@ -17675,7 +17675,7 @@ 2 Dr. Bernie Gloveless Bernie - 182 + 182 182 6 2 @@ -17771,7 +17771,7 @@ 2 Murray "Pops" McGillicutty Pops - 183 + 183 183 7 6 @@ -17867,7 +17867,7 @@ 2 Walter Yuntz Wally - 184 + 184 184 8 6 @@ -17963,7 +17963,7 @@ 2 Dr. Eli Summers Eli - 185 + 185 185 10 4 @@ -18059,7 +18059,7 @@ 1 Dr. Mitch Shudlem Mitch - 186 + 186 186 9 8 @@ -18155,7 +18155,7 @@ 1 Howard "Carp" Melfield Carp - 187 + 187 187 9 7 @@ -18251,7 +18251,7 @@ 2 Lance Fisher Lance - 188 + 188 188 8 7 @@ -18347,7 +18347,7 @@ 2 Dr. Raffitto "Raffi" Leevon Raffi - 189 + 189 189 8 7 @@ -18385,7 +18385,7 @@ 0 0 0 - 0 + 20 0 0 247 @@ -18443,7 +18443,7 @@ 2 Wink E. Dickerson Wink - 190 + 190 190 9 6 @@ -18539,7 +18539,7 @@ 2 Speck T. Kline Speck - 191 + 191 191 8 9 @@ -18635,7 +18635,7 @@ 6 PGmale5 - 192 + 192 192 0 0 @@ -18730,7 +18730,7 @@ 6 PGmale6 - 193 + 193 193 0 0 @@ -18825,7 +18825,7 @@ 6 PGmale7 - 194 + 194 194 0 0 @@ -18920,7 +18920,7 @@ 2 John Kulba John - 195 + 195 195 6 4 @@ -19016,7 +19016,7 @@ 2 Elio Elio - 196 + 196 196 12 7 @@ -19112,7 +19112,7 @@ 2 Juan Juan - 197 + 197 197 5 6 @@ -19208,7 +19208,7 @@ 2 Wahan Wahan - 198 + 198 198 8 6 @@ -19304,7 +19304,7 @@ 5 Jeep Jeep - 199 + 199 199 0 0 @@ -19399,7 +19399,7 @@ 0 - 200 + 200 200 0 0 @@ -19494,7 +19494,7 @@ 0 - 201 + 201 201 0 0 @@ -19589,7 +19589,7 @@ 0 - 202 + 202 202 0 0 @@ -19684,7 +19684,7 @@ 0 - 203 + 203 203 0 0 @@ -19779,7 +19779,7 @@ 0 - 204 + 204 204 0 0 @@ -19874,7 +19874,7 @@ 0 - 205 + 205 205 0 0 @@ -19969,7 +19969,7 @@ 0 - 206 + 206 206 0 0 @@ -20064,7 +20064,7 @@ 0 - 207 + 207 207 0 0 @@ -20159,7 +20159,7 @@ 0 - 208 + 208 208 0 0 @@ -20254,7 +20254,7 @@ 0 - 209 + 209 209 0 0 @@ -20349,7 +20349,7 @@ 0 - 210 + 210 210 0 0 @@ -20444,7 +20444,7 @@ 0 - 211 + 211 211 0 0 @@ -20539,7 +20539,7 @@ 0 - 212 + 212 212 0 0 @@ -20634,7 +20634,7 @@ 0 - 213 + 213 213 0 0 @@ -20729,7 +20729,7 @@ 0 - 214 + 214 214 0 0 @@ -20824,7 +20824,7 @@ 0 - 215 + 215 215 0 0 @@ -20919,7 +20919,7 @@ 0 - 216 + 216 216 0 0 @@ -21014,7 +21014,7 @@ 0 - 217 + 217 217 0 0 @@ -21109,7 +21109,7 @@ 0 - 218 + 218 218 0 0 @@ -21204,7 +21204,7 @@ 0 - 219 + 219 219 0 0 @@ -21299,7 +21299,7 @@ 2 Jack "Postie" Durham Postie - 220 + 220 220 10 8 @@ -21395,7 +21395,7 @@ 2 Unusually Ruthless Reuban Reuban - 221 + 221 221 7 7 @@ -21491,7 +21491,7 @@ 2 Col. Leon Roachburn Leon - 222 + 222 222 8 9 @@ -21588,7 +21588,7 @@ 1 Gary Roachburn Gary - 223 + 223 223 8 10 @@ -21685,7 +21685,7 @@ 2 Megan "Sparky" Roachburn Sparky - 224 + 224 224 7 9 @@ -21781,7 +21781,7 @@ 2 Mary Beth Wilkens Beth - 225 + 225 225 9 9 @@ -21877,7 +21877,7 @@ 2 Samuel Garver Sam - 226 + 226 226 3 7 @@ -21973,7 +21973,7 @@ 2 Hurl E. Cutter Hurl - 227 + 227 227 6 8 @@ -22069,7 +22069,7 @@ 1 Dr. Ahmad "Doc" Koolhan Doc - 228 + 228 228 4 7 @@ -22165,7 +22165,7 @@ 3 Manuel Rivas Manuel - 229 + 229 229 32 26 @@ -22261,7 +22261,7 @@ 1 Glen "Boss" Hatchet Boss - 230 + 230 230 7 9 @@ -22357,7 +22357,7 @@ 1 Johnny "Snake" Edwards Snake - 231 + 231 231 8 11 @@ -22453,7 +22453,7 @@ 1 Alan "Spam" Webster Spam - 232 + 232 232 7 9 @@ -22549,7 +22549,7 @@ 1 Maj. Spike Scallion Spike - 233 + 233 233 8 9 @@ -22645,7 +22645,7 @@ 1 Jimmy Upton Jimmy - 234 + 234 234 5 9 @@ -22741,7 +22741,7 @@ 1 Timothy "Leech" Jenkins Leech - 235 + 235 235 8 8 @@ -22837,7 +22837,7 @@ 1 Capt. Bob Adams Bob - 236 + 236 236 8 8 @@ -22933,7 +22933,7 @@ 1 Col. Leo Kelly Kelly - 237 + 237 237 8 8 @@ -23029,7 +23029,7 @@ 1 Vincenzo Massimo Vinny - 238 + 238 238 8 8 @@ -23125,7 +23125,7 @@ 1 Marty "Kaboom" Moffat Kaboom - 239 + 239 239 8 9 @@ -23221,7 +23221,7 @@ 1 Lt. Bud Hellar Bud - 240 + 240 240 8 8 @@ -23317,7 +23317,7 @@ 1 Russel Hunter Rusty - 241 + 241 241 8 9 @@ -23413,7 +23413,7 @@ 1 Dr. Mark "Needle" Kranhuim Needle - 242 + 242 242 8 10 @@ -23509,7 +23509,7 @@ 1 Patrick "Screw" Phillips Screw - 243 + 243 243 9 9 @@ -23605,7 +23605,7 @@ 2 Elroy B. Tolken Elroy - 244 + 244 244 8 8 @@ -23701,7 +23701,7 @@ 1 Anita "Mouse" Backman Mouse - 245 + 245 245 8 11 @@ -23741,7 +23741,7 @@ 0 20 14 - 0 + 20 248 255 255 @@ -23797,7 +23797,7 @@ 1 Hector Alvarez Hector - 246 + 246 246 8 7 @@ -23893,7 +23893,7 @@ 2 Reverend Clyde Potter Rev - 247 + 247 247 8 7 @@ -23989,7 +23989,7 @@ 1 Dr. Margaret "Stella" Trammel Stella - 248 + 248 248 7 6 @@ -24085,7 +24085,7 @@ 2 Edward "Ears" Stockwell Ears - 249 + 249 249 7 4 @@ -24181,7 +24181,7 @@ 1 Murray "Moses" Ebstern Moses - 250 + 250 250 9 4 @@ -24277,7 +24277,7 @@ 1 Lesley "Smoke" Petersen Smoke - 251 + 251 251 7 9 @@ -24373,7 +24373,7 @@ 2 Roger "Dyno" Wittman Dyno - 252 + 252 252 8 7 @@ -24469,7 +24469,7 @@ 2 Herman "Turtle" Regents Turtle - 253 + 253 253 8 7 @@ -24565,7 +24565,7 @@ 0 - 254 + 254 254 0 0 diff --git a/gamedir/Data-1.13/TableData/NPCInventory/AdditionalDealer_49_Inventory.xml b/gamedir/Data-1.13/TableData/NPCInventory/AdditionalDealer_49_Inventory.xml index 65086d169..e6f3f7ec8 100644 --- a/gamedir/Data-1.13/TableData/NPCInventory/AdditionalDealer_49_Inventory.xml +++ b/gamedir/Data-1.13/TableData/NPCInventory/AdditionalDealer_49_Inventory.xml @@ -1,5 +1,6 @@  + 0 0 diff --git a/gamedir/Data-1.13/TableData/NPCInventory/Merchants.xml b/gamedir/Data-1.13/TableData/NPCInventory/Merchants.xml index 8d9ac28f3..1e2d4c85c 100644 --- a/gamedir/Data-1.13/TableData/NPCInventory/Merchants.xml +++ b/gamedir/Data-1.13/TableData/NPCInventory/Merchants.xml @@ -1632,4 +1632,26 @@ uiFlags must be of 0 0 + + 68 + Black Market dealer San Mona (C6) + 1.0 + 1.0 + 200 + 1 + 400 + 16777216 + 400 + 800 + 400 + 1 + 10 + 10 + 100 + 1 + 2 + 0 + 1 + 0 + \ No newline at end of file diff --git a/gamedir/Data/NPCData/civ78.edt b/gamedir/Data/NPCData/civ78.edt index 65521df06..b24741db6 100644 Binary files a/gamedir/Data/NPCData/civ78.edt and b/gamedir/Data/NPCData/civ78.edt differ diff --git a/gamedir/Data/NPCData/civ79.edt b/gamedir/Data/NPCData/civ79.edt index 65521df06..95f556f97 100644 Binary files a/gamedir/Data/NPCData/civ79.edt and b/gamedir/Data/NPCData/civ79.edt differ