ACE3/addons/medical_status/functions/fnc_adjustPainLevel.sqf
jonpas 742626ff1a
General - Relative script_component.hpp includes (#9378)
Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2023-09-12 20:58:10 +02:00

32 lines
758 B
Plaintext

#include "..\script_component.hpp"
/*
* Author: PabstMirror
* Interface to allow external modules to affect the pain level
* Sets the new pain level to the max between the input and current level
*
* Arguments:
* 0: The patient <OBJECT>
* 1: Desired pain level (0 .. 1) <NUMBER>
*
* Return Value:
* None
*
* Example:
* [guy, 0.5] call ace_medical_status_fnc_adjustPainLevel
*
* Public: No
*/
params ["_unit", "_desiredPainLevel"];
if (!local _unit) exitWith { ERROR("unit is not local"); };
TRACE_2("adjustPainLevel",_unit,_desiredPainLevel);
_desiredPainLevel = _desiredPainLevel * EGVAR(medical,painCoefficient);
private _pain = GET_PAIN(_unit);
_pain = 0 max (_pain max _desiredPainLevel) min 1;
_unit setVariable [VAR_PAIN, _pain];