diff --git a/Tactical/Item Types.h b/Tactical/Item Types.h
index 78f1f5d5..44a8b23d 100644
--- a/Tactical/Item Types.h
+++ b/Tactical/Item Types.h
@@ -738,18 +738,18 @@ extern OBJECTTYPE gTempObject;
// note that these should not be used to determine what kind of an attachment an item is, that is determined by attachmentclass and the AC_xxx flags above
#define BLOOD_BAG 0x00000001 //1 // this item is a blood bag can can be used to boost surgery
#define MANPAD 0x00000002 //2 // this item is a MAn-Portable Air-Defense System
-#define BEARTRAP 0x00000004 //4 // a mechanical trap that does no explosion, but causes leg damage to whoever activates it
+#define BEARTRAP 0x00000004 //4 // a mechanical trap that does no explosion, but causes leg damage to whoever activates it
#define CAMERA 0x00000008 //8
#define WATER_DRUM 0x00000010 //16 // water drums allow to refill canteens in the sector they are in
#define MEAT_BLOODCAT 0x00000020 //32 // retrieve this by gutting a bloodcat
#define MEAT_COW 0x00000040 //64 // retrieve this by gutting a cow
-#define BELT_FED 0x00000080 //128 // item can be fed externally
+#define BELT_FED 0x00000080 //128 // item can be fed externally
#define AMMO_BELT 0x00000100 //256 // this item can be used to feed externally
#define AMMO_BELT_VEST 0x00000200 //512 // this is a vest that can contain AMMO_BELT items in its medium slots
-#define CAMO_REMOVAL 0x00000400 //1024 // item can be used to remove camo
-#define CLEANING_KIT 0x00000800 //2048 // weapon cleaning kit
+#define CAMO_REMOVAL 0x00000400 //1024 // item can be used to remove camo
+#define CLEANING_KIT 0x00000800 //2048 // weapon cleaning kit
#define ATTENTION_ITEM 0x00001000 //4096 // this item is 'interesting' to the AI. Dumb soldiers may try to pick it up
#define GAROTTE 0x00002000 //8192 // this item is a garotte
@@ -758,18 +758,18 @@ extern OBJECTTYPE gTempObject;
#define SKIN_BLOODCAT 0x00010000 //65536 // retrieve this by skinning (=decapitating) a bloodcat
#define NO_METAL_DETECTION 0x00020000 //131072 // a planted bomb with this flag can NOT be detected via metal detector. Use sparingly!
-#define JUMP_GRENADE 0x00040000 //262144 // add +25 heigth to explosion, used for bouncing grenades and jumping mines
+#define JUMP_GRENADE 0x00040000 //262144 // add +25 heigth to explosion, used for bouncing grenades and jumping mines
#define HANDCUFFS 0x00080000 //524288 // item can be used to capture soldiers
#define TASER 0x00100000 //1048576 // item is a taser, melee hits with this will drain breath (if batteries are supplied)
-#define SCUBA_BOTTLE 0x00200000 //2097152 // item is a scuba gear air bottle
+#define SCUBA_BOTTLE 0x00200000 //2097152 // item is a scuba gear air bottle
#define SCUBA_MASK 0x00400000 //4194304 // item is a scuba gear breathing mask
#define SCUBA_FINS 0x00800000 //8388608 // this item speed up swimming, but slows walking and running
-#define TRIPWIREROLL 0x01000000 //16777216 // this item is a tripwire roll
+#define TRIPWIREROLL 0x01000000 //16777216 // this item is a tripwire roll
#define RADIO_SET 0x02000000 //33554432 // item can be used to radio militia/squads in other sectors
-#define SIGNAL_SHELL 0x04000000 //67108864 // this is a signal shell that precedes artillery barrages
-#define SODA 0x08000000 //134217728 // item is a can of soda, sold in vending machines
+#define SIGNAL_SHELL 0x04000000 //67108864 // this is a signal shell that precedes artillery barrages
+#define SODA 0x08000000 //134217728 // item is a can of soda, sold in vending machines
#define ROOF_COLLAPSE_ITEM 0x10000000 //268435456 // this item is required in the collapsing of roof tiles. It is used internally and should never be seen by the player
#define DISEASEPROTECTION_1 0x20000000 //536870912 // this item protects us from getting diseases by human contact if kept in inventory
@@ -787,40 +787,40 @@ extern OBJECTTYPE gTempObject;
#define ITEM_sinks 0x0000004000000000
#define ITEM_showstatus 0x0000008000000000
-#define ITEM_hiddenaddon 0x0000010000000000
+#define ITEM_hiddenaddon 0x0000010000000000
#define ITEM_twohanded 0x0000020000000000
#define ITEM_notbuyable 0x0000040000000000
#define ITEM_attachment 0x0000080000000000
#define ITEM_hiddenattachment 0x0000100000000000
#define ITEM_biggunlist 0x0000200000000000
-#define ITEM_notineditor 0x0000400000000000
+#define ITEM_notineditor 0x0000400000000000
#define ITEM_defaultundroppable 0x0000800000000000
#define ITEM_unaerodynamic 0x0001000000000000
#define ITEM_electronic 0x0002000000000000
#define ITEM_cannon 0x0004000000000000
-#define ITEM_rocketrifle 0x0008000000000000
+#define ITEM_rocketrifle 0x0008000000000000
#define ITEM_fingerprintid 0x0010000000000000
#define ITEM_metaldetector 0x0020000000000000
-#define ITEM_gasmask 0x0040000000000000
+#define ITEM_gasmask 0x0040000000000000
#define ITEM_lockbomb 0x0080000000000000
#define ITEM_flare 0x0100000000000000
-#define ITEM_grenadelauncher 0x0200000000000000
+#define ITEM_grenadelauncher 0x0200000000000000
#define ITEM_mortar 0x0400000000000000
#define ITEM_duckbill 0x0800000000000000
#define ITEM_detonator 0x1000000000000000
-#define ITEM_remotedetonator 0x2000000000000000
-#define ITEM_hidemuzzleflash 0x4000000000000000
+#define ITEM_remotedetonator 0x2000000000000000
+#define ITEM_hidemuzzleflash 0x4000000000000000
#define ITEM_rocketlauncher 0x8000000000000000
// New UINT64 Item Flag => usItemFlag2
#define ITEM_singleshotrocketlauncher 0x00000001
#define ITEM_brassknuckles 0x00000002
-#define ITEM_crowbar 0x00000004
+#define ITEM_crowbar 0x00000004
#define ITEM_glgrenade 0x00000008
#define ITEM_flakjacket 0x00000010
@@ -829,17 +829,17 @@ extern OBJECTTYPE gTempObject;
#define ITEM_needsbatteries 0x00000080
#define ITEM_xray 0x00000100
-#define ITEM_wirecutters 0x00000200
-#define ITEM_toolkit 0x00000400
-#define ITEM_firstaidkit 0x00000800
+#define ITEM_wirecutters 0x00000200
+#define ITEM_toolkit 0x00000400
+#define ITEM_firstaidkit 0x00000800
#define ITEM_medicalkit 0x00001000
-#define ITEM_canteen 0x00002000
-#define ITEM_jar 0x00004000
+#define ITEM_canteen 0x00002000
+#define ITEM_jar 0x00004000
#define ITEM_canandstring 0x00008000
-#define ITEM_marbles 0x00010000
-#define ITEM_walkman 0x00020000
+#define ITEM_marbles 0x00010000
+#define ITEM_walkman 0x00020000
#define ITEM_remotetrigger 0x00040000
#define ITEM_robotremotecontrol 0x00080000
@@ -849,7 +849,7 @@ extern OBJECTTYPE gTempObject;
#define ITEM_antitankmine 0x00800000
#define ITEM_hardware 0x01000000
-#define ITEM_medical 0x02000000
+#define ITEM_medical 0x02000000
#define ITEM_gascan 0x04000000
#define ITEM_containsliquid 0x08000000
@@ -863,7 +863,7 @@ extern OBJECTTYPE gTempObject;
#define ITEM_tripwireactivation 0x0000000400000000 // item (mine) can be activated by nearby tripwire
#define ITEM_tripwire 0x0000000800000000 // item is tripwire
-#define ITEM_directional 0x0000001000000000 // item is a directional mine/bomb (actual direction is set upon planting)
+#define ITEM_directional 0x0000001000000000 // item is a directional mine/bomb (actual direction is set upon planting)
#define ITEM_blockironsight 0x0000002000000000 // if a gun or any attachment have this property, the iron sight won't be usable (if there is at least one other usable sight)
#define ITEM_fAllowClimbing 0x0000004000000000 // JMich: BackpackClimb does item allow climbing while wearing it
#define ITEM_cigarette 0x0000008000000000 // Flugente: this item can be smoked
diff --git a/Utils/XML_Items.cpp b/Utils/XML_Items.cpp
index 412a96fa..0373b4aa 100644
--- a/Utils/XML_Items.cpp
+++ b/Utils/XML_Items.cpp
@@ -205,7 +205,7 @@ itemStartElementHandle(void *userData, const XML_Char *name, const XML_Char **at
strcmp(name, "CamouflageKit") == 0 ||
strcmp(name, "LocksmithKit") == 0 ||
strcmp(name, "Mine") == 0 ||
- strcmp(name, "antitankmine" ) == 0 ||
+ strcmp(name, "AntitankMine" ) == 0 ||
strcmp(name, "GasCan") == 0 ||
strcmp(name, "ContainsLiquid") == 0 ||
strcmp(name, "Rock") == 0 ||
@@ -248,7 +248,7 @@ itemStartElementHandle(void *userData, const XML_Char *name, const XML_Char **at
strcmp(name, "RecoilModifierX") == 0 ||
strcmp(name, "RecoilModifierY") == 0 ||
strcmp(name, "PercentRecoilModifier") == 0 ||
- strcmp(name, "barrel") == 0 ||
+ strcmp(name, "Barrel") == 0 ||
strcmp(name, "usOverheatingCooldownFactor") == 0 ||
strcmp(name, "overheatTemperatureModificator") == 0 ||
strcmp(name, "overheatCooldownModificator") == 0 ||
@@ -284,16 +284,16 @@ itemStartElementHandle(void *userData, const XML_Char *name, const XML_Char **at
strcmp(name, "SleepModifier") == 0 ||
strcmp(name, "usSpotting") == 0 ||
strcmp(name, "sBackpackWeightModifier") == 0 ||
- strcmp(name, "fAllowClimbing") == 0 ||
+ strcmp(name, "AllowClimbing") == 0 ||
strcmp(name, "cigarette" ) == 0 ||
strcmp(name, "usPortionSize" ) == 0 ||
- strcmp(name, "diseaseprotectionface" ) == 0 ||
- strcmp(name, "diseaseprotectionhand" ) == 0||
+ strcmp(name, "DiseaseprotectionFace" ) == 0 ||
+ strcmp(name, "DiseaseprotectionHand" ) == 0||
strcmp(name, "usRiotShieldStrength" ) == 0 ||
strcmp(name, "usRiotShieldGraphic" ) == 0 ||
- strcmp(name, "bloodbag" ) == 0 ||
- strcmp(name, "emptybloodbag" ) == 0 ||
- strcmp(name, "medicalsplint" ) == 0 ||
+ strcmp(name, "Bloodbag" ) == 0 ||
+ strcmp(name, "EmptyBloodbag" ) == 0 ||
+ strcmp(name, "MedicalSplint" ) == 0 ||
strcmp(name, "sFireResistance" ) == 0 ||
strcmp(name, "usAdministrationModifier" ) == 0) ||
strcmp(name, "RobotDamageReduction") == 0 ||
@@ -1098,7 +1098,7 @@ itemEndElementHandle(void *userData, const XML_Char *name)
if ((BOOLEAN)atol(pData->szCharData))
pData->curItem.usItemFlag2 |= ITEM_mine;
}
- else if ( strcmp( name, "antitankmine" ) == 0 )
+ else if ( strcmp( name, "AntitankMine" ) == 0 )
{
pData->curElement = ELEMENT;
if ((BOOLEAN)atol(pData->szCharData))
@@ -1277,7 +1277,7 @@ itemEndElementHandle(void *userData, const XML_Char *name)
}
// Flugente
- else if(strcmp(name, "barrel") == 0)
+ else if(strcmp(name, "Barrel") == 0)
{
pData->curElement = ELEMENT;
if ((BOOLEAN)atol(pData->szCharData))
@@ -1342,11 +1342,6 @@ itemEndElementHandle(void *userData, const XML_Char *name)
if ((BOOLEAN)atol(pData->szCharData))
pData->curItem.usItemFlag2 |= ITEM_blockironsight;
}
- else if(strcmp(name, "ItemFlag") == 0)
- {
- pData->curElement = ELEMENT;
- pData->curItem.usItemFlag = (UINT64) strtoul(pData->szCharData, NULL, 0);
- }
else if(strcmp(name, "FoodType") == 0)
{
pData->curElement = ELEMENT;
@@ -1448,7 +1443,7 @@ itemEndElementHandle(void *userData, const XML_Char *name)
pData->curElement = ELEMENT;
pData->curItem.sBackpackWeightModifier = (INT16)atol(pData->szCharData);
}
- else if (strcmp(name, "fAllowClimbing") == 0)
+ else if (strcmp(name, "AllowClimbing") == 0)
{
pData->curElement = ELEMENT;
if ((BOOLEAN)atol(pData->szCharData))
@@ -1466,7 +1461,7 @@ itemEndElementHandle(void *userData, const XML_Char *name)
pData->curItem.usPortionSize = (UINT8)atol( pData->szCharData );
}
// Flugente: simple tags in the xml get translated into flags
- else if ( strcmp( name, "diseaseprotectionface" ) == 0 )
+ else if ( strcmp( name, "DiseaseprotectionFace" ) == 0 )
{
pData->curElement = ELEMENT;
BOOLEAN val = (BOOLEAN)atol( pData->szCharData );
@@ -1474,7 +1469,7 @@ itemEndElementHandle(void *userData, const XML_Char *name)
if ( val )
pData->curItem.usItemFlag |= DISEASEPROTECTION_1;
}
- else if ( strcmp( name, "diseaseprotectionhand" ) == 0 )
+ else if ( strcmp( name, "DiseaseprotectionHand" ) == 0 )
{
pData->curElement = ELEMENT;
BOOLEAN val = (BOOLEAN)atol( pData->szCharData );
@@ -1492,21 +1487,224 @@ itemEndElementHandle(void *userData, const XML_Char *name)
pData->curElement = ELEMENT;
pData->curItem.usRiotShieldGraphic = (UINT16)atol( pData->szCharData );
}
- else if ( strcmp( name, "bloodbag" ) == 0 )
+ else if ( strcmp( name, "Bloodbag" ) == 0 )
{
pData->curElement = ELEMENT;
if ( (BOOLEAN)atol( pData->szCharData ) )
pData->curItem.usItemFlag |= BLOOD_BAG;
}
- else if ( strcmp( name, "emptybloodbag" ) == 0 )
+ else if ( strcmp( name, "Manpad" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= MANPAD;
+ }
+ else if ( strcmp( name, "Beartrap" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= BEARTRAP;
+ }
+ else if ( strcmp( name, "Camera" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= CAMERA;
+ }
+ else if ( strcmp( name, "Waterdrum" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= WATER_DRUM;
+ }
+ else if ( strcmp( name, "BloodcatMeat" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= MEAT_BLOODCAT;
+ }
+ else if ( strcmp( name, "CowMeat" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= MEAT_COW;
+ }
+ else if ( strcmp( name, "Beltfed" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= BELT_FED;
+ }
+ else if ( strcmp( name, "Ammobelt" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= AMMO_BELT;
+ }
+ else if ( strcmp( name, "AmmobeltVest" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= AMMO_BELT_VEST;
+ }
+ else if ( strcmp( name, "CamoRemoval" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= CAMO_REMOVAL;
+ }
+ else if ( strcmp( name, "Cleaningkit" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= CLEANING_KIT;
+ }
+ else if ( strcmp( name, "AttentionItem" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= ATTENTION_ITEM;
+ }
+ else if ( strcmp( name, "Garotte" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= GAROTTE;
+ }
+ else if ( strcmp( name, "Covert" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= COVERT;
+ }
+ else if ( strcmp( name, "Corpse" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= CORPSE;
+ }
+ else if ( strcmp( name, "BloodcatSkin" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= SKIN_BLOODCAT;
+ }
+ else if ( strcmp( name, "NoMetalDetection" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= NO_METAL_DETECTION;
+ }
+ else if ( strcmp( name, "JumpGrenade" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= JUMP_GRENADE;
+ }
+ else if ( strcmp( name, "Handcuffs" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= HANDCUFFS;
+ }
+ else if ( strcmp( name, "Taser" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= TASER;
+ }
+ else if ( strcmp( name, "ScubaBottle" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= SCUBA_BOTTLE;
+ }
+ else if ( strcmp( name, "ScubaMask" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= SCUBA_MASK;
+ }
+ else if ( strcmp( name, "ScubaFins" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= SCUBA_FINS;
+ }
+ else if ( strcmp( name, "TripwireRoll" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= TRIPWIREROLL;
+ }
+ else if ( strcmp( name, "Radioset" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= RADIO_SET;
+ }
+ else if ( strcmp( name, "SignalShell" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= SIGNAL_SHELL;
+ }
+ else if ( strcmp( name, "Soda" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= SODA;
+ }
+ else if ( strcmp( name, "RoofcollapseItem" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= ROOF_COLLAPSE_ITEM;
+ }
+ else if ( strcmp( name, "LBEexplosionproof" ) == 0 )
+ {
+ pData->curElement = ELEMENT;
+
+ if ( (BOOLEAN)atol( pData->szCharData ) )
+ pData->curItem.usItemFlag |= LBE_EXPLOSIONPROOF;
+ }
+ else if ( strcmp( name, "EmptyBloodbag" ) == 0 )
{
pData->curElement = ELEMENT;
if ( (BOOLEAN)atol( pData->szCharData ) )
pData->curItem.usItemFlag |= EMPTY_BLOOD_BAG;
}
- else if ( strcmp( name, "medicalsplint" ) == 0 )
+ else if ( strcmp( name, "MedicalSplint" ) == 0 )
{
pData->curElement = ELEMENT;
@@ -1971,153 +2169,88 @@ BOOLEAN WriteItemStats()
FilePrintf(hFile,"\r\n");
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usItemClass);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].nasAttachmentClass);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].nasLayoutClass);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubClassIndex);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubCursor);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bSoundType);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].nasAttachmentClass);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].nasLayoutClass);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubClassIndex);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubCursor);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bSoundType);
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubGraphicType);
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubGraphicNum);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubWeight);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubPerPocket);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ItemSize);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usPrice);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubCoolness);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bReliability);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bRepairEase);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubWeight);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubPerPocket);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ItemSize);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usPrice);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubCoolness);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bReliability);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bRepairEase);
- if (ItemIsDamageable(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsRepairable(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsDamagedByWater(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsMetal(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemSinks(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (HasItemFlag2(cnt, ITEM_showstatus)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsHiddenAddon(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsTwoHanded(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsNotBuyable(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsAttachment(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsHiddenAttachment(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsOnlyInTonsOfGuns(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsOnlyInScifi(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsOnlyInNIV(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsNotInEditor(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsUndroppableByDefault(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsUnaerodynamic(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsElectronic(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemHasHiddenMuzzleFlash(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
-
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubAttachmentSystem );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubAttachmentSystem );
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].inseparable );
- FilePrintf(hFile,"\t\t%d\r\n", StoreInventory[cnt][0] );
- FilePrintf(hFile,"\t\t%d\r\n", StoreInventory[cnt][1] );
- FilePrintf(hFile,"\t\t%d\r\n", WeaponROF[cnt]);
+ FilePrintf(hFile,"\t\t%d\r\n", StoreInventory[cnt][0] );
+ FilePrintf(hFile,"\t\t%d\r\n", StoreInventory[cnt][1] );
+ FilePrintf(hFile,"\t\t%d\r\n", WeaponROF[cnt]);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentnoisereduction );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bipod );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].rangebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].rangebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].tohitbonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].aimbonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].minrangeforaimbonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentnoisereduction );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bipod );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].rangebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].rangebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].tohitbonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].aimbonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].minrangeforaimbonus );
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].magsizebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].rateoffirebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bulletspeedbonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].burstsizebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bestlaserrange );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bursttohitbonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].autofiretohitbonus);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].APBonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].rateoffirebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bulletspeedbonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].burstsizebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bestlaserrange );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bursttohitbonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].autofiretohitbonus);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].APBonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentburstfireapreduction );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentautofireapreduction );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentreadytimeapreduction );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentreloadtimeapreduction );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentapreduction );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentstatusdrainreduction );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentburstfireapreduction );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentautofireapreduction );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentreadytimeapreduction );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentreloadtimeapreduction );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentapreduction );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentstatusdrainreduction );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].damagebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].meleedamagebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].discardedlauncheritem );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].damagebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].meleedamagebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].discardedlauncheritem );
- if (ItemIsMortar(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsRocketLauncher(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsSingleShotRocketLauncher(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsGrenadeLauncher(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsDuckbill(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsGLgrenade(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsMine(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsATMine(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsRocketRifle(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemHasFingerPrintID(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsCannon(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
for(UINT8 cnt2 = 0; cnt2 < MAX_DEFAULT_ATTACHMENTS; cnt2++){
if(Item[cnt].defaultattachments[cnt2] != 0){
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].defaultattachments[cnt2] );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].defaultattachments[cnt2] );
}
}
- if (ItemIsBrassKnuckles(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsCrowbar(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsRock(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bloodieditem );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].camobonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].urbanCamobonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].desertCamobonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].snowCamobonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].camobonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].urbanCamobonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].desertCamobonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].snowCamobonus );
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].stealthbonus );
- if (ItemIsFlakJacket(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsLeatherJacket(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsDetonator(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsRemoteDetonator(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsRemoteTrigger(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsLockBomb(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsFlare(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsRobotRemote(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsWalkman(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsThermalOptics(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsGasmask(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
-
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].hearingrangebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].visionrangebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].nightvisionrangebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].dayvisionrangebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].cavevisionrangebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].brightlightvisionrangebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].itemsizebonus );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percenttunnelvision );
- FilePrintf(hFile,"\t\t%3.2f\r\n", Item[cnt].alcohol );
-
- if (ItemIsHardware(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsMedical(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsCamoKit(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsLocksmithKit(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsToolkit(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsFirstAidKit(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsMedicalKit(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsWirecutters(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsCanteen(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsGascan(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsMarbles(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsCanAndString(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsJar(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemHasXRay(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsBatteries(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemNeedsBatteries(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemContainsLiquid(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsMetalDetector(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].visionrangebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].nightvisionrangebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].dayvisionrangebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].cavevisionrangebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].brightlightvisionrangebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].itemsizebonus );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percenttunnelvision );
+ FilePrintf(hFile,"\t\t%3.2f\r\n", Item[cnt].alcohol );
// HEADROCK HAM 4: Print out new values
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].scopemagfactor );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].projectionfactor );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentaccuracymodifier );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].RecoilModifierX );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].RecoilModifierY );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].PercentRecoilModifier );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].projectionfactor );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].percentaccuracymodifier );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].RecoilModifierX );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].RecoilModifierY );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].PercentRecoilModifier );
// HEADROCK HAM 4: Print out stance-based values
FilePrintf(hFile,"\t\t\r\n");
@@ -2130,7 +2263,7 @@ BOOLEAN WriteItemStats()
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].percentdropcompensationmodifier[0] );
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].maxcounterforcemodifier[0] );
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforceaccuracymodifier[0] );
- FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[0] );
+ FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[0] );
FilePrintf(hFile,"\t\t\r\n");
FilePrintf(hFile,"\t\t\r\n");
@@ -2143,7 +2276,7 @@ BOOLEAN WriteItemStats()
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].percentdropcompensationmodifier[1] );
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].maxcounterforcemodifier[1] );
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforceaccuracymodifier[1] );
- FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[1] );
+ FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[1] );
FilePrintf(hFile,"\t\t\r\n");
FilePrintf(hFile,"\t\t\r\n");
@@ -2156,58 +2289,42 @@ BOOLEAN WriteItemStats()
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].percentdropcompensationmodifier[2] );
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].maxcounterforcemodifier[2] );
FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].counterforceaccuracymodifier[2] );
- FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[2] );
+ FilePrintf(hFile,"\t\t\t%d\r\n", Item[cnt].aimlevelsmodifier[2] );
FilePrintf(hFile,"\t\t\r\n");
// Flugente FTW 1.2
- if (ItemIsBarrel(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].usOverheatingCooldownFactor );
- FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].overheatTemperatureModificator );
- FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].overheatCooldownModificator );
- FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].overheatJamThresholdModificator );
- FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].overheatDamageThresholdModificator );
+ FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].usOverheatingCooldownFactor );
+ FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].overheatTemperatureModificator );
+ FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].overheatCooldownModificator );
+ FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].overheatJamThresholdModificator );
+ FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].overheatDamageThresholdModificator );
- FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].attachmentclass );
-
- if (ItemHasTripwireActivation(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsTripwire(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsDirectional(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemBlocksIronsight(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
-
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usItemFlag );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].drugtype );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].foodtype );
+ FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].attachmentclass );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].drugtype );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].foodtype );
//JMich_SkillModifiers: Adding the values here as well
- FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].LockPickModifier );
+ FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].LockPickModifier );
FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].CrowbarModifier );
- FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].DisarmModifier );
- FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].RepairModifier );
+ FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].DisarmModifier );
+ FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].RepairModifier );
FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].usHackingModifier );
- FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].usBurialModifier );
+ FilePrintf(hFile, "\t\t%d\r\n", Item[cnt].usBurialModifier );
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usDamageChance );
FilePrintf(hFile,"\t\t%4.2f\r\n", Item[cnt].dirtIncreaseFactor );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usActionItemFlag );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].clothestype );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].randomitem );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usActionItemFlag );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].clothestype );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].randomitem );
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].randomitemcoolnessmodificator );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usFlashLightRange );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usItemChoiceTimeSetting );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usBuddyItem );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubSleepModifier );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usSpotting );
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].sBackpackWeightModifier);
- FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usPortionSize );
-
- if (ItemAllowsClimbing(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsCigarette(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if ( HasItemFlag( cnt, DISEASEPROTECTION_1 ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
- if ( HasItemFlag( cnt, DISEASEPROTECTION_2 ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
- if ( HasItemFlag( cnt, BLOOD_BAG) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
- if ( HasItemFlag( cnt, EMPTY_BLOOD_BAG ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
- if ( HasItemFlag( cnt, MEDICAL_SPLINT ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usFlashLightRange );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usItemChoiceTimeSetting );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usBuddyItem );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].ubSleepModifier );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usSpotting );
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].sBackpackWeightModifier);
+ FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usPortionSize );
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usRiotShieldStrength );
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].usRiotShieldGraphic );
@@ -2221,10 +2338,117 @@ BOOLEAN WriteItemStats()
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bRobotChassisSkillGrant );
FilePrintf(hFile,"\t\t%d\r\n", Item[cnt].bRobotUtilitySkillGrant );
- if (ItemProvidesRobotCamo(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemProvidesRobotNightvision(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemProvidesRobotLaserBonus(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
- if (ItemIsOnlyInDisease(cnt)) FilePrintf(hFile, "\t\t%d\r\n", 1);
+ // usItemFlag
+ if ( HasItemFlag( cnt, BLOOD_BAG ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, MANPAD ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, BEARTRAP ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, CAMERA ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, WATER_DRUM ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, MEAT_BLOODCAT ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, MEAT_COW ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, BELT_FED ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, AMMO_BELT ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, AMMO_BELT_VEST ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, CAMO_REMOVAL ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, CLEANING_KIT ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, ATTENTION_ITEM ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, GAROTTE ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, COVERT ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, CORPSE ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, SKIN_BLOODCAT ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, NO_METAL_DETECTION ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, JUMP_GRENADE ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, HANDCUFFS ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, TASER ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, SCUBA_BOTTLE ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, SCUBA_MASK ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, SCUBA_FINS ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, TRIPWIREROLL ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, RADIO_SET ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, SIGNAL_SHELL ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, SODA ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, ROOF_COLLAPSE_ITEM ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, DISEASEPROTECTION_1 ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, DISEASEPROTECTION_2 ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, LBE_EXPLOSIONPROOF ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, EMPTY_BLOOD_BAG ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, MEDICAL_SPLINT ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsDamageable( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsRepairable( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsDamagedByWater( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsMetal( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemSinks( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( HasItemFlag( cnt, ITEM_showstatus ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsHiddenAddon( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsTwoHanded( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsNotBuyable( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsAttachment( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsHiddenAttachment( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsOnlyInTonsOfGuns( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsNotInEditor( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsUndroppableByDefault( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsUnaerodynamic( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsElectronic( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsCannon( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsRocketRifle( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemHasFingerPrintID( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsMetalDetector( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsGasmask( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsLockBomb( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsFlare( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsGrenadeLauncher( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsMortar( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsDuckbill( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsDetonator( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsRemoteDetonator( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemHasHiddenMuzzleFlash( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsRocketLauncher( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+
+ // usItemFlag2
+ if ( ItemIsSingleShotRocketLauncher( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsBrassKnuckles( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsCrowbar( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsGLgrenade( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsFlakJacket( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsLeatherJacket( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsBatteries( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemNeedsBatteries( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemHasXRay( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsWirecutters( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsToolkit( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsFirstAidKit( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsMedicalKit( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsCanteen( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsJar( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsCanAndString( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsMarbles( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsWalkman( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsRemoteTrigger( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsRobotRemote( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsCamoKit( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsLocksmithKit( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsMine( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsATMine( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsHardware( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsMedical( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsGascan( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemContainsLiquid( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsRock( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsThermalOptics( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsOnlyInScifi( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsOnlyInNIV( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsOnlyInDisease( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsBarrel( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemHasTripwireActivation( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsTripwire( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsDirectional( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemBlocksIronsight( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemAllowsClimbing( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemIsCigarette( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemProvidesRobotCamo( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemProvidesRobotNightvision( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+ if ( ItemProvidesRobotLaserBonus( cnt ) ) FilePrintf( hFile, "\t\t%d\r\n", 1 );
+
FilePrintf(hFile,"\t\r\n");
}