Hey,
ich hatte langeweile und testete ein wenig rum.
Dies ist ein Aufbau von einem Medic Menü, ich weiß das es bessere umsetzungen gibt, doch ich wollte mit Arrays, Select type etc... ein bisschen rumspielen
Deshalb hier mal wie es ausschaut
fn_med_functions.sqf
Code
/*
Author: Natic
Date: 23.05.2019
*/
params [
["_type", 0, [0]],
["_player", 1, [1]]
];
private["_fnc_menu","_fnc_heal","_fnc_torpo","_fnc_revive","_fnc_medicine","_fnc_bpressure","_dmg"];
_dmg = damage player;
_fnc_menu = [
[[],"MedicalMenü","space"],
[[1],"Wiederbeleben",call _fnc_revive],
[[2],"Medikamente Geben",call _fnc_medicine],
[[3],"Verband anlegen",call _fnc_heal],
[[4],"Blutdruck messen",call _fnc_bpressure],
[[5],"Torpo Anlegen",call _fnc_torpo]
];
_fnc_revive = [
[] spawn life_fnc_revive;
];
_fnc_medicine = [
switch (_type) do {
case 1: { if (_player _dmg < 1) exitWith {hint "Spieler wird um 25% geheilt"; _player setDamage (_dmg * 0.25);};};
case 2: { hint "Spieler wird um 50% geheilt"; _player setDamage (_dmg * 0.5);};
case 3: { hint "Spieler wird um 100% geheilt"; _player setDamage (_dmg - 0.12);};
default: {hint "Spieler ist bereits geheilt!";};
};
];
_fnc_heal = [
if (_player _dmg < 0.5) exitWith { hint "Die Verletzungen sind zu stark, es müssen erst mehrere Methoden angewannt werden!";};
[_player setDamage (_dmg - 0.12)];
];
_fnc_bpressure = [
[[4],["Blutdruck Messen"],_ch = floor(random(120));],
[[4],if (ch < 80) exitWith {hint "Der Blutdruck ist unter 80 und somit zu niedrig!"};],
[[4],if ((ch > 80) && (ch < 100)) exitWith {hint "Der Blutdruck ist über 80 und somit ok!"};],
[[4],if ((ch > 10) && (ch < 120)) exitWith {hint "Der Blutdruck ist über 100 und somit zu niedtrig!"};]
];
_fnc_torpo = [[[""],[""],[]]];
Alles anzeigen
Vielleicht hilft es euch ja, den Zweck und Sinn von Arrays zu verstehen, eine Erklärung folgt dazu später