New modifiers for enemy item quality in Ja2_Options.ini:

ADMIN_EQUIPMENT_QUALITY_MODIFIER = 0
REGULAR_EQUIPMENT_QUALITY_MODIFIER = 0
ELITE_EQUIPMENT_QUALITY_MODIFIER = 0

These modifiers work just like the existing ones for militia.


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6535 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
silversurfer
2013-10-27 09:04:57 +00:00
parent b23be615b9
commit 6e98818e16
3 changed files with 24 additions and 1 deletions
+6 -1
View File
@@ -1040,7 +1040,12 @@ void LoadGameExternalOptions()
gGameExternalOptions.sEnemyRegularCtHBonusPercent = iniReader.ReadInteger("Tactical Difficulty Settings", "REGULAR_CTH_BONUS_PERCENT", 0, -100, 500);
gGameExternalOptions.sEnemyEliteCtHBonusPercent = iniReader.ReadInteger("Tactical Difficulty Settings", "ELITE_CTH_BONUS_PERCENT", 10, -100, 500);
// Damage the enemz suffer is reduced by this percentage - applies during tactical combat only
// Enemy equipment quality modifiers
gGameExternalOptions.sEnemyAdminEquipmentQualityModifier = iniReader.ReadInteger("Tactical Difficulty Settings", "ADMIN_EQUIPMENT_QUALITY_MODIFIER", 0, -5, 10);
gGameExternalOptions.sEnemyRegularEquipmentQualityModifier = iniReader.ReadInteger("Tactical Difficulty Settings", "REGULAR_EQUIPMENT_QUALITY_MODIFIER", 0, -5, 10);
gGameExternalOptions.sEnemyEliteEquipmentQualityModifier = iniReader.ReadInteger("Tactical Difficulty Settings", "ELITE_EQUIPMENT_QUALITY_MODIFIER", 0, -5, 10);
// Damage the enemy suffer is reduced by this percentage - applies during tactical combat only
gGameExternalOptions.sEnemyAdminDamageResistance = iniReader.ReadInteger("Tactical Difficulty Settings", "ADMIN_DAMAGE_RESISTANCE", 0, -50, 95);
gGameExternalOptions.sEnemyRegularDamageResistance = iniReader.ReadInteger("Tactical Difficulty Settings", "REGULAR_DAMAGE_RESISTANCE", 0, -50, 95);
gGameExternalOptions.sEnemyEliteDamageResistance = iniReader.ReadInteger("Tactical Difficulty Settings", "ELITE_DAMAGE_RESISTANCE", 0, -50, 95);
+4
View File
@@ -329,6 +329,10 @@ typedef struct
INT16 sEnemyRegularCtHBonusPercent;
INT16 sEnemyEliteCtHBonusPercent;
INT8 sEnemyAdminEquipmentQualityModifier;
INT8 sEnemyRegularEquipmentQualityModifier;
INT8 sEnemyEliteEquipmentQualityModifier;
INT8 sEnemyAdminDamageResistance;
INT8 sEnemyRegularDamageResistance;
INT8 sEnemyEliteDamageResistance;
+14
View File
@@ -343,6 +343,10 @@ void GenerateRandomEquipment( SOLDIERCREATE_STRUCT *pp, INT8 bSoldierClass, INT8
//else
bRating = BAD_ADMINISTRATOR_EQUIPMENT_RATING + bEquipmentModifier;
// Equipment quality modifier
if ( gGameExternalOptions.sEnemyAdminEquipmentQualityModifier != 0 )
bRating += gGameExternalOptions.sEnemyAdminEquipmentQualityModifier;
bRating = (INT8)max( MIN_EQUIPMENT_CLASS, min( MAX_EQUIPMENT_CLASS, bRating ) );
bWeaponClass = bRating;
@@ -438,6 +442,11 @@ void GenerateRandomEquipment( SOLDIERCREATE_STRUCT *pp, INT8 bSoldierClass, INT8
// bRating = bEquipmentModifier - ( bSoldierClass == SOLDIER_CLASS_ARMY );
//else
bRating = BAD_ARMY_EQUIPMENT_RATING + bEquipmentModifier;
// Equipment quality modifier
if ( gGameExternalOptions.sEnemyRegularEquipmentQualityModifier != 0 )
bRating += gGameExternalOptions.sEnemyRegularEquipmentQualityModifier;
bRating = (INT8)max( MIN_EQUIPMENT_CLASS, min( MAX_EQUIPMENT_CLASS, bRating ) );
bWeaponClass = bRating;
@@ -662,6 +671,11 @@ void GenerateRandomEquipment( SOLDIERCREATE_STRUCT *pp, INT8 bSoldierClass, INT8
// bRating = bEquipmentModifier - ( bSoldierClass == SOLDIER_CLASS_ELITE );
//else
bRating = BAD_ELITE_EQUIPMENT_RATING + bEquipmentModifier;
// Equipment quality modifier
if ( gGameExternalOptions.sEnemyEliteEquipmentQualityModifier != 0 )
bRating += gGameExternalOptions.sEnemyEliteEquipmentQualityModifier;
bRating = (INT8)max( MIN_EQUIPMENT_CLASS, min( MAX_EQUIPMENT_CLASS, bRating ) );
bWeaponClass = bRating;