2015-02-21 20:09:57 +00:00
2015-02-21 23:25:07 +00:00
class ACE_Medical_Actions {
class Basic {
2015-02-22 16:45:46 +00:00
class Bandage {
2015-02-21 23:25:07 +00:00
treatmentLocations [ ] = { " Field " , " MedicalFacility " , " MedicalVehicle " } ;
2015-02-22 16:45:46 +00:00
2015-02-21 23:25:07 +00:00
requiredMedic = 0 ;
treatmentTime = 5 ;
2015-02-22 16:45:46 +00:00
treatmentTimeSelfCoef = 1 ;
2015-02-22 17:46:49 +00:00
items [ ] = { { QGVAR ( fieldDressing ) , QGVAR ( packingBandage ) , QGVAR ( elasticBandage ) , QGVAR ( quikClot ) } } ;
2015-02-22 16:45:46 +00:00
itemConsumed = 1 ;
callbackSuccess = QUOTE ( _this call FUNC ( treatmentBasic_bandage ) ) ;
callbackFailure = QUOTE ( _this call FUNC ( treatmentBasic_abort ) ) ;
callbackProgress = " " ;
2015-02-21 23:25:07 +00:00
animationPatient = " " ;
animationCaller = " " ;
} ;
2015-02-22 16:45:46 +00:00
class Morphine : Bandage {
treatmentTime = 2 ;
items [ ] = { QGVAR ( morphine ) } ;
callbackSuccess = QUOTE ( _this call FUNC ( treatmentBasic_morphine ) ) ;
animationCaller = " " ; // @todo
} ;
class Epipen : Bandage {
treatmentTime = 3 ;
2015-02-22 17:46:49 +00:00
items [ ] = { QGVAR ( epinephrine ) } ;
2015-02-22 16:45:46 +00:00
callbackSuccess = QUOTE ( _this call FUNC ( treatmentBasic_epipen ) ) ;
animationCaller = " " ; // @todo
} ;
class Bloodbag : Bandage {
treatmentTime = 20 ;
2015-02-22 17:46:49 +00:00
items [ ] = { { QGVAR ( bloodIV ) , QGVAR ( bloodIV_500 ) , QGVAR ( bloodIV_250 ) } } ;
2015-02-22 16:45:46 +00:00
callbackSuccess = QUOTE ( _this call FUNC ( treatmentBasic_bloodbag ) ) ;
animationCaller = " " ; // @todo
} ;
class Diagnose : Bandage {
treatmentTime = 10 ;
treatmentTimeSelfCoef = 0 ;
items [ ] = { } ;
callbackSuccess = QUOTE ( _this call FUNC ( treatmentBasic_diagnose ) ) ;
animationCaller = " " ; // @todo
} ;
2015-02-21 23:25:07 +00:00
} ;
class Advanced {
2015-02-22 17:33:46 +00:00
// cse_surgical_kit cse_bandage_basic cse_packing_bandage cse_bandageElastic cse_tourniquet cse_splint cse_morphine cse_atropine cse_epinephrine cse_plasma_iv cse_plasma_iv_500 cse_plasma_iv250 cse_blood_iv cse_blood_iv_500 cse_blood_iv_250 cse_saline_iv cse_saline_iv_500 cse_saline_iv_250 cse_quikclot cse_nasopharyngeal_tube cse_opa cse_liquidSkin cse_chestseal cse_personal_aid_kit
class FieldDressing {
2015-02-21 23:25:07 +00:00
// Which locations can this treatment action be used? Available: Field, MedicalFacility, MedicalVehicle, All.
2015-02-22 17:33:46 +00:00
treatmentLocations [ ] = { " All " } ;
2015-02-21 23:25:07 +00:00
// What is the level of medical skill required for this treatment action? 0 = all soldiers, 1 = medic, 2 = doctor
requiredMedic = 0 ;
// The time it takes for a treatment action to complete. Time is in seconds.
treatmentTime = 5 ;
// Item required for the action. Leave empty for no item required.
2015-02-22 17:33:46 +00:00
items [ ] = { QGVAR ( fieldDressing ) } ;
2015-02-21 23:25:07 +00:00
// Callbacks
2015-02-23 09:23:09 +00:00
callbackSuccess = QUOTE ( DFUNC ( treatmentAdvanced_bandage ) ) ;
2015-02-22 17:33:46 +00:00
callbackFailure = " " ;
2015-02-22 16:45:46 +00:00
callbackProgress = " " ;
2015-02-21 23:25:07 +00:00
animationPatient = " " ;
2015-02-22 17:33:46 +00:00
animationCaller = " " ; // TODO
2015-02-22 17:34:59 +00:00
itemConsumed = 1 ;
2015-02-22 17:33:46 +00:00
} ;
class PackingBandage : fieldDressing {
items [ ] = { QGVAR ( packingBandage ) } ;
} ;
class ElasticBandage : fieldDressing {
items [ ] = { QGVAR ( elasticBandage ) } ;
} ;
class QuikClot : fieldDressing {
items [ ] = { QGVAR ( quikClot ) } ;
} ;
class Tourniquet : fieldDressing {
items [ ] = { QGVAR ( tourniquet ) } ;
treatmentTime = 6 ;
2015-02-23 09:23:09 +00:00
callbackSuccess = QUOTE ( DFUNC ( treatmentTourniquet ) ) ;
2015-02-22 17:33:46 +00:00
} ;
class Morphine : fieldDressing {
items [ ] = { QGVAR ( morphine ) } ;
treatmentTime = 3 ;
2015-02-23 09:23:09 +00:00
callbackSuccess = QUOTE ( DFUNC ( treatmentAdvanced_medication ) ) ;
2015-02-22 17:33:46 +00:00
} ;
class Atropine : fieldDressing {
items [ ] = { QGVAR ( atropine ) } ;
} ;
class Epinephrine : fieldDressing {
items [ ] = { QGVAR ( epinephrine ) } ;
} ;
class BloodIV : fieldDressing {
items [ ] = { QGVAR ( bloodIV ) } ;
requiredMedic = 1 ;
treatmentTime = 7 ;
2015-02-23 09:23:09 +00:00
callbackSuccess = QUOTE ( DFUNC ( treatmentIV ) ) ;
2015-02-22 17:33:46 +00:00
} ;
class BloodIV_500 : BloodIV {
items [ ] = { QGVAR ( bloodIV_500 ) } ;
2015-02-21 23:25:07 +00:00
} ;
2015-02-22 17:33:46 +00:00
class BloodIV_250 : BloodIV {
items [ ] = { QGVAR ( bloodIV_250 ) } ;
} ;
class PlasmaIV : BloodIV {
items [ ] = { QGVAR ( plasmaIV ) } ;
} ;
class PlasmaIV_500 : PlasmaIV {
items [ ] = { QGVAR ( plasmaIV_500 ) } ;
} ;
class PlasmaIV_250 : PlasmaIV {
items [ ] = { QGVAR ( plasmaIV_250 ) } ;
} ;
class SalineIV : BloodIV {
items [ ] = { QGVAR ( salineIV ) } ;
} ;
class SalineIV_500 : SalineIV {
items [ ] = { QGVAR ( salineIV_500 ) } ;
} ;
class SalineIV_250 : SalineIV {
items [ ] = { QGVAR ( salineIV_250 ) } ;
} ;
class SurgicalKit : fieldDressing {
items [ ] = { QGVAR ( surgicalKit ) } ;
treatmentLocations [ ] = { " MedicalFacility " , " MedicalVehicle " } ;
requiredMedic = 2 ;
treatmentTime = 15 ;
2015-02-23 09:23:09 +00:00
callbackSuccess = QUOTE ( DFUNC ( treatmentAdvanced_surgicalKit ) ) ;
2015-02-22 17:34:59 +00:00
itemConsumed = 0 ;
2015-02-22 17:33:46 +00:00
} ;
class PersonalAidKit : fieldDressing {
items [ ] = { QGVAR ( personalAidKit ) } ;
treatmentLocations [ ] = { " All " } ;
requiredMedic = 1 ;
treatmentTime = 15 ;
2015-02-23 09:23:09 +00:00
callbackSuccess = QUOTE ( DFUNC ( treatmentAdvanced_aidKit ) ) ;
2015-02-22 17:34:59 +00:00
itemConsumed = 0 ;
2015-02-22 17:33:46 +00:00
} ;
2015-02-23 19:35:36 +00:00
class CheckPulse : fieldDressing {
treatmentLocations [ ] = { " All " } ;
requiredMedic = 0 ;
treatmentTime = 2 ;
items [ ] = { } ;
callbackSuccess = QUOTE ( DFUNC ( actionCheckPulse ) ) ;
callbackFailure = " " ;
callbackProgress = " " ;
animationPatient = " " ;
animationCaller = " " ; // TODO
itemConsumed = 0 ;
} ;
class CheckBloodPressure : CheckPulse {
callbackSuccess = QUOTE ( DFUNC ( actionCheckBloodPressure ) ) ;
} ;
class CheckResponse : CheckPulse {
callbackSuccess = QUOTE ( DFUNC ( actionCheckResponse ) ) ;
} ;
class RemoveTourniquet : CheckPulse {
treatmentTime = 2.5 ;
callbackSuccess = QUOTE ( DFUNC ( actionRemoveTourniquet ) ) ;
} ;
2015-02-22 17:33:46 +00:00
2015-02-21 20:09:57 +00:00
} ;
} ;
2015-02-21 20:10:57 +00:00
class ACE_Medical_Advanced {
// Defines all the possible injury types for advanced medical
class Injuries {
// All the possible wounds
class wounds {
2015-02-21 23:25:07 +00:00
// Source: Scarle
// Also called scrapes, they occur when the skin is rubbed away by friction against another rough surface (e.g. rope burns and skinned knees).
class Abrasion {
name = " Scrape " ;
2015-02-21 20:10:57 +00:00
selections [ ] = { " All " } ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.0001 ;
pain = 0.1 ;
2015-02-21 23:25:07 +00:00
causes [ ] = { " falling " , " ropeburn " , " vehiclecrash " } ;
minDamage = 0.01 ;
2015-02-22 08:27:01 +00:00
class Minor {
minDamage = 0.01 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.0001 ;
2015-02-22 08:27:01 +00:00
} ;
class Medium {
minDamage = 0.2 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.00015 ;
2015-02-22 08:27:01 +00:00
} ;
class Large {
minDamage = 0.3 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.0002 ;
2015-02-22 08:27:01 +00:00
} ;
2015-02-21 23:25:07 +00:00
} ;
// Occur when an entire structure or part of it is forcibly pulled away, such as the loss of a permanent tooth or an ear lobe. Explosions, gunshots, and animal bites may cause avulsions.
class Avulsions {
name = " Avulsion " ;
selections [ ] = { " All " } ;
bleedingRate = 0.01 ;
pain = 1 ;
causes [ ] = { " explosive " , " vehiclecrash " , " grenade " , " shell " , " bullet " , " backblast " , " bite " } ;
minDamage = 0.2 ;
2015-02-22 08:27:01 +00:00
class Minor {
minDamage = 0.2 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.01 ;
2015-02-22 08:27:01 +00:00
} ;
class Medium {
minDamage = 0.3 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.02 ;
2015-02-22 08:27:01 +00:00
} ;
class Large {
minDamage = 0.5 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.05 ;
2015-02-22 08:27:01 +00:00
} ;
2015-02-21 23:25:07 +00:00
} ;
// Also called bruises, these are the result of a forceful trauma that injures an internal structure without breaking the skin. Blows to the chest, abdomen, or head with a blunt instrument (e.g. a football or a fist) can cause contusions.
class Contusion {
name = " Bruise " ;
selections [ ] = { " All " } ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.0 ;
2015-02-21 23:25:07 +00:00
pain = 1 ;
2015-02-22 11:21:27 +00:00
causes [ ] = { " bullet " , " backblast " , " punch " , " vehiclecrash " , " falling " } ;
2015-02-21 23:25:07 +00:00
minDamage = 0.01 ;
2015-02-22 08:27:01 +00:00
class Minor {
minDamage = 0.01 ;
} ;
class Medium {
minDamage = 0.1 ;
} ;
class Large {
minDamage = 0.3 ;
} ;
2015-02-21 23:25:07 +00:00
} ;
// Occur when a heavy object falls onto a person, splitting the skin and shattering or tearing underlying structures.
class CrushWound {
2015-02-22 11:25:28 +00:00
name = " Crushed tissue " ;
2015-02-21 23:25:07 +00:00
selections [ ] = { " All " } ;
bleedingRate = 0.01 ;
pain = 1 ;
causes [ ] = { " falling " , " vehiclecrash " , " punch " } ;
minDamage = 0.1 ;
2015-02-22 08:27:01 +00:00
class Minor {
minDamage = 0.1 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.005 ;
2015-02-22 08:27:01 +00:00
} ;
class Medium {
minDamage = 0.4 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.007 ;
2015-02-22 08:27:01 +00:00
} ;
class Large {
minDamage = 0.6 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.0095 ;
2015-02-22 08:27:01 +00:00
} ;
2015-02-21 23:25:07 +00:00
} ;
// Slicing wounds made with a sharp instrument, leaving even edges. They may be as minimal as a paper cut or as significant as a surgical incision.
class Cut {
name = " Cut " ;
selections [ ] = { " All " } ;
bleedingRate = 0.01 ;
pain = 1 ;
causes [ ] = { " vehiclecrash " , " grenade " , " explosive " , " shell " , " backblast " , " stab " } ;
minDamage = 0.1 ;
2015-02-22 08:27:01 +00:00
class Minor {
minDamage = 0.1 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.005 ;
2015-02-22 08:27:01 +00:00
} ;
class Medium {
minDamage = 0.3 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.02 ;
2015-02-22 08:27:01 +00:00
} ;
class Large {
minDamage = 0.65 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.05 ;
2015-02-22 08:27:01 +00:00
} ;
2015-02-21 23:25:07 +00:00
} ;
// Also called tears, these are separating wounds that produce ragged edges. They are produced by a tremendous force against the body, either from an internal source as in childbirth, or from an external source like a punch.
class Laceration {
name = " Tear " ;
selections [ ] = { " All " } ;
bleedingRate = 0.01 ;
pain = 1 ;
2015-02-22 08:40:36 +00:00
causes [ ] = { " vehiclecrash " , " punch " } ;
2015-02-21 23:25:07 +00:00
minDamage = 0.01 ;
2015-02-22 08:27:01 +00:00
class Minor {
minDamage = 0.1 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.005 ;
2015-02-22 08:27:01 +00:00
} ;
class Medium {
minDamage = 0.5 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.01 ;
2015-02-22 08:27:01 +00:00
} ;
class Large {
minDamage = 0.7 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.03 ;
2015-02-22 08:27:01 +00:00
} ;
2015-02-21 23:25:07 +00:00
} ;
// Also called velocity wounds, they are caused by an object entering the body at a high speed, typically a bullet or small peices of shrapnel.
class velocityWound {
name = " Velocity Wound " ;
selections [ ] = { " All " } ;
bleedingRate = 0.01 ;
pain = 1 ;
causes [ ] = { " bullet " , " grenade " , " explosive " , " shell " } ;
minDamage = 0.15 ;
2015-02-22 08:27:01 +00:00
class Minor {
minDamage = 0.15 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.025 ;
2015-02-22 08:27:01 +00:00
} ;
class Medium {
minDamage = 0.3 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.05 ;
2015-02-22 08:27:01 +00:00
} ;
class Large {
minDamage = 0.75 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.1 ;
2015-02-22 08:27:01 +00:00
} ;
2015-02-21 23:25:07 +00:00
} ;
// Deep, narrow wounds produced by sharp objects such as nails, knives, and broken glass.
class punctureWound {
name = " Puncture Wound " ;
selections [ ] = { " All " } ;
bleedingRate = 0.01 ;
pain = 1 ;
causes [ ] = { " stab " , " grenade " } ;
2015-02-21 20:10:57 +00:00
minDamage = 0.01 ;
2015-02-22 08:27:01 +00:00
class Minor {
minDamage = 0.01 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.01 ;
2015-02-22 08:27:01 +00:00
} ;
class Medium {
minDamage = 0.5 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.03 ;
2015-02-22 08:27:01 +00:00
} ;
class Large {
minDamage = 0.65 ;
2015-02-22 08:40:36 +00:00
bleedingRate = 0.08 ;
2015-02-22 08:27:01 +00:00
} ;
2015-02-21 20:10:57 +00:00
} ;
} ;
class fractures {
class Femur {
name = " Broken Femur " ;
selections [ ] = { " Head " , " Torso " } ;
pain = 20 ;
causes [ ] = { " Bullet " , " VehicleCrash " , " Backblast " , " Explosive " , " Shell " , " Grenade " } ;
minDamage = 0.5 ;
} ;
} ;
class damageTypes {
thresholds [ ] = { { 0.1 , 1 } } ;
selectionSpecific = 1 ;
class bullet {
// above damage, amount. Put the highest threshold to the left and lower the threshold with the elements to the right of it.
thresholds [ ] = { { 0.1 , 1 } } ;
selectionSpecific = 1 ;
} ;
class grenade {
thresholds [ ] = { { 0.1 , 3 } , { 0 , 1 } } ;
selectionSpecific = 0 ;
} ;
class explosive {
thresholds [ ] = { { 1 , 6 } , { 0.1 , 4 } , { 0 , 1 } } ;
selectionSpecific = 0 ;
} ;
class shell {
thresholds [ ] = { { 1 , 7 } , { 0.1 , 5 } , { 0 , 1 } } ;
selectionSpecific = 0 ;
} ;
class vehiclecrash {
thresholds [ ] = { { 0.25 , 5 } } ;
selectionSpecific = 0 ;
} ;
2015-02-21 23:25:07 +00:00
class backblast {
thresholds [ ] = { { 0.25 , 5 } } ;
selectionSpecific = 0 ;
} ;
class stab {
thresholds [ ] = { { 0.1 , 1 } } ;
selectionSpecific = 1 ;
} ;
class punch {
thresholds [ ] = { { 0.1 , 1 } } ;
selectionSpecific = 1 ;
} ;
class falling {
thresholds [ ] = { { 0.1 , 1 } } ;
selectionSpecific = 1 ;
} ;
class ropeburn {
thresholds [ ] = { { 0.1 , 1 } } ;
selectionSpecific = 1 ;
} ;
2015-02-21 20:10:57 +00:00
} ;
} ;
class Treatment {
class Bandaging {
2015-02-22 17:33:46 +00:00
class FieldDressing {
2015-02-21 20:10:57 +00:00
// How effect is the bandage for treating one wounds type injury
effectiveness = 1 ;
// What is the chance and delays (in seconds) of the treated default injury reopening
reopeningChance = 0.1 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 200 ;
2015-02-22 17:33:46 +00:00
class Abrasion {
effectiveness = 1 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class Avulsions : Abrasion {
effectiveness = 0.3 ;
reopeningChance = 0.5 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 200 ;
} ;
class Contusion : Abrasion {
effectiveness = 1 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class CrushWound : Abrasion {
effectiveness = 0.6 ;
reopeningChance = 0.2 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 200 ;
} ;
class Cut : Abrasion {
effectiveness = 0.4 ;
reopeningChance = 0.5 ;
reopeningMinDelay = 220 ;
reopeningMaxDelay = 260 ;
} ;
class Laceration : Abrasion {
effectiveness = 0.7 ;
reopeningChance = 0.3 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 260 ;
} ;
class velocityWound : Abrasion {
effectiveness = 0.3 ;
reopeningChance = 0.8 ;
reopeningMinDelay = 20 ;
reopeningMaxDelay = 300 ;
} ;
class punctureWound : Abrasion {
effectiveness = 0.5 ;
reopeningChance = 0.8 ;
reopeningMinDelay = 20 ;
reopeningMaxDelay = 300 ;
} ;
} ;
class PackingBandage : fieldDressing {
class Abrasion {
effectiveness = 1 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class Avulsions : Abrasion {
effectiveness = 1 ;
reopeningChance = 0.3 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 200 ;
} ;
class Contusion : Abrasion {
effectiveness = 1 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class CrushWound : Abrasion {
effectiveness = 0.6 ;
reopeningChance = 0.2 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 200 ;
} ;
class Cut : Abrasion {
effectiveness = 0.2 ;
reopeningChance = 0.6 ;
reopeningMinDelay = 30 ;
reopeningMaxDelay = 260 ;
} ;
class Laceration : Abrasion {
effectiveness = 0.3 ;
reopeningChance = 0.3 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 260 ;
} ;
class velocityWound : Abrasion {
effectiveness = 1 ;
reopeningChance = 0.5 ;
reopeningMinDelay = 20 ;
reopeningMaxDelay = 300 ;
} ;
class punctureWound : Abrasion {
effectiveness = 0.3 ;
reopeningChance = 0.5 ;
reopeningMinDelay = 20 ;
reopeningMaxDelay = 300 ;
} ;
} ;
class ElasticBandage : fieldDressing {
class Abrasion {
2015-02-21 20:10:57 +00:00
effectiveness = 1 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
2015-02-22 17:33:46 +00:00
class Avulsions : Abrasion {
effectiveness = 0.3 ;
reopeningChance = 0.4 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 200 ;
} ;
class Contusion : Abrasion {
effectiveness = 1 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class CrushWound : Abrasion {
effectiveness = 1 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class Cut : Abrasion {
effectiveness = 1 ;
reopeningChance = 0.2 ;
reopeningMinDelay = 10 ;
reopeningMaxDelay = 400 ;
} ;
class Laceration : Abrasion {
effectiveness = 1 ;
reopeningChance = 0.3 ;
reopeningMinDelay = 120 ;
reopeningMaxDelay = 260 ;
} ;
class velocityWound : Abrasion {
effectiveness = 0.5 ;
reopeningChance = 0.5 ;
reopeningMinDelay = 20 ;
reopeningMaxDelay = 300 ;
} ;
class punctureWound : Abrasion {
effectiveness = 0.85 ;
reopeningChance = 0.5 ;
reopeningMinDelay = 20 ;
reopeningMaxDelay = 300 ;
} ;
2015-02-21 20:10:57 +00:00
} ;
2015-02-22 17:33:46 +00:00
class QuikClot : fieldDressing {
class Abrasion {
effectiveness = 0.7 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class Avulsions : Abrasion {
effectiveness = 0.2 ;
reopeningChance = 0.1 ;
reopeningMinDelay = 300 ;
reopeningMaxDelay = 350 ;
} ;
class Contusion : Abrasion {
effectiveness = 0.7 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class CrushWound : Abrasion {
effectiveness = 0.7 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class Cut : Abrasion {
effectiveness = 0.7 ;
reopeningChance = 0.2 ;
reopeningMinDelay = 100 ;
reopeningMaxDelay = 400 ;
} ;
class Laceration : Abrasion {
effectiveness = 0.7 ;
reopeningChance = 0 ;
reopeningMinDelay = 0 ;
reopeningMaxDelay = 0 ;
} ;
class velocityWound : Abrasion {
effectiveness = 0.7 ;
reopeningChance = 0.1 ;
reopeningMinDelay = 200 ;
reopeningMaxDelay = 300 ;
} ;
class punctureWound : Abrasion {
effectiveness = 0.5 ;
reopeningChance = 0.1 ;
reopeningMinDelay = 200 ;
reopeningMaxDelay = 300 ;
} ;
} ;
2015-02-21 20:10:57 +00:00
} ;
class Medication {
// How much does the pain get reduced?
painReduce = 0 ;
// How much will the heart rate be increased when the HR is low (below 55)? {minIncrease, maxIncrease, seconds}
hrIncreaseLow [ ] = { 10 , 20 , 35 } ;
hrIncreaseNormal [ ] = { 10 , 50 , 40 } ;
hrIncreaseHigh [ ] = { 10 , 40 , 50 } ;
// How long until this medication has disappeared
timeInSystem = 120 ;
// How many of this type of medication can be in the system before the patient overdoses?
maxDose = 4 ;
// specific details for the ACE_Morphine treatment action.
2015-02-22 17:33:46 +00:00
class Morphine {
2015-02-21 20:10:57 +00:00
painReduce = 1 ;
2015-02-22 17:33:46 +00:00
hrIncreaseLow [ ] = { - 10 , - 30 , 35 } ;
hrIncreaseNormal [ ] = { - 10 , - 50 , 40 } ;
hrIncreaseHigh [ ] = { - 10 , - 40 , 50 } ;
2015-02-21 20:10:57 +00:00
timeInSystem = 120 ;
maxDose = 4 ;
2015-02-22 17:33:46 +00:00
inCompatableMedication [ ] = { } ;
} ;
class Epinephrine {
painReduce = 1 ;
hrIncreaseLow [ ] = { 10 , 20 , 30 } ;
hrIncreaseNormal [ ] = { 10 , 50 , 20 } ;
hrIncreaseHigh [ ] = { 10 , 40 , 10 } ;
timeInSystem = 120 ;
maxDose = 10 ;
inCompatableMedication [ ] = { } ;
} ;
class Atropine {
painReduce = 1 ;
hrIncreaseLow [ ] = { - 10 , - 20 , 15 } ;
hrIncreaseNormal [ ] = { - 10 , - 50 , 20 } ;
hrIncreaseHigh [ ] = { - 10 , - 40 , 10 } ;
timeInSystem = 120 ;
maxDose = 6 ;
inCompatableMedication [ ] = { } ;
2015-02-21 20:10:57 +00:00
} ;
} ;
class IV {
// volume is in millileters
volume = 1000 ;
ratio [ ] = { } ;
type = " Blood " ;
2015-02-22 17:33:46 +00:00
class BloodIV {
2015-02-21 20:10:57 +00:00
volume = 1000 ;
ratio [ ] = { " Plasma " , 1 } ;
} ;
2015-02-22 17:33:46 +00:00
class BloodIV_500 : BloodIV {
2015-02-21 20:10:57 +00:00
volume = 500 ;
} ;
2015-02-22 17:33:46 +00:00
class BloodIV_250 : BloodIV {
2015-02-21 20:10:57 +00:00
volume = 250 ;
} ;
2015-02-22 17:33:46 +00:00
class PlasmaIV : BloodIV {
2015-02-21 20:10:57 +00:00
volume = 1000 ;
ratio [ ] = { " Blood " , 1 } ;
type = " Plasma " ;
} ;
2015-02-22 17:33:46 +00:00
class PlasmaIV_500 : PlasmaIV {
2015-02-21 20:10:57 +00:00
volume = 500 ;
} ;
2015-02-22 17:33:46 +00:00
class PlasmaIV_250 : PlasmaIV {
2015-02-21 20:10:57 +00:00
volume = 250 ;
} ;
2015-02-22 17:33:46 +00:00
class SalineIV : BloodIV {
2015-02-21 20:10:57 +00:00
volume = 1000 ;
type = " Saline " ;
2015-02-22 17:33:46 +00:00
ratio [ ] = { } ;
2015-02-21 20:10:57 +00:00
} ;
2015-02-22 17:33:46 +00:00
class SalineIV_500 : SalineIV {
2015-02-21 20:10:57 +00:00
volume = 500 ;
} ;
2015-02-22 17:33:46 +00:00
class SalineIV_250 : SalineIV {
2015-02-21 20:10:57 +00:00
volume = 250 ;
} ;
} ;
} ;
} ;