Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class CfgPatches {
- class DZ_Gear_Medical {
- units = {"Medical_DisinfectantSpray", "Medical_Antibiotics", "Medical_Bandage", "Medical_Bloodbag", "Medical_Defibrillator", "Medical_Epinephrine", "Medical_Morphine", "Medical_Painkiller"};
- weapons = {};
- requiredVersion = 0.100000;
- requiredAddons = {"DZ_Data"};
- };
- };
- /*extern*/ class RecipeToolOnTool;
- class CfgRecipes {
- class Craft_SalineBagIV {
- name = "Create %RESULT1";
- material = {"Medical_StartKit", "Medical_SalineBag"};
- results = {"Medical_TransfusionKit"};
- action = "[_owner,_result1] call event_craftMessage;";
- };
- class Craft_BloodBagIV {
- name = "Create %RESULT1";
- material = {"Medical_StartKit", "Medical_BloodBag_Full"};
- results = {"Medical_BloodBag_IV"};
- action = "[_owner,_result1] call event_craftMessage;_result1 setVariable ['filledWith',_material2 getVariable 'filledWith'];";
- };
- class DisinfectItem: RecipeToolOnTool {
- name = "Spray %TOOL1 on %TOOL2";
- tools = {"Medical_DisinfectantSpray", "InventoryBase"};
- action = "[0,[_tool1,_tool2],_name,_owner] call player_actionOnItem;";
- condition = "true";
- onComplete = "";
- sound = "";
- playerAction = "PlayerCraft";
- messages = {"The %1 is empty", "colorStatusChannel", "The %1 is broken", "colorImportant", "The %1 is broken", "colorImportant", "You have used a %1 on a %2", "colorAction"};
- allowDead = 0;
- interactionWeight = 0.100000;
- useQuantity = 0.100000;
- };
- class FillSyringe: RecipeToolOnTool {
- name = "Fill %TOOL1 from %TOOL2";
- tools = {"Medical_Syringe", "Medical_InjectionVial"};
- results = {"Medical_SyringeClear"};
- action = "[0,[_tool1,_tool2],_name,_owner] call player_actionOnItem;";
- condition = "true";
- onComplete = "";
- sound = "";
- playerAction = "PlayerCraft";
- messages = {"The %1 is empty", "colorStatusChannel", "The %1 is broken", "colorImportant", "The %1 is broken", "colorImportant", "You have used a %1 on a %2", "colorAction"};
- allowDead = 0;
- interactionWeight = 0.100000;
- useQuantity = 1;
- keepEmpty = 0;
- };
- class SyringeTestBlood: RecipeToolOnTool {
- name = "Use %TOOL1 on %TOOL2";
- tools = {"Medical_BloodTest_Kit", "Medical_SyringeBlood"};
- action = "[0,[_tool1,_tool2],_name,_owner] call player_actionOnItem;";
- condition = "true";
- onComplete = "[_person,format ['Blood type of %1 is %2',displayName _tool2,getText (configFile >> 'cfgSolutions' >> (_tool2 getVariable 'filledWith') >> 'displayName')],'colorAction'] call fnc_playerMessage;";
- sound = "";
- playerAction = "PlayerCraft";
- messages = {"The %1 is empty", "colorStatusChannel", "The %1 is broken", "colorImportant", "The %1 is broken", "colorImportant", "You have used a %1 on a %2", "colorAction"};
- allowDead = 0;
- interactionWeight = 0.100000;
- useQuantity = 1;
- };
- class BagTestBlood: RecipeToolOnTool {
- name = "Use %TOOL1 on %TOOL2";
- tools = {"Medical_BloodTest_Kit", "Medical_BloodBag_Full"};
- action = "[0,[_tool1,_tool2],_name,_owner] call player_actionOnItem;";
- condition = "true";
- onComplete = "[_person,format ['Blood type of %1 is %2',displayName _tool2,getText (configFile >> 'cfgSolutions' >> (_tool2 getVariable 'filledWith') >> 'displayName')],'colorAction'] call fnc_playerMessage;";
- sound = "";
- playerAction = "PlayerCraft";
- messages = {"The %1 is empty", "colorStatusChannel", "The %1 is broken", "colorImportant", "The %1 is broken", "colorImportant", "You have used a %1 on a %2", "colorAction"};
- allowDead = 0;
- interactionWeight = 0.100000;
- useQuantity = 1;
- };
- class IVsetTestBlood: RecipeToolOnTool {
- name = "Use %TOOL1 on %TOOL2";
- tools = {"Medical_BloodTest_Kit", "Medical_BloodBag_IV"};
- action = "[0,[_tool1,_tool2],_name,_owner] call player_actionOnItem;";
- condition = "true";
- onComplete = "[_person,format ['Blood type of %1 is %2',displayName _tool2,getText (configFile >> 'cfgSolutions' >> (_tool2 getVariable 'filledWith') >> 'displayName')],'colorAction'] call fnc_playerMessage;";
- sound = "";
- playerAction = "PlayerCraft";
- messages = {"The %1 is empty", "colorStatusChannel", "The %1 is broken", "colorImportant", "The %1 is broken", "colorImportant", "You have used a %1 on a %2", "colorAction"};
- allowDead = 0;
- interactionWeight = 0.100000;
- useQuantity = 1;
- };
- };
- /*extern*/ class DefaultAction;
- /*extern*/ class ActionOnTarget;
- /*extern*/ class ActionOnSelf;
- class CfgVehicles {
- /*extern*/ class InventoryBase;
- class MedicalItemBase: InventoryBase {
- storeVariables = {"modifiers", "wet", "quantity"};
- synchronizedVariables = {"wet", 0.200000, "quantity", 1};
- stackedMax = 1;
- stackedUnit = "";
- quantity = "format ['%1%%', round((quantity _this / maxQuantity _this) * 100)]";
- class UserActions {
- class Consume: ActionOnSelf {
- displayNameDefault = "Consume";
- displayName = "Consume";
- soundEffects = {};
- action = "playerBandage";
- messages = {"The %1 is empty", "colorStatusChannel", "You have used a %1", "colorAction"};
- trashItem = "";
- useQuantity = 0.250000;
- };
- class ForceFeed: ActionOnTarget {
- displayNameDefault = "Feed";
- displayName = "Force feed";
- sound = "";
- messages = {"You cannot force feed dead person", "colorStatusChannel", "%1 starts force feeding you", "colorFriendly", "You start force feeding %1", "colorAction", "%1 moved and force feeding failed", "colorImportant", "%1 has successfully force feed you", "colorFriendly", "You successfully force feed %1", "colorAction"};
- action = "ItemUseShort";
- onStart = "";
- onComplete = "";
- useQuantity = 1;
- trashItem = "";
- interactionWeight = 0.250000;
- };
- class ForceDrink: ActionOnTarget {
- displayNameDefault = "Force drink";
- displayName = "Force drink";
- sound = "";
- messages = {"You cannot force drink dead person", "colorStatusChannel", "%1 starts force drinking you", "colorFriendly", "You start force drinking %1", "colorAction", "%1 moved and force drinking failed", "colorImportant", "%1 has successfully force drink you", "colorFriendly", "You successfully force drink %1", "colorAction"};
- action = "ItemUseShort";
- onStart = "";
- onComplete = "";
- useQuantity = 1;
- trashItem = "";
- interactionWeight = 0.250000;
- keepEmpty = 0;
- };
- };
- handheld = 1;
- armAction = "Disarm";
- tooltip = "_text = _this call fnc_generateTooltip;_text";
- };
- class Medical_Bandage: MedicalItemBase {
- scope = 2;
- displayName = "Bandage";
- descriptionShort = "Prepacked sterile dressing used for application to a wound to promote healing and stop bleeding. It is designed to be in direct contact with the wound.";
- model = "\dz\gear\medical\Bandage.p3d";
- rotateDropped = 0;
- class UserActions {
- class SelfBandage: ActionOnSelf {
- displayNameDefault = "Bandage Myself";
- displayName = "Use";
- sound = "action_bandage";
- action = "playerbandage";
- messages = {"The %1 is empty", "colorStatusChannel", "You have applied a %1", "colorAction"};
- onComplete = "[false,_person] call medical_playerBandage";
- useQuantity = 1;
- };
- class ApplyBandage: ActionOnTarget {
- displayNameDefault = "Apply Bandage";
- displayName = "Bandage";
- sound = "action_bandage";
- messages = {"You cannot bandage a dead person", "colorStatusChannel", "%1 starts to bandage you", "colorFriendly", "You start to bandage %1", "colorAction", "%1 moved and the bandage fell off", "colorImportant", "%1 has successfully bandaged you", "colorFriendly", "You successfully bandaged %1", "colorAction"};
- action = "PlayerCraft";
- onComplete = "[false,_target] call medical_playerBandage";
- useQuantity = 1;
- };
- };
- };
- class Medical_BandageDressing: Medical_Bandage {
- model = "\dz\gear\medical\Bandage_dressing.p3d";
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\bandage_dressing.rtm"};
- stackedMax = 1;
- class UserActions: UserActions {
- class SelfBandage: SelfBandage {
- useQuantity = 0.250000;
- };
- class ApplyBandage: ApplyBandage {
- useQuantity = 0.250000;
- };
- };
- };
- class Medical_DisinfectantSpray: MedicalItemBase {
- scope = 2;
- displayName = "Disinfectant Spray";
- descriptionShort = "The label reads: "kills viruses and bacteria on environmental surfaces in your home and in public places. It eliminates germs and odours on hard non-porous surfaces that you come in contact with every day"";
- model = "\dz\gear\medical\DisinfectantSpray.p3d";
- rotateDropped = 1;
- itemSize = {1, 2};
- handheld = 1;
- armAction = "Disarm";
- stackedMax = 1;
- disinfectionEfficiency = 0.800000;
- class UserActions: UserActions {
- class Consume: Consume {
- displayNameDefault = "Drink";
- displayName = "Drink";
- messages = {"The %1 is empty", "colorStatusChannel", "You have drink some %1", "colorAction"};
- useQuantity = 0.100000;
- onComplete = "[0,_person,'ChemicalPoisoning'] call event_modifier;";
- };
- class ForceDrink: ActionOnTarget {
- displayNameDefault = "Force drink";
- displayName = "Force drink";
- useQuantity = 0.100000;
- onComplete = "[0,_target,'ChemicalPoisoning'] call event_modifier;";
- };
- class SprayOnTarget: ActionOnTarget {
- displayNameDefault = "Apply spray";
- displayName = "Spray";
- messages = {"You cannot disinfect a dead person", "colorStatusChannel", "%1 starts spraying disinfection on you", "colorFriendly", "You start to spraying disinfection on %1", "colorAction", "%1 moved from the effective reach of spray spurt ", "colorImportant", "%1 has successfully disinfected your clothes", "colorFriendly", "You successfully disinfected clothes of %1", "colorAction"};
- useQuantity = 0.100000;
- };
- };
- };
- class Medical_DisinfectantAlcohol: MedicalItemBase {
- scope = 2;
- displayName = "Alcohol Tincture";
- descriptionShort = "Home proven alcohol-based tincture of natural essential oils, their substances and also some aromatic extracts. Can be used for disinfection of scratches and wounds or diluted for refreshing bath.";
- model = "\dz\gear\medical\alfa.p3d";
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\tools\hammer_ik.rtm"};
- itemSize = {1, 1};
- stackedMax = 1;
- disinfectionEfficiency = 0.700000;
- class UserActions: UserActions {
- class Consume: Consume {
- displayNameDefault = "Drink";
- displayName = "Drink";
- messages = {"The %1 is empty", "colorStatusChannel", "You have drink some %1", "colorAction"};
- useQuantity = 0.100000;
- onComplete = "_poisonChance = random 1; switch true do {case (_poisonChance < 0.2): {[0,_person,'FoodPoisoning_MediumImpact'] call event_modifier;}; case (_poisonChance < 0.75): {[0,_person,'FoodPoisoning_LightImpact'] call event_modifier;};};";
- };
- class ForceDrink: ActionOnTarget {
- displayNameDefault = "Force drink";
- displayName = "Force drink";
- useQuantity = 0.100000;
- onComplete = "_poisonChance = random 1; switch true do {case (_poisonChance < 0.2): {[0,_target,'FoodPoisoning_MediumImpact'] call event_modifier;}; case (_poisonChance < 0.75): {[0,_target,'FoodPoisoning_LightImpact'] call event_modifier;};};";
- };
- class SprayOnTarget: ActionOnTarget {
- displayNameDefault = "Apply tincture";
- displayName = "Apply tincture";
- messages = {"You cannot disinfect a dead person", "colorStatusChannel", "%1 starts spraying disinfection on you", "colorFriendly", "You start to spraying disinfection on %1", "colorAction", "%1 moved from the effective reach of spray spurt ", "colorImportant", "%1 has successfully disinfected your clothes", "colorFriendly", "You successfully disinfected clothes of %1", "colorAction"};
- onComplete = "[1,_target,'WoundInfection'] call event_modifier;[2,_person,'WoundInfection',3] call event_modifier;";
- useQuantity = 0.100000;
- };
- class CleanWounds: ActionOnSelf {
- displayNameDefault = "Clean wounds";
- displayName = "Clean wounds";
- messages = {"The %1 is empty", "colorStatusChannel", "You have used some %1 to clean wounds", "colorAction"};
- useQuantity = 0.100000;
- onComplete = "[1,_person,'WoundInfection'] call event_modifier;[2,_person,'WoundInfection',3] call event_modifier;";
- };
- };
- };
- class Medical_PurificationTablets: MedicalItemBase {
- scope = 2;
- displayName = "Water purification tablets";
- descriptionShort = "Often used to disinfect potentially unsafe water from common water-borne diseases. Uses hypochlorous acid for a safe and palatable result. One tablet per bottle.";
- itemSize = {1, 1};
- absorbency = 0.700000;
- stackedMax = 10;
- model = "\dz\gear\medical\Water_purification_tablets.p3d";
- class UserActions {
- };
- };
- class Medical_CharcoalTablets: MedicalItemBase {
- scope = 2;
- displayName = "Charcoal Tabs";
- descriptionShort = "Activated Carbon in form of tablets used to trapping chemicals to stop some types of poisoning when used as a part of standard treatment.";
- model = "\dz\gear\medical\charcoal_tablets.p3d";
- absorbency = 0.900000;
- stackedMax = 12;
- stackedUnit = "pills";
- class UserActions: UserActions {
- class Consume: Consume {
- displayNameDefault = "Consume Charcoal Tabs";
- displayName = "Consume";
- statusText = "You have consumed some %1";
- useQuantity = 2;
- onComplete = "[1,_person,'FoodPoisoning_MediumImpact'] call event_modifier;[1,_person,'FoodPoisoning_LightImpact'] call event_modifier;[2,_person,'FoodPoisoning_LightImpact',3] call event_modifier;";
- };
- class ForceFeed: ActionOnTarget {
- displayNameDefault = "Feed Charcoal Tabs";
- useQuantity = 2;
- onComplete = "[1,_target,'FoodPoisoning_MediumImpact'] call event_modifier;[1,_target,'FoodPoisoning_LightImpact'] call event_modifier;[2,_target,'FoodPoisoning_LightImpact',3] call event_modifier;";
- };
- };
- };
- class Medical_PainkillerTablets: MedicalItemBase {
- scope = 2;
- displayName = "Painkillers";
- descriptionShort = "A moderate painkiller suitable for regular use in relief of pain and inflammation cause by moderate wounds.";
- model = "\dz\gear\medical\painkillers2.p3d";
- absorbency = 0.700000;
- stackedMax = 12;
- stackedUnit = "pills";
- class UserActions: UserActions {
- class Consume: Consume {
- displayNameDefault = "Consume Painkillers";
- displayName = "Consume";
- statusText = "You have consumed some %1";
- useQuantity = 2;
- };
- class ForceFeed: ActionOnTarget {
- displayNameDefault = "Feed Painkillers";
- useQuantity = 2;
- };
- };
- };
- class Medical_VitaminBottle: MedicalItemBase {
- scope = 2;
- displayName = "Vitamin Bottle";
- descriptionShort = "A small plastic bottle with multi-vitamin pastilles. Covers vitamin A, C, D, E, K, B2, B5 and B12. Consult with your physician or pharmacist.";
- model = "\dz\gear\medical\VitaminBottle.p3d";
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\VitaminBottle.rtm"};
- rotateDropped = 1;
- stackedMax = 24;
- stackedUnit = "pills";
- class Medicine {
- prevention = 0.750000;
- treatment = 0.500000;
- diseaseExit = 0;
- };
- class UserActions: UserActions {
- class Consume: Consume {
- displayNameDefault = "Consume Vitamins";
- displayName = "Consume";
- statusText = "You have consumed some %1";
- onComplete = "[_itemType,_person] call event_clearModifiers;";
- useQuantity = 2;
- };
- class ForceFeed: ActionOnTarget {
- displayNameDefault = "Feed Vitamins";
- onComplete = "[_itemType,_target] call event_clearModifiers;";
- useQuantity = 2;
- };
- };
- };
- class Medical_TetracyclineAntibiotics: MedicalItemBase {
- scope = 2;
- displayName = "Tetracycline Antibiotics";
- descriptionShort = "Tetracycline is broad spectrum antibiotic used to treat or prevent certain bacterial infections.";
- model = "\dz\gear\medical\tetracycline.p3d";
- absorbency = 0.700000;
- stackedMax = 12;
- stackedUnit = "pills";
- class Medicine {
- prevention = 0;
- treatment = 0.900000;
- diseaseExit = 1;
- };
- class UserActions: UserActions {
- class Consume: Consume {
- displayNameDefault = "Consume Tetracycline";
- displayName = "Consume";
- statusText = "You have consumed some %1";
- onComplete = "[1,_person,'WoundInfection'] call event_modifier;[2,_person,'WoundInfection',3] call event_modifier;";
- useQuantity = 2;
- };
- class ForceFeed: ActionOnTarget {
- displayNameDefault = "Feed Tetracycline";
- onComplete = "[1,_target,'WoundInfection'] call event_modifier;[2,_target,'WoundInfection',3] call event_modifier;";
- useQuantity = 2;
- };
- };
- };
- class Medical_Epinephrine: MedicalItemBase {
- scope = 2;
- displayName = "Epinephrine";
- descriptionShort = "A self-administered emergency injection for treatment of life-threatening allergic reactions. Side effects may include increase in heart rate, stronger or irregular heartbeat, sweating, nausea and vomiting, difficulty breathing, paleness, dizziness, weakness or shakiness, headache, apprehension, nervousness or anxiety.";
- model = "\dz\gear\medical\Epinephrine.p3d";
- rotateDropped = 0;
- quantity = "";
- class UserActions: UserActions {
- class Consume: Consume {
- displayNameDefault = "Inject Epi-Pen";
- displayName = "Inject";
- statusText = "You have injected the %1";
- onComplete = "_person setVariable ['shock',0];";
- useQuantity = 1;
- action = "PlayerInjection";
- };
- class ApplyEpinephrine: ActionOnTarget {
- displayNameDefault = "Apply Epinephrine";
- displayName = "Epinephrine";
- sound = "action_bandage";
- messages = {"You cannot give Epinephrine injection to a dead person", "colorStatusChannel", "%1 starts injecting you", "colorFriendly", "You start injecting %1", "colorAction", "%1 moved and the Epinephrine fell off", "colorImportant", "%1 has successfully injected you", "colorFriendly", "You successfully injected %1", "colorAction"};
- action = "PlayerCraft";
- onComplete = "_target setVariable ['shock',0];";
- useQuantity = 1;
- };
- };
- };
- class Medical_Morphine: MedicalItemBase {
- scope = 2;
- displayName = "Morphine Auto-Injector";
- descriptionShort = "Pain management auto-injection system. Warning: May be habit forming!";
- model = "\dz\gear\medical\Morphine.p3d";
- rotateDropped = 0;
- quantity = "";
- class UserActions: UserActions {
- class Consume: Consume {
- displayNameDefault = "Inject Morphine";
- displayName = "Inject";
- statusText = "You have injected the %1";
- onComplete = "_person setDamage 0;";
- useQuantity = 1;
- action = "PlayerInjection";
- };
- class ApplyMorphine: ActionOnTarget {
- displayNameDefault = "Apply Morphine";
- displayName = "Morphine";
- sound = "action_bandage";
- messages = {"You cannot give Morphine injection to a dead person", "colorStatusChannel", "%1 starts injecting you", "colorFriendly", "You start injecting %1", "colorAction", "%1 moved and the Morphine fell off", "colorImportant", "%1 has successfully injected you", "colorFriendly", "You successfully injected %1", "colorAction"};
- action = "PlayerCraft";
- onComplete = "_person setDamage 0;";
- useQuantity = 1;
- };
- };
- };
- class Medical_Syringe: MedicalItemBase {
- scope = 2;
- displayName = "Syringe";
- descriptionShort = "Fitted with a hypodermic needle, this is commonly used with to inject substances into the body or extract fluids from it. This syringe does not appear to contain anything.";
- model = "\dz\gear\medical\syringe_empty.p3d";
- stackedMax = 1;
- quantity = "";
- unlimited = 0;
- class UserActions {
- class CollectSelfSample: ActionOnSelf {
- displayNameDefault = "Collect Your Sample";
- displayName = "Collect Your Sample";
- sound = "action_bandage";
- action = "PlayerInjection";
- messages = {"The %1 is empty", "colorStatusChannel", "You have used a %1 on yourself", "colorAction"};
- useQuantity = 1;
- trashItem = "";
- onComplete = "_item = ['Medical_SyringeBlood',_person] call player_addInventory;_item setVariable ['filledWith',_person getVariable 'bloodtype']";
- keepEmpty = 0;
- };
- class CollectTargetSample: ActionOnTarget {
- displayNameDefault = "Collect Sample";
- displayName = "Collect Sample";
- sound = "";
- messages = {"There is no target to take the sample from", "colorStatusChannel", "%1 starts taking a blood sample from you", "colorImportant", "You start to take a blood sample from %1", "colorAction", "%1 moved and no sample was taken", "colorImportant", "%1 has taken a blood sample from you", "colorImportant", "You successfully took a blood sample from %1", "colorAction"};
- action = "PlayerCraft";
- allowDead = 1;
- useQuantity = 1;
- onComplete = "_item = ['Medical_SyringeBlood',_person] call player_addInventory;_item setVariable ['filledWith',_target getVariable 'bloodtype']";
- };
- };
- };
- class SyringeBase: MedicalItemBase {
- displayName = "Filled Syringe";
- model = "\dz\gear\medical\syringe_Full.p3d";
- stackedMax = 0;
- quantity = "";
- storeVariables = {"note", "used", "filledWith"};
- synchronizedVariables = {"note", 0.500000, "used", 1};
- class UserActions {
- };
- hiddenSelections = {"camo"};
- hiddenSelectionsTextures = {"\dz\gear\medical\data\SyringeFluid_Grey_CA.paa"};
- };
- class Medical_SyringeClear: SyringeBase {
- scope = 2;
- hiddenSelectionsTextures = {"\dz\gear\medical\data\SyringeFluid_Grey_CA.paa"};
- descriptionShort = "Fitted with a hypodermic needle, this is commonly used with to inject substances into the body or extract fluids from it. This syringe contains a clear liquid.";
- };
- class Medical_SyringeBlood: SyringeBase {
- scope = 2;
- hiddenSelectionsTextures = {"\dz\gear\medical\data\SyringeFluid_Blood_CO.paa"};
- descriptionShort = "Fitted with a hypodermic needle, this is commonly used with to inject substances into the body or extract fluids from it. This syringe contains a thick red liquid.";
- };
- class Medical_InjectionVial: MedicalItemBase {
- scope = 2;
- displayName = "Injection Vial";
- descriptionShort = "Injection vial made of moulded borosilicate amber glass usually used to store medical solutions or antibiotics.";
- itemSize = {1, 1};
- model = "\dz\gear\medical\InjectionVial.p3d";
- stackedMax = 1;
- quantity = "";
- rotateDropped = 0;
- /*extern*/ class UserActions;
- };
- class BloodBase: MedicalItemBase {
- rotateDropped = 1;
- rotateAlways = 1;
- rotateInvert = 1;
- itemSize = {1, 2};
- stackedMax = 0;
- quantity = "";
- };
- class Medical_SalineBag: BloodBase {
- scope = 2;
- displayName = "Saline Bag";
- descriptionShort = "Sterile bag containing Isotonic saline (0.9%).";
- model = "\dz\gear\medical\SalineBag.p3d";
- class UserActions {
- };
- itemSize = {1, 1};
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\SalineBag.rtm"};
- };
- class Medical_StartKit: BloodBase {
- scope = 2;
- displayName = "IV Start Kit";
- descriptionShort = "All the items needed to facilitate intravenous delivery. Products are individually wrapped, conveniently assembled, sterilized and packaged to save valuable time.";
- model = "\dz\gear\medical\StartKit.p3d";
- class UserActions {
- };
- itemSize = {1, 1};
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\StartKit.rtm"};
- };
- class Medical_TransfusionKit: BloodBase {
- scope = 2;
- autoQuickbar = 1;
- displayName = "Saline Bag IV";
- descriptionShort = "Sterile bag containing Isotonic saline (0.9%) with connected intravenous delivery attachment. Already contains everything needed to administer a saline transfusion.";
- itemSize = {1, 2};
- model = "\dz\gear\medical\TransfusionKit.p3d";
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\TransfusionKit.rtm"};
- class UserActions {
- class GiveBlood: ActionOnTarget {
- displayNameDefault = "Give IV Saline";
- displayName = "Give IV Saline";
- sound = "";
- messages = {"You cannot insert an IV line into dead people", "colorStatusChannel", "%1 starts to insert an IV line into you", "colorFriendly", "You start to insert an IV line into %1", "colorAction", "%1 moved and the IV line came out!", "colorImportant", "%1 has successfully given you IV saline", "colorFriendly", "You successfully gave %1 IV saline", "colorAction"};
- action = "PlayerCraft";
- onComplete = "_target setVariable ['blood',5000];";
- };
- };
- };
- class Medical_BloodBag_Empty: BloodBase {
- scope = 2;
- autoQuickbar = 1;
- displayName = "Blood Bag Kit";
- descriptionShort = "A sterile medical bag for collecting blood. Contains CPDA Solution which prevents coagulant of blood. Contains everything required to collect whole blood donations.";
- model = "\dz\gear\medical\BloodBag_Sealed.p3d";
- itemSize = {1, 1};
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\BloodBag_Sealed.rtm"};
- class UserActions {
- class CollectBlood: ActionOnTarget {
- displayNameDefault = "Collect Blood";
- displayName = "Collect Blood";
- sound = "";
- messages = {"You cannot collect blood from dead people", "colorStatusChannel", "%1 starts to collect blood from you!", "colorImportant", "You start to collect blood from %1", "colorAction", "%1 moved during blood collection and the IV kit came out!", "colorImportant", "%1 has successfully collected blood from you!", "colorImportant", "You successfully fill a Blood Bag from %1", "colorAction"};
- action = "PlayerCraft";
- onComplete = "_bag = ['Medical_BloodBag_Full',_person] call player_addInventory;_bag setVariable['filledWith',_target getVariable 'bloodtype'];_target setVariable ['blood',(_target getVariable 'blood') - 1000];";
- };
- };
- };
- class Medical_BloodBag_Full: BloodBase {
- scope = 2;
- displayName = "Blood Bag";
- descriptionShort = "Whole blood product in CPDA Solution. Will last over a month when refrigerated, less than a day when not. Requires crafting on an IV Start Kit to administer transfusion.";
- model = "\dz\gear\medical\BloodBag_Full.p3d";
- class UserActions {
- };
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\BloodBag_Full.rtm"};
- storeVariables = {"note", "modifiers", "wet", "used", "filledWith"};
- };
- class Medical_BloodBag_IV: BloodBase {
- scope = 2;
- autoQuickbar = 1;
- displayName = "Blood Bag IV";
- descriptionShort = "Whole blood product with connected intravenous delivery attachment to administer a blood transfusion. Will last over a month when refrigerated, less than a day when not.";
- model = "\dz\gear\medical\BloodBag_Full_IV.p3d";
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\BloodBag_Full_IV.rtm"};
- class UserActions {
- class GiveBlood: ActionOnTarget {
- displayNameDefault = "Give Blood Transfusion";
- displayName = "Give Blood Transfusion";
- sound = "";
- messages = {"You cannot transfuse dead people", "colorStatusChannel", "%1 starts to insert an IV line into you", "colorFriendly", "You start to insert an IV line into %1", "colorAction", "%1 moved and the IV line came out!", "colorImportant", "%1 has successfully given you a blood transfusion", "colorFriendly", "You successfully gave %1 a blood transfusion", "colorAction"};
- action = "PlayerCraft";
- onComplete = "[itemInHands _person,_target] call event_bloodTransfusion;";
- };
- };
- storeVariables = {"note", "modifiers", "wet", "used", "filledWith"};
- };
- class Medical_BloodTest_Kit: BloodBase {
- scope = 2;
- autoQuickbar = 1;
- displayName = "Blood Test Kit";
- descriptionShort = "Single-use blood type test kit contains everything needed to perform a complete blood test for ABO and Rh. It's a quick way to identify your blood type.";
- itemSize = {1, 1};
- stackedMax = 1;
- quantity = "";
- unlimited = 0;
- model = "\dz\gear\medical\BloodTest_Kit.p3d";
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\BloodTest_Kit.rtm"};
- class UserActions {
- class TestSelfBlood: ActionOnSelf {
- displayNameDefault = "Test Your Blood";
- displayName = "Test Your Blood";
- sound = "action_bandage";
- action = "playerbandage";
- messages = {"The %1 is empty", "colorStatusChannel", "You have used a %1 on yourself", "colorAction"};
- useQuantity = 1;
- trashItem = "";
- onComplete = "[_person,format ['Your blood type is %1',getText (configFile >> 'cfgSolutions' >> (_person getVariable 'bloodtype') >> 'displayName')],'colorAction'] call fnc_playerMessage;";
- };
- class TestTargetBlood: ActionOnTarget {
- displayNameDefault = "Test Blood";
- displayName = "Test Blood";
- sound = "action_bandage";
- action = "PlayerCraft";
- messages = {"You cannot test blood from dead people", "colorStatusChannel", "%1 starts to test your blood", "colorImportant", "You start to test %1 blood", "colorAction", "%1 moved during blood test and ruined the test kit!", "colorImportant", "%1 has successfully tested your blood", "colorImportant", "You successfully tested %1 blood", "colorAction"};
- useQuantity = 1;
- trashItem = "";
- onComplete = "[_person,format ['Blood type of %1 is %2',name _target,(getText (configFile >> 'cfgSolutions' >> (_target getVariable 'bloodtype') >> 'displayName'))],'colorAction'] call fnc_playerMessage;";
- };
- };
- };
- class Medical_Splint: MedicalItemBase {
- scope = 2;
- displayName = "Splint";
- descriptionShort = "Primitive splint. It gets the job done, but your broken limb will never feel the same.";
- model = "\dz\gear\medical\improvised_fixture.p3d";
- itemSize = {3, 1};
- absorbency = 0.300000;
- rotateDropped = 1;
- rotateAlways = 1;
- handheld = 1;
- armAction = "Disarm";
- handAnim = {"OFP2_ManSkeleton", "\DZ\anims\data\anim\sdr\ik\medical\bandage_dressing.rtm"};
- stackedMax = 0;
- quantity = "";
- class AnimationSources {
- class cover {
- source = "user";
- animPeriod = 0.500000;
- initPhase = 1;
- };
- };
- class UserActions {
- class SplintSelf: ActionOnSelf {
- displayNameDefault = "Fix my broken limbs";
- displayName = "Use";
- sound = "bandage_0";
- action = "PlayerCraft";
- keepEmpty = 0;
- unlimited = 1;
- useQuantity = 0;
- messages = {"The %1 is empty", "colorStatusChannel", "I've fixed my legs.", "colorAction"};
- onComplete = "_person setDamage 0;";
- };
- class SplintTarget: ActionOnTarget {
- displayNameDefault = "Apply splint";
- displayName = "Use on";
- condition = "playerTarget owner _person isKindOf 'SurvivorBase'";
- sound = "bandage_0";
- keepEmpty = 0;
- useQuantity = 0;
- messages = {"%1s wasn't able to aply the splint.", "colorStatusChannel", "%1 starts applying the splint.", "colorImportant", "You start applying the splint to %1s broken limb.", "colorAction", "%1 moved and whole applying process was thwarted", "colorImportant", "%1 has fixed your broken limb.", "colorImportant", "You've fixed %1s broken limbs.", "colorAction"};
- action = "PlayerCraft";
- onComplete = "_target setDamage 0;";
- };
- };
- };
- class Medical_Defibrillator: MedicalItemBase {
- scope = 2;
- displayName = "Defibrillator";
- descriptionShort = "Electrical defibrillator manufactured by the AccuMed Corporation. Read instructions carefully! If needed, shave the chest of the patient before use.";
- model = "\dz\gear\medical\Defibrillator.p3d";
- itemSize = {2, 2};
- attachments = {"BatteryD"};
- energyResources = {{"power", 0.100000}};
- absorbency = 0.300000;
- quantity = "";
- stackedMax = 0;
- rotateDropped = 0;
- class EventHandlers {
- PowerOn = "(_this select 0) switchLight 'ON'";
- PowerOff = "(_this select 0) switchLight 'OFF'";
- };
- class UserActions {
- class TurnOn: DefaultAction {
- displayNameDefault = "Turn On";
- showWindow = 0;
- displayName = "Turn On";
- condition = "!isOn this";
- statement = "this powerOn true";
- };
- class TurnOff: DefaultAction {
- displayNameDefault = "Turn Off";
- showWindow = 0;
- displayName = "Turn Off";
- condition = "isOn this";
- statement = "this powerOn false";
- };
- class UseDefibrillator: ActionOnSelf {
- displayNameDefault = "Use";
- displayName = "Use";
- soundEffects = {};
- action = "PlayerCraft";
- messages = {"The %1 is empty", "colorStatusChannel", "You have used a %1", "colorAction"};
- condition = "isOn this";
- onComplete = "_person call player_applyDefibrillator;";
- keepEmpty = 1;
- useQuantity = 0;
- };
- class ApplyDefibrillator: ActionOnTarget {
- displayNameDefault = "Apply Defibrillator";
- displayName = "Defibrillator";
- sound = "action_bandage";
- action = "PlayerCraft";
- messages = {"You cannot use Defibrillator a dead person", "colorStatusChannel", "%1 starts defibrillating you", "colorFriendly", "You start defibrillating %1", "colorAction", "%1 moved and the Defibrillator fell off", "colorImportant", "%1 has successfully defibrillated you", "colorFriendly", "You successfully defibrillated %1", "colorAction"};
- condition = "isOn this";
- onComplete = "_target call player_applyDefibrillator;";
- keepEmpty = 1;
- useQuantity = 0;
- };
- };
- };
- };
- enum {
- destructengine = 2,
- destructdefault = 6,
- destructwreck = 7,
- destructtree = 3,
- destructtent = 4,
- stabilizedinaxisx = 1,
- stabilizedinaxisy = 2,
- destructno = 0,
- stabilizedinaxesboth = 3,
- stabilizedinaxesnone = 0,
- destructman = 5,
- destructbuilding = 1
- }
Advertisement
Add Comment
Please, Sign In to add comment