module FNVG
{
     /****************************** AN/PVS-7 ******************************/

     recipe Remove Battery
     {
          keep AN_PVS7/AN_PVS7_UP/AN_PVS7_PART,

          Result: Battery,
          Time: 30,
          OnTest: FNVG_CanRemoveBattery,
          OnCreate: FNVG_OnRemoveBattery,
          StopOnWalk: false,
     }

     recipe Insert Battery into AN/PVS-7
     {
          keep AN_PVS7/AN_PVS7_UP/AN_PVS7_PART,
          destroy Battery,

          Result: AN_PVS7,
          Time: 30,
          OnTest: FNVG_CanInsertBattery,
          OnCreate: FNVG_OnInsertBattery,
          StopOnWalk: false,
     }

     recipe Attach Rhino Mount to AN/PVS-7
     {
          AN_PVS7_PART,
          RhinoMount/RhinoMount_UP,

          Result: AN_PVS7,
          Time: 30,
          OnCreate: FNVG_OnMountAttach,
          StopOnWalk: false,
     }

     recipe Detach Rhino Mount from AN/PVS-7
     {
          AN_PVS7/AN_PVS7_UP,

          Result: AN_PVS7_PART,
          Time: 30,
          OnCreate: FNVG_OnMountDetach,
          StopOnWalk: false,
     }

     /****************************** AN/PVS-14 *****************************/

     recipe Remove Battery
     {
          keep AN_PVS14/AN_PVS14_UP/AN_PVS14_PART,

          Result: Battery,
          Time: 30,
          OnTest: FNVG_CanRemoveBattery,
          OnCreate: FNVG_OnRemoveBattery,
          StopOnWalk: false,
     }

     recipe Insert Battery into AN/PVS-14
     {
          keep AN_PVS14/AN_PVS14_UP/AN_PVS14_PART,
          destroy Battery,

          Result: AN_PVS14,
          Time: 30,
          OnTest: FNVG_CanInsertBattery,
          OnCreate: FNVG_OnInsertBattery,
          StopOnWalk: false,
     }

     recipe Attach Rhino Mount to AN/PVS-14
     {
          AN_PVS14_PART,
          RhinoMount/RhinoMount_UP,

          Result: AN_PVS14,
          Time: 30,
          OnCreate: FNVG_OnMountAttach,
          StopOnWalk: false,
     }

     recipe Detach Rhino Mount from AN/PVS-14
     {
          AN_PVS14/AN_PVS14_UP,

          Result: AN_PVS14_PART,
          Time: 30,
          OnCreate: FNVG_OnMountDetach,
          StopOnWalk: false,
     }

     /****************************** AN/PVS-15 *****************************/

     recipe Remove Battery
     {
          keep AN_PVS15/AN_PVS15_UP/AN_PVS15_PART,

          Result: Battery,
          Time: 30,
          OnTest: FNVG_CanRemoveBattery,
          OnCreate: FNVG_OnRemoveBattery,
          StopOnWalk: false,
     }

     recipe Insert Battery into AN/PVS-15
     {
          keep AN_PVS15/AN_PVS15_UP/AN_PVS15_PART,
          destroy Battery,

          Result: AN_PVS15,
          Time: 30,
          OnTest: FNVG_CanInsertBattery,
          OnCreate: FNVG_OnInsertBattery,
          StopOnWalk: false,
     }

     recipe Attach Rhino Mount to AN/PVS-15
     {
          AN_PVS15_PART,
          RhinoMount/RhinoMount_UP,

          Result: AN_PVS15,
          Time: 30,
          OnCreate: FNVG_OnMountAttach,
          StopOnWalk: false,
     }

     recipe Detach Rhino Mount from AN/PVS-15
     {
          AN_PVS15/AN_PVS15_UP,

          Result: AN_PVS15_PART,
          Time: 30,
          OnCreate: FNVG_OnMountDetach,
          StopOnWalk: false,
     }

     /****************************** GPNVG-18 ******************************/

     recipe Remove Battery
     {
          keep GPNVG_18/GPNVG_18_UP/GPNVG_18_PART,

          Result: Battery,
          Time: 30,
          OnTest: FNVG_CanRemoveBattery,
          OnCreate: FNVG_OnRemoveBattery,
          StopOnWalk: false,
     }

     recipe Insert Battery into GPNVG-18
     {
          keep GPNVG_18/GPNVG_18_UP/GPNVG_18_PART,
          destroy Battery,

          Result: GPNVG_18,
          Time: 30,
          OnTest: FNVG_CanInsertBattery,
          OnCreate: FNVG_OnInsertBattery,
          StopOnWalk: false,
     }

     recipe Attach Rhino Mount to GPNVG-18
     {
          GPNVG_18_PART,
          RhinoMount/RhinoMount_UP,

          Result: GPNVG_18,
          Time: 30,
          OnCreate: FNVG_OnMountAttach,
          StopOnWalk: false,
     }

     recipe Detach Rhino Mount from GPNVG-18
     {
          GPNVG_18/GPNVG_18_UP,

          Result: GPNVG_18_PART,
          Time: 30,
          OnCreate: FNVG_OnMountDetach,
          StopOnWalk: false,
     }
}
