If COVERT_ELITES_DETECT_NEXTTILE is set to TRUE, elite soldiers will uncover spies disguised as soldiers next to them if more experienced.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6249 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2013-07-28 14:05:45 +00:00
parent cfe8ea5ea5
commit 8c2df1803a
13 changed files with 30 additions and 8 deletions
+1
View File
@@ -2271,6 +2271,7 @@ void LoadSkillTraitsExternalSettings()
gSkillTraitValues.sCODisguiseAPReduction = iniReader.ReadInteger("Covert Ops","COVERT_DISGUISE_PERCENT_AP_REDUCTION", 20, 0, 50);
gSkillTraitValues.sCOCloseDetectionRange = iniReader.ReadInteger("Covert Ops","COVERT_CLOSE_DETECTION_RANGE", 10, 0, 100);
gSkillTraitValues.sCOCloseDetectionRangeSoldierCorpse = iniReader.ReadInteger("Covert Ops","COVERT_CLOSE_DETECTION_RANGE_SOLDIER_CORPSE", 5, 0, 100);
gSkillTraitValues.fCOElitesDetectNextTile = iniReader.ReadBoolean("Covert Ops","COVERT_ELITES_DETECT_NEXTTILE", TRUE);
}
//DBrot: Grids
void LoadModSettings(){
+1
View File
@@ -1520,6 +1520,7 @@ typedef struct
INT16 sCODisguiseAPReduction;
INT16 sCOCloseDetectionRange;
INT16 sCOCloseDetectionRangeSoldierCorpse;
BOOLEAN fCOElitesDetectNextTile;
} SKILL_TRAIT_VALUES;
+10
View File
@@ -15156,6 +15156,16 @@ BOOLEAN SOLDIERTYPE::SeemsLegit( UINT8 ubObserverID )
}
break;
}
// if we are a soldier, elites can uncover us if we are VERY close, and more experienced
if ( this->bSoldierFlagMask & SOLDIER_COVERT_SOLDIER && gSkillTraitValues.fCOElitesDetectNextTile && distance < 2 && EffectiveExpLevel(pSoldier) > EffectiveExpLevel(this) + covertlevel )
{
if ( pSoldier->ubSoldierClass == SOLDIER_CLASS_ELITE )
{
ScreenMsg( FONT_MCOLOR_LTYELLOW, MSG_INTERFACE, szCovertTextStr[STR_COVERT_TOO_CLOSE_TO_ELITE], this->GetName() );
return FALSE;
}
}
}
if ( this->bSoldierFlagMask & SOLDIER_COVERT_CIV )
+1
View File
@@ -692,6 +692,7 @@ enum
STR_COVERT_TEST_FAIL,
STR_COVERT_STEAL_FAIL,
STR_COVERT_APPLYITEM_STEAL_FAIL,
STR_COVERT_TOO_CLOSE_TO_ELITE,
TEXT_NUM_COVERT_STR
};
+1
View File
@@ -7522,6 +7522,7 @@ STR16 szCovertTextStr[]=
L"%s的伪装要被识破了。", // L"%s's disguise will not hold.",
L"%s在偷窃的时候被抓了!", // L"%s was caught stealing!",
L"%s在试图调整%s的物品栏。", // L"%s tried to manipulate %s's inventory."
L"%s is too close to an elite soldier!", // TODO.Translate
};
STR16 szCorpseTextStr[]=
+2 -1
View File
@@ -7519,7 +7519,8 @@ STR16 szCovertTextStr[]=
L"%s's disguise seems to be ok...",
L"%s's disguise will not hold.",
L"%s was caught stealing!",
L"%s tried to manipulate %s's inventory."
L"%s tried to manipulate %s's inventory.",
L"%s is too close to an elite soldier!", // TODO.Translate
};
STR16 szCorpseTextStr[]=
+2 -1
View File
@@ -7507,7 +7507,8 @@ STR16 szCovertTextStr[]=
L"%s's disguise seems to be ok...",
L"%s's disguise will not hold.",
L"%s was caught stealing!",
L"%s tried to manipulate %s's inventory."
L"%s tried to manipulate %s's inventory.",
L"%s is too close to an elite soldier!",
};
STR16 szCorpseTextStr[]=
+2 -1
View File
@@ -7503,7 +7503,8 @@ STR16 szCovertTextStr[]=
L"%s's disguise seems to be ok...",
L"%s's disguise will not hold.",
L"%s was caught stealing!",
L"%s tried to manipulate %s's inventory."
L"%s tried to manipulate %s's inventory.",
L"%s is too close to an elite soldier!", // TODO.Translate
};
STR16 szCorpseTextStr[]=
+2 -1
View File
@@ -7330,7 +7330,8 @@ STR16 szCovertTextStr[]=
L"%s's Verkleidung sollte überzeugen",
L"%s's Verkleidung wird auffliegen!",
L"%s wurde beim Stehlen erwischt!",
L"%s tried to manipulate %s's inventory."
L"%s hat versucht, %s's Azsrüstung zu verändern.",
L"%s ist zu nah an einem Elitesoldat!",
};
STR16 szCorpseTextStr[]=
+2 -1
View File
@@ -7505,7 +7505,8 @@ STR16 szCovertTextStr[]=
L"%s's disguise seems to be ok...",
L"%s's disguise will not hold.",
L"%s was caught stealing!",
L"%s tried to manipulate %s's inventory."
L"%s tried to manipulate %s's inventory.",
L"%s is too close to an elite soldier!", // TODO.Translate
};
STR16 szCorpseTextStr[]=
+2 -1
View File
@@ -7525,7 +7525,8 @@ STR16 szCovertTextStr[]=
L"%s's disguise seems to be ok...",
L"%s's disguise will not hold.",
L"%s was caught stealing!",
L"%s tried to manipulate %s's inventory."
L"%s tried to manipulate %s's inventory.",
L"%s is too close to an elite soldier!", // TODO.Translate
};
STR16 szCorpseTextStr[]=
+2 -1
View File
@@ -7506,7 +7506,8 @@ STR16 szCovertTextStr[]=
L"%s's disguise seems to be ok...",
L"%s's disguise will not hold.",
L"%s was caught stealing!",
L"%s tried to manipulate %s's inventory."
L"%s tried to manipulate %s's inventory.",
L"%s is too close to an elite soldier!", // TODO.Translate
};
STR16 szCorpseTextStr[]=
+2 -1
View File
@@ -7523,7 +7523,8 @@ STR16 szCovertTextStr[]=
L"%s's disguise seems to be ok...",
L"%s's disguise will not hold.",
L"%s was caught stealing!",
L"%s tried to manipulate %s's inventory."
L"%s tried to manipulate %s's inventory.",
L"%s is too close to an elite soldier!", // TODO.Translate
};
STR16 szCorpseTextStr[]=