Author:[midgetgrimm]
Edited by nic_noc and AmaZiinG
Funktioniert
1. Erstellt die Datei fn_alkoholdrugtester.sqf (fügt die Datei in den cop Ordner ein) und schreibt folgendes rein:
/*file:fn_alkoholdrugtester
author:[midgetgrimm]
edited by AmaZiinG and nic_noc
*/
private["_cop","_drinky","_drugy"];
_cop = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;
if(isNull _cop) exitWith {};
_drinky = life_drink;
_drugy = life_drug;
//Den Wert > 0.4 kann man natuerlich aendern
if(_drinky > 0.4) then {
[1,format["Alkoholtest %1 \n\n Promille: %2 \n\n Nicht im legalen Bereich! ",name player,[_drinky] call life_fnc_numberText]] remoteExec ["life_fnc_broadcast",_cop];
} else {
[1,format["Alkoholtest %1 \n\n Promille: %2 \n\n Im legalen Bereich! ",name player,[_drinky] call life_fnc_numberText]] remoteExec ["life_fnc_broadcast",_cop];
};
//Beide Tests werden nacheinander (5 Sekunden unterschied) angezeigt - man testet also quasi beides in einem
sleep 5;
//Wenn > 0 dann hat der Spieler irgendwas genommen - also ist es dann ein positives Ergebnis
if(_drugy > 0) then {
[1,format["Drogentest %1 \n\n Ergebnis: Positiv \n\n Der Spieler steht unter Drogeneinfluss! ",name player]] remoteExec ["life_fnc_broadcast",_cop];
} else {
[1,format["Drogentest %1 \n\n Ergebnis: Negativ \n\n Der Spieler ist clean! ",name player]] remoteExec ["life_fnc_broadcast",_cop];
};
Alles anzeigen
2. Geht in eure fn_useitem.sqf und fügt folgendes ein:
case (_item isEqualTo "bottledbeer"):
{
if(playerSide in [west,independent]) exitWith {hint localize "STR_MISC_WestIndNoNo";};
if((player getVariable ["inDrink",FALSE])) exitWith {hint localize "STR_MISC_AlreadyDrinking";};
if(([false,_item,1] call life_fnc_handleInv)) then
{
if(isNil "life_drink") then {life_drink = 0;};
//Wenn ihr das Bier trinkt, dann habe ihr also 0.15 Promille
life_drink = life_drink + 0.15;
if (life_drink < 0.2) exitWith {};
[] spawn life_fnc_drinkbeer;
};
};
Alles anzeigen
Wenn ihr kein Bier habt, dann schaut euch bitte dieses TUT an: entfernt
Ihr könnt aber auch Schritt 2 auslassen.
3. Geht in jetzt in eure fn_copInteractionMenu.sqf und such nach:
schreibt direkt darunter das rein:
Sucht unter private:
und fügt hinzu:
Sucht:
und schreibt direkt darunter das rein:
Sucht:
//SeizeWeapons Button
_Btn8 ctrlSetText localize "STR_pInAct_Seize";
_Btn8 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_seizePlayerAction; closeDialog 0;";
if (FETCH_CONST(life_coplevel) < _seizeRank) then {_Btn8 ctrlEnable false;};
{
if ((player distance (getMarkerPos _x) <30)) exitWith { _Btn6 ctrlEnable true;};
} forEach LIFE_SETTINGS(getArray,"sendtoJail_locations");
if !(_curObject getVariable ["restrained",false]) then {
_Btn1 ctrlEnable false;
_Btn6 ctrlEnable false;
};
Alles anzeigen
und fügt darunter das rein:
_Btn9 ctrlSetText localize "STR_pInAct_Breathalyzer";
_Btn9 buttonSetAction "[player] remoteExec [""life_fnc_alkoholdrugtester"",life_pInact_curTarget];closeDialog 0";
4. Sucht die pInteraction.hpp und schaut ob ihr den Button acht habt.
class ButtonEight: Life_RscButtonMenu {
idc = 37457;
colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", 0.5};
text = "";
sizeEx = 0.025;
x = BGX + 0.03;
y = BGY + 0.42;
w = 0.4;
h = 0.038;
};
Darunter kopiert ihr jetzt einfach den den Button Nine
class ButtonNine : life_RscButtonMenu
{
idc = 37458;
colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])", "(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])", "(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])", "(profilenamespace getvariable ['GUI_BCG_RGB_A',0.7])"};
text = "";
sizeEx = 0.025;
x = BGX + 0.03;
y = BGY + 0.47;
w = 0.24;
h = 0.038;
};
Alles anzeigen
5. In der Functions.hpp unter class cop folgendes einfügen:
Spoiler anzeigen
class alkoholdrugtester {};
6. In der CfgRemoteExec.hpp fügt hier folgendes hinzu:
7. Fügt in der configuration.sqf folgendes unter Backend Variables hinzu:
8. Geht in eure stringtable.xml und fügt unter MISC das ein:
<Key ID="STR_MISC_AlreadyDrinking">
<Original>Du trinkst bereits geiles Zeug...</Original>
</Key>
<Key ID="STR_MISC_WestIndNoNo">
<Original>Im Dienst wird nicht getrunken</Original>
</Key>
<Key ID="STR_pInAct_Breathalyzer">
<Original>Alkohol-Drogentest</Original>
</Key>
Fertig!