class ItemCore;
class VestItem;

class Vest_Camo_Base: ItemCore {
  class ItemInfo: VestItem {
    /*containerClass = "Supply0";
    mass = 0;
    armor = 0;
    passThrough = 1;*/
  };
};
class Vest_NoCamo_Base: ItemCore {
  class ItemInfo: VestItem {
    /*containerClass = "Supply0";
    mass = 0;
    armor = 0;
    passThrough = 1;*/
  };
};

// belts
class V_Rangemaster_belt: Vest_NoCamo_Base {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply40";
    mass = 10;
    armor = 0;
    passThrough = 1;*/
  };
};

// bandolliers
class V_BandollierB_khk: Vest_Camo_Base {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply80";
    mass = 15;
    armor = 0;*/
    passThrough = 0.85; //1;
  };
};
/*class V_BandollierB_cbr: V_BandollierB_khk {
  class ItemInfo: ItemInfo {};
};
class V_BandollierB_rgr: V_BandollierB_khk {
  class ItemInfo: ItemInfo {};
};
class V_BandollierB_blk: V_BandollierB_khk {
  class ItemInfo: ItemInfo {};
};
class V_BandollierB_oli: V_BandollierB_khk {
  class ItemInfo: ItemInfo {};
};*/

// plate carriers
class V_PlateCarrier1_rgr: Vest_NoCamo_Base {   // lite
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply140";
    mass = 80;*/
    armor = 8; //20;
    passThrough = 0.75; //0.5;
  };
};
class V_PlateCarrier2_rgr: V_PlateCarrier1_rgr {  // heavy
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply140";
    mass = 100;*/
    armor = 12; //30;
    passThrough = 0.75; //0.5;
  };
};
class V_PlateCarrier3_rgr: Vest_NoCamo_Base {   // heavy (us)
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply140";
    mass = 100;*/
    armor = 12; //30;
    passThrough = 0.75; //0.5;
  };
};
class V_PlateCarrierGL_rgr: Vest_NoCamo_Base {   // lite (gl)
  class ItemInfo: ItemInfo {
    containerClass = "Supply160"; //"Supply140";
    /*mass = 100;*/
    armor = 8; //100;
    passThrough = 0.75; //0.7;
  };
};
class V_PlateCarrier1_blk: Vest_Camo_Base {     // heavy (black)
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply140";*/
    mass = 100; //80;
    armor = 12; //20;
    passThrough = 0.75; //0.5;
  };
};
class V_PlateCarrierSpec_rgr: Vest_NoCamo_Base {  // lite (special)
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply100";
    mass = 120;*/
    armor = 16; //40;
    passThrough = 0.75; //0.1;
  };
};

// chestrigs
/*class V_Chestrig_khk: Vest_Camo_Base {
  class ItemInfo: ItemInfo {
    containerClass = "Supply140";
    mass = 20;
    armor = 0;
    passThrough = 1;
  };
};
class V_Chestrig_rgr: V_Chestrig_khk {};
class V_Chestrig_blk: V_Chestrig_khk {};
class V_Chestrig_oli: Vest_Camo_Base {
  class ItemInfo: ItemInfo {
    containerClass = "Supply140";
    mass = 20;
    armor = 0;
    passThrough = 1;
  };
};*/

// tactical vests
class V_TacVest_khk: Vest_Camo_Base {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply100";
    mass = 40;*/
    armor = 8; //20;
    /*passThrough = 1;*/
  };
};
class V_TacVest_brn: V_TacVest_khk {};
class V_TacVest_oli: V_TacVest_khk {};
class V_TacVest_blk: V_TacVest_khk {};
class V_TacVest_camo: Vest_Camo_Base {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply100";
    mass = 40;*/
    armor = 8; //20;
    /*passThrough = 1;*/
  };
};
class V_TacVest_blk_POLICE: Vest_Camo_Base {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply100";*/
    mass = 40; //60;
    armor = 8; //100;
    passThrough = 1; //0.7;
  };
};
class V_TacVestIR_blk: Vest_NoCamo_Base { // raven vest
  class ItemInfo: VestItem {
    /*containerClass = "Supply100";
    mass = 50;*/
    armor = 8; //20;
    passThrough = 0.85; //0.5;
  };
};
class V_TacVestCamo_khk: Vest_Camo_Base {
  class ItemInfo: VestItem {
    /*containerClass = "Supply100";
    mass = 40;*/
    armor = 8; //20;
    /*passThrough = 1;*/
  };
};

// harnesses
class V_HarnessO_brn: Vest_NoCamo_Base {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply160";
    mass = 30;
    armor = 0;*/
    passThrough = 0.85; //0.5;
  };
};
class V_HarnessOGL_brn: Vest_NoCamo_Base {  // gl
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply120";
    mass = 20;
    armor = 0;*/
    passThrough = 0.85; //0.5;
  };
};
class V_HarnessO_gry: V_HarnessO_brn {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply160";
    mass = 30;
    armor = 0;*/
    passThrough = 0.85; //0.5;
  };
};
class V_HarnessOGL_gry: V_HarnessO_gry {  // gl
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply120";
    mass = 20;
    armor = 0;*/
    passThrough = 0.85; //0.5;
  };
};
class V_HarnessOSpec_brn: V_HarnessO_brn {
  class ItemInfo: VestItem {
    /*containerClass = "Supply160";
    mass = 30;
    armor = 0;*/
    passThrough = 0.85; //0.5;
  };
};
class V_HarnessOSpec_gry: V_HarnessO_gry {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply160";
    mass = 30;
    armor = 0;*/
    passThrough = 0.85; //0.5;
  };
};

// indep plate carriers
class V_PlateCarrierIA1_dgtl: Vest_NoCamo_Base {  // lite
  class ItemInfo: VestItem {
    /*containerClass = "Supply120";
    mass = 60;*/
    armor = 8; //20;
    passThrough = 0.75; //0.5;
  };
};
class V_PlateCarrierIA2_dgtl: V_PlateCarrierIA1_dgtl {  // heavy
  class ItemInfo: VestItem {
    /*containerClass = "Supply120";
    mass = 80;*/
    armor = 12; //30;
    passThrough = 0.75; //0.5;
  };
};
class V_PlateCarrierIAGL_dgtl: V_PlateCarrierIA2_dgtl { // heavy (gl)
  class ItemInfo: VestItem {
    containerClass = "Supply140"; //"Supply120";
    mass = 100; //80;
    armor = 12; //100;
    passThrough = 0.75; //0.7;
  };
};

// rebreather
/*class V_RebreatherB: Vest_Camo_Base {
  class ItemInfo: ItemInfo {
    containerClass = "Supply0";
    mass = 80;
    armor = 20;
    passThrough = 1;
  };
};
class V_RebreatherIR: V_RebreatherB {};
class V_RebreatherIA: V_RebreatherB {};*/

// more plate carriers
class V_PlateCarrier_Kerry: V_PlateCarrier1_rgr {   // lighter
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply140";
    mass = 80;*/
    armor = 8; //30;
    passThrough = 0.75; //0.5;
  };
};
class V_PlateCarrierL_CTRG: V_PlateCarrier1_rgr {   // lite
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply140";
    mass = 80;*/
    armor = 8; //20;
    passThrough = 0.75; //0.5;
  };
};
class V_PlateCarrierH_CTRG: V_PlateCarrier2_rgr {   // heavy
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply140";
    mass = 100;*/
    armor = 12; //30;
    passThrough = 0.75; //0.5;
  };
};

// another tactical vest
class V_I_G_resistanceLeader_F: V_TacVest_camo {
  class ItemInfo: ItemInfo {};
};

// press vest
class V_Press_F: Vest_Camo_Base {
  class ItemInfo: ItemInfo {
    /*containerClass = "Supply40";
    mass = 20;*/
    armor = 8; //0;  ?
    /*passThrough = 1;*/
  };
};