LOBOT filters update (by Asdow).

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8943 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Sevenfm
2021-02-18 09:19:37 +00:00
parent f3d35c9401
commit 6bb9759e75
3 changed files with 26 additions and 5 deletions
+6
View File
@@ -189,6 +189,9 @@ bool Filter::Match(SOLDIERTYPE* pSoldier) {
case REQ_WEAPON_TYPE:
cmp_val = Weapon[pSoldier->inv[HANDPOS].usItem].ubWeaponType;
break;
case REQ_LEFT_WEAPON_TYPE:
cmp_val = Weapon[pSoldier->inv[SECONDHANDPOS].usItem].ubWeaponType;
break;
case REQ_CALIBRE:
cmp_val = Weapon[pSoldier->inv[HANDPOS].usItem].ubCalibre;
break;
@@ -204,6 +207,9 @@ bool Filter::Match(SOLDIERTYPE* pSoldier) {
case REQ_HELMET_AMOR_COVERAGE:
cmp_val = Armour[Item[pSoldier->inv[HELMETPOS].usItem].ubClassIndex].ubCoverage;
break;
case REQ_WEARING_BACKPACK:
cmp_val = pSoldier->inv[BPACKPOCKPOS].exists();
break;
default:
if (q < NUM_REQTYPESINV) {
cmp_val = pSoldier->inv[q].usItem;
+2
View File
@@ -57,11 +57,13 @@ public:
REQ_WEAPON_IN_HAND,
REQ_WEAPON_CLASS,
REQ_WEAPON_TYPE,
REQ_LEFT_WEAPON_TYPE,
REQ_CALIBRE,
REQ_VEST_AMOR_PROTECTION,
REQ_VEST_AMOR_COVERAGE,
REQ_HELMET_AMOR_PROTECTION,
REQ_HELMET_AMOR_COVERAGE,
REQ_WEARING_BACKPACK,
NUM_REQTYPES,
// 3rd byte is for operator flags
_REQ_BTWN = 0x20000,
+18 -5
View File
@@ -271,7 +271,7 @@ namespace LogicalBodyTypes {
/*****************************************
Filter enum criterion types
******************************************/
LOGBT_ENUMDB_ADD("IntegerFilterCriterionTypes", 32,
LOGBT_ENUMDB_ADD("IntegerFilterCriterionTypes", 33,
Filter::REQ_HELMETPOS,
Filter::REQ_VESTPOS,
Filter::REQ_LEGPOS,
@@ -303,20 +303,22 @@ namespace LogicalBodyTypes {
Filter::REQ_VEST_AMOR_PROTECTION,
Filter::REQ_VEST_AMOR_COVERAGE,
Filter::REQ_HELMET_AMOR_PROTECTION,
Filter::REQ_HELMET_AMOR_COVERAGE
Filter::REQ_HELMET_AMOR_COVERAGE,
Filter::REQ_WEARING_BACKPACK
);
/*****************************************
Filter enum criterion types
******************************************/
LOGBT_ENUMDB_ADD("EnumFilterCriterionTypes", 7,
LOGBT_ENUMDB_ADD("EnumFilterCriterionTypes", 8,
Filter::REQ_SEX,
Filter::REQ_MERC_TYPE,
Filter::REQ_SOLDIER_CLASS,
Filter::REQ_CIVILIANGROUP,
Filter::REQ_BODYTYPE,
Filter::REQ_WEAPON_CLASS,
Filter::REQ_WEAPON_TYPE
Filter::REQ_WEAPON_TYPE,
Filter::REQ_LEFT_WEAPON_TYPE
);
/*****************************************
@@ -672,7 +674,7 @@ namespace LogicalBodyTypes {
/*****************************************
Weapon Type
******************************************/
LOGBT_ENUMDB_ADD("WEAPON_TYPE", GUN_TYPES_MAX,
LOGBT_ENUMDB_ADD("WEAPON_TYPE", GUN_TYPES_MAX,
NOT_GUN,
GUN_PISTOL,
GUN_M_PISTOL,
@@ -684,6 +686,17 @@ namespace LogicalBodyTypes {
GUN_SHOTGUN
);
LOGBT_ENUMDB_ADD("LEFT_WEAPON_TYPE", GUN_TYPES_MAX,
NOT_GUN,
GUN_PISTOL,
GUN_M_PISTOL,
GUN_SMG,
GUN_RIFLE,
GUN_SN_RIFLE,
GUN_AS_RIFLE,
GUN_LMG,
GUN_SHOTGUN
);
};
}