mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
0e26755b88
* add medical category to arsenal * function header Co-authored-by: PabstMirror <pabstmirror@gmail.com> * move to preinit, protect list * improve macro * documentation * add config property * add CfgMagazines * Revert "add CfgMagazines" Arsenal doesn't support magazines in custom categories --------- Co-authored-by: GhostIsSpooky <69561145+Salluci@users.noreply.github.com> Co-authored-by: PabstMirror <pabstmirror@gmail.com>
59 lines
2.1 KiB
C++
59 lines
2.1 KiB
C++
#define COMPONENT medical_treatment
|
|
#define COMPONENT_BEAUTIFIED Medical Treatment
|
|
#include "\z\ace\addons\main\script_mod.hpp"
|
|
|
|
// #define DEBUG_MODE_FULL
|
|
// #define DISABLE_COMPILE_CACHE
|
|
// #define ENABLE_PERFORMANCE_COUNTERS
|
|
|
|
#ifdef DEBUG_ENABLED_MEDICAL_TREATMENT
|
|
#define DEBUG_MODE_FULL
|
|
#endif
|
|
|
|
#ifdef DEBUG_SETTINGS_MEDICAL_TREATMENT
|
|
#define DEBUG_SETTINGS DEBUG_SETTINGS_MEDICAL_TREATMENT
|
|
#endif
|
|
|
|
#include "\z\ace\addons\medical_engine\script_macros_medical.hpp"
|
|
#include "\z\ace\addons\main\script_macros.hpp"
|
|
|
|
// Returns a text config entry as compiled code or variable from missionNamespace
|
|
#define GET_FUNCTION(var,cfg) \
|
|
private var = getText (cfg); \
|
|
if (isNil var) then { \
|
|
var = compile var; \
|
|
} else { \
|
|
var = missionNamespace getVariable var; \
|
|
}
|
|
|
|
// Returns a number config entry with default value of 0
|
|
// If entry is a string, will get the variable from missionNamespace
|
|
#define GET_NUMBER_ENTRY(cfg) \
|
|
if (isText (cfg)) then { \
|
|
missionNamespace getVariable [getText (cfg), 0]; \
|
|
} else { \
|
|
getNumber (cfg); \
|
|
}
|
|
|
|
// Macros for checking if unit is in medical vehicle or facility
|
|
// Defined mostly to make location check in canTreat more readable
|
|
#define IN_MED_VEHICLE(unit) (unit call FUNC(isInMedicalVehicle))
|
|
#define IN_MED_FACILITY(unit) (unit call FUNC(isInMedicalFacility))
|
|
|
|
#define TREATMENT_LOCATIONS_ALL 0
|
|
#define TREATMENT_LOCATIONS_VEHICLES 1
|
|
#define TREATMENT_LOCATIONS_FACILITIES 2
|
|
#define TREATMENT_LOCATIONS_VEHICLES_AND_FACILITIES 3
|
|
#define TREATMENT_LOCATIONS_NONE 4
|
|
|
|
#define LITTER_CLEANUP_CHECK_DELAY 30
|
|
#define BODY_CLEANUP_CHECK_DELAY 20
|
|
|
|
// Animations that would be played slower than this are instead played exactly as slow as this. (= Progress bar will take longer than the slowed down animation).
|
|
#define ANIMATION_SPEED_MIN_COEFFICIENT 0.5
|
|
|
|
// Animations that would be played faster than this are instead skipped. (= Progress bar too quick for animation).
|
|
#define ANIMATION_SPEED_MAX_COEFFICIENT 2.5
|
|
|
|
#define MEDICAL_TREATMENT_ITEMS (call (uiNamespace getVariable [QGVAR(treatmentItems), {[]}]))
|