mirror of
https://github.com/EpochModTeam/Epoch.git
synced 2024-08-30 18:22:13 +00:00
37 lines
1.5 KiB
Plaintext
37 lines
1.5 KiB
Plaintext
// EPOCH_giveAttributes
|
|
//[[[cog import generate_private_arrays ]]]
|
|
private ["_addPlus","_celcuis","_celcuisNew","_currentVal","_customVarIndex","_data","_limits","_max","_min","_newValue","_return","_varName"];
|
|
//[[[end]]]
|
|
params ["_selectedVarName",["_data",0],["_randomizeData",0]];
|
|
_addPlus = if (_data > 0) then {"+"} else {""};
|
|
_return = "";
|
|
_customVarIndex = EPOCH_customVars find _selectedVarName;
|
|
if (_customVarIndex != -1) then {
|
|
_varName = format["EPOCH_player%1",_selectedVarName];
|
|
_limits = EPOCH_customVarLimits select _customVarIndex;
|
|
_limits params [["_max",100],["_min",0]];
|
|
if (_max isEqualType "") then {
|
|
_max = missionNamespace getVariable [_max, 0];
|
|
};
|
|
if (_min isEqualType "") then {
|
|
_min = missionNamespace getVariable [_min, 0];
|
|
};
|
|
_currentVal = missionNamespace getVariable [_varName, EPOCH_defaultVars select _customVarIndex];
|
|
if (_randomizeData isEqualTo 1) then {
|
|
_data = round(random _data);
|
|
};
|
|
if (_data != 0) then {
|
|
_newValue = ((_currentVal + _data) min _max) max _min;
|
|
missionNamespace setVariable [_varName, _newValue];
|
|
if (_selectedVarName == "Temp") then {
|
|
_celcuis = _data call EPOCH_convertTemp;
|
|
_celcuisNew = _newValue call EPOCH_convertTemp;
|
|
_return = format["%1: %2%3 (%4 °F) %2%5 (%6 °C)",(localize format["str_epoch_pvar_%1",_selectedVarName]),_addPlus,_data,_newValue,_celcuis,_celcuisNew];
|
|
} else {
|
|
_return = format["%1: %2%3 (%4/%5)", (localize format["str_epoch_pvar_%1",_selectedVarName]), _addPlus, _data, _newValue, _max];
|
|
};
|
|
};
|
|
};
|
|
|
|
_return
|