1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
So: 18 Mai 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Forum
    3. Gameserver & Hosting
    4. ArmA Series - ArmA 3 / Reforger
    5. Tutorials & Releases

    [Tutorial] Drogeneffekte + Überdosis und Abhängig

      • Altis Life
    • Noldy
    • 9. August 2015 um 03:34
    1. offizieller Beitrag
    • Noldy
      Amateur
      Reaktionen
      100
      Trophäen
      11
      Beiträge
      166
      • 9. August 2015 um 03:34
      • #1

      Das Urheberrecht dieses Beitrags liegt bei Backer133, am 5. März 2015!

      Zitat von Backer133

      Schwierigkeit: Leicht


      Hey
      Leute,hiermit zeig ich euch ein TuT wie Ihr Drogeneffekte
      hinzufügt.Dieses TUT basiert ein bisschen auf dem TUT von Midgetgrimm
      und wurde von mir abgeändert und erweitert. Die Drogen sind Stackbar und
      nach einer Gewissen Anzahl von Drogen wird man entweder Abhängig,
      stirbt oder man bekommt einen Blackout und spawnt irgendwo nackt auf der
      Map. Sollte man Abhängig sein erscheinen alle 5 Minuten gruselige
      Effekte und man muss sich von einen Medic behandeln lassen (Therapie).
      Die Interaktion für Medics habe ich noch nicht ganz fertig, werd Sie
      aber sobald ich Sie fertig habe einfach per Edit hier anhängen.
      Natürlich kann man sich dann auch wenn kein Medic on ist beim Arzt im KH
      behandeln lassen.
      Wie sieht das ganze in schlechter Quali aus?
      (sorry musste die Quali so runterschraufen da mein Upload einfach suckt
      und ich nicht solange warten wollte)


      Cocain Effekt:


      Querbeet-Gaming.de Altis Life Cocaine Effekt - YouTube


      LSD Effekt:


      Querbeet-Gaming.de Altis Life LSD Effekt - YouTube


      Weed Effekt:


      Querbeet-Gaming.de Altis Life Marijuana Effekt - YouTube


      LSD mit überdosis:


      Querbeet-Gaming.de Altis Life LSD Effekt + Überdosiseffekt - YouTube


      Heroin sowie Abhängigkeits Effekt könnt Ihr selbst heraus"fliegen"


      Also lets go:


      Nummer 1:


      Erstellt eine datei namens fn_Cocainenimm.sqf in einen beliebigen Ordner


      Spoiler anzeigen


      /*
      ----------------------------------------------|
      Author: Backer
      Description: Effekt on Cocaine use!
      ----------------------------------------------|
      */


      closeDialog 0;


      player setVariable["Druged",true,true];
      [player,"Cocaine_sound", 54] call life_fnc_globalSound;


      "dynamicBlur" ppEffectEnable true; // enables ppeffect
      "dynamicBlur" ppEffectAdjust [0]; // enables normal vision
      "dynamicBlur" ppEffectCommit 20; // time it takes to normal
      20 fadeSound 1; //fades the sound back to normal


      player setDamage (0.2 + (damage player));


      "dynamicBlur" ppEffectEnable true; // enables ppeffect
      "dynamicBlur" ppEffectAdjust [9]; // intensity of blur
      "dynamicBlur" ppEffectCommit 3; // time till vision is fully blurred
      enableCamShake true; // enables camera shake
      addCamShake [20, 100, 10]; // sets shakevalues
      player setFatigue 1; // sets the fatigue to 100%
      5 fadeSound 0.1; // fades the sound to 10% in 5 seconds


      sleep 50;


      "dynamicBlur" ppEffectEnable true; // enables ppeffect
      "dynamicBlur" ppEffectAdjust [0]; // enables normal vision
      "dynamicBlur" ppEffectCommit 20; // time it takes to normal
      20 fadeSound 1; //fades the sound back to normal


      player setVariable["Druged",false,true];


      Nummer 2:


      Erstellt eine datei namens fn_Heroinnimm.sqf in einen beliebigen Ordner


      Spoiler anzeigen


      /*
      ----------------------------------------------|
      Author: Backer
      Description: Effekt on heroin use! If you use to much you get naked and spawn on random positions (markers)
      ----------------------------------------------|
      */


      closeDialog 0;
      DrugedMarkers = ["druged1","druged2","druged3","druged4","druged5"] call BIS_fnc_selectRandom;
      player setVariable["Druged",true,true];
      player allowDamage false;


      [player,"Heroin_sound", 46] call life_fnc_globalSound;
      _posold = getPos player;


      if(life_drug > 0) then {


      player setPos [getPos player select 0, getPos player select 1, 20000];
      "colorCorrections" ppEffectEnable true;
      "colorCorrections"
      ppEffectAdjust [1, 1, 0, [0,0,0,0.5], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5,random 1], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5, random 1]];
      "colorCorrections" ppEffectCommit 1;
      "chromAberration" ppEffectEnable true;
      "chromAberration" ppEffectAdjust [0.01,0.01,true];
      "chromAberration" ppEffectCommit 1;
      sleep 2.25;


      for "_i" from 0 to 23 do {
      "colorCorrections" ppEffectEnable true;
      "colorCorrections" ppEffectAdjust [1, 1, 0, [0,0,0,0.5], [random 10 -
      random 10,random 10 - random 10,random 10 - random 10,random 1], [random
      10 - random 10,random 10 - random 10,random 10 - random 10, random 1]];
      "colorCorrections" ppEffectCommit 1;
      sleep 2.25;
      };


      "chromAberration" ppEffectEnable false;
      "colorCorrections" ppEffectEnable false;


      hint "Das war vielleicht mal ein Tripp, BUJAHH";
      player setPos _posold;
      sleep 5;
      };
      //3 mal nehmen
      if (life_drug > 0.22) then {
      titleText [localize "STR_MISC_DrunkBlackOut","BLACK OUT"];
      player playMoveNow "Incapacitated";
      //titleText[localize "STR_MISC_DrunkBlackOut","BLACK IN"];
      sleep 15;
      vehicle player setDir 225;vehicle player setVelocity [0, 0, 0]; vehicle player setpos (getmarkerpos DrugedMarkers);
      publicVariable "DrugedMarkers";
      removeUniform player;removeVest player;
      player playMoveNow "AinjPpneMstpSnonWrflDnon_rolltoback";
      sleep 10;
      titleText[localize "STR_MISC_DrunkBlackOut1","PLAIN"];
      player playMoveNow "amovppnemstpsraswrfldnon";


      };


      player setVariable["Druged",false,true];
      player allowDamage true;


      Nummer 3: (wenn Ihr LSD am Server habt)
      Erstellt eine datei namens fn_LSDnimm.sqf in einen beliebigen Ordner


      Spoiler anzeigen


      /*
      ----------------------------------------------|
      Author: Backer
      Description: LSD Effekt, YES Lets swim and make some funny fishes + Esteregg
      ----------------------------------------------|
      */


      closeDialog 0;
      "chromAbberation" ppEffectEnable true;
      "radialBlur" ppEffectEnable true;
      enableCamShake true;
      _fish = "CatShark_F" createVehicle [0,0,0];
      _mullet = "Mullet_F" createVehicle [0,0,0];
      _turtle = "Turtle_F" createVehicle [0,0,0];
      _tuna = "Tuna_F" createVehicle [0,0,0];
      _mackerel = "Mackerel_F" createVehicle [0,0,0];
      _salema = "Salema_F" createVehicle [0,0,0];
      _mullet2= "Mullet_F" createVehicle [0,0,0];
      _salem2 = "Salema_F" createVehicle [0,0,0];
      _turtle2 = "Turtle_F" createVehicle [0,0,0];


      DrugedMarkers = ["druged1","druged2","druged3","druged4","druged5"] call BIS_fnc_selectRandom;


      player setVariable["Druged",true,true];
      [player,"LSD_sound", 36] call life_fnc_globalSound;


      for "_i" from 0 to 36 do
      {
      if(life_drug > 0) then {


      _fish attachTo [player, [-0.1, 2, 0.15], "Pelvis"];
      _tuna attachTo [player, [-1, 1, 0.15], "Pelvis"];
      _mullet attachTo [player, [-2, 1.5, 0.30], "Pelvis"];
      _mackerel attachTo [player, [2, 2, 0.15], "Pelvis"];
      _turtle attachTo [player, [1, 1.5, 0.20], "Pelvis"];
      _salema attachTo [player, [0, -1.5, - 0.30], "Pelvis"];
      _mullet2 attachTo [player, [-2, 1.5, 0.60], "Pelvis"];
      _salem2 attachTo [player, [0, -1.5, - 1.0], "Pelvis"];
      _turtle2 attachTo [player, [1, 1.5, 0.70], "Pelvis"];


      "colorCorrections" ppEffectEnable true;
      player playMoveNow "AsswPercMstpSnonWnonDnon_goDown";
      "colorCorrections"
      ppEffectAdjust [1, 1, 0, [0,0,0,0.5], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5,random 1], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5, random 1]];
      "colorCorrections" ppEffectCommit 1;
      "chromAberration" ppEffectEnable true;
      "chromAberration" ppEffectAdjust [0.01,0.01,true];
      "chromAberration" ppEffectCommit 1;
      sleep 1;


      } else {


      _fish attachTo [player, [-0.1, 2, 0.15], "Pelvis"];
      _tuna attachTo [player, [-1, 1, 0.15], "Pelvis"];
      _mullet attachTo [player, [-2, 1.5, 0.30], "Pelvis"];
      _mackerel attachTo [player, [2, 2, 0.15], "Pelvis"];
      _turtle attachTo [player, [1, 1.5, 0.20], "Pelvis"];
      _salema attachTo [player, [0, -1.5, - 0.30], "Pelvis"];
      _mullet2 attachTo [player, [-2, 1.5, 0.60], "Pelvis"];
      _salem2 attachTo [player, [0, -1.5, - 1.0], "Pelvis"];
      _turtle2 attachTo [player, [1, 1.5, 0.70], "Pelvis"];


      "colorCorrections" ppEffectEnable true;
      player playMoveNow "AsswPercMstpSnonWnonDnon_goDown";
      "colorCorrections"
      ppEffectAdjust [1, 1, 0, [0,0,0,0.5], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5,random 1], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5, random 1]];
      "colorCorrections" ppEffectCommit 1;
      "chromAberration" ppEffectEnable true;
      "chromAberration" ppEffectAdjust [0.01,0.01,true];
      addcamShake[random 3, 1, random 3];
      sleep 1;
      };
      };
      //5 mal nehmen
      if (life_drug > 0.32) then {
      titleText [localize "STR_MISC_DrunkBlackOut","BLACK OUT"];
      player playMoveNow "Incapacitated";
      //titleText[localize "STR_MISC_DrunkBlackOut","BLACK IN"];
      sleep 15;
      vehicle player setDir 225;vehicle player setVelocity [0, 0, 0]; vehicle player setpos (getmarkerpos DrugedMarkers);
      publicVariable "DrugedMarkers";
      removeUniform player;removeVest player;
      player playMoveNow "AinjPpneMstpSnonWrflDnon_rolltoback";
      sleep 10;
      titleText[localize "STR_MISC_DrunkBlackOut1","PLAIN"];
      player playMoveNow "amovppnemstpsraswrfldnon";


      };


      //Stop effects
      player setVariable["Druged",false,true];


      "chromAberration" ppEffectAdjust [0,0,true];
      "chromAberration" ppEffectCommit 5;
      "radialBlur" ppEffectAdjust [0,0,0,0];
      "radialBlur" ppEffectCommit 5;
      sleep 6;


      //Deactivate ppEffects
      "chromAberration" ppEffectEnable false;
      "colorCorrections" ppEffectEnable false;
      "radialBlur" ppEffectEnable false;
      resetCamShake;


      deleteVehicle _fish;
      deleteVehicle _mullet;
      deleteVehicle _turtle;
      deleteVehicle _tuna;
      deleteVehicle _mackerel;
      deleteVehicle _salema;
      deleteVehicle _mullet2;
      deleteVehicle _salem2;
      deleteVehicle _turtle2;
      player switchmove "";



      Nummer 4:
      Erstellt eine datei namens fn_Weednimm.sqf in einen beliebigen Ordner


      Spoiler anzeigen


      /*
      ----------------------------------------------|
      Author: ??? edit by Backer
      Description: Effekt on Weed use!
      ----------------------------------------------|
      */


      closeDialog 0;


      player setVariable["Druged",true,true];
      [player,"Weed_sound", 31] call life_fnc_globalSound;


      _smoke = "SmokeShell" createVehicle position player;
      if (vehicle player != player) then {
      _smoke attachTo [vehicle player, [-0.6,-1,0]];
      } else {
      _smoke attachTo [player, [0,0,1]];
      };


      "chromAberration" ppEffectEnable true;
      "radialBlur" ppEffectEnable true;
      enableCamShake true;


      for "_i" from 0 to 30 do
      {
      if(life_drug > 0) then {
      "chromAberration" ppEffectAdjust [random 0.25,random 0.25,true];
      "chromAberration" ppEffectCommit 1;
      "radialBlur" ppEffectAdjust [random 0.02,random 0.02,0.15,0.15];
      "radialBlur" ppEffectCommit 1;
      addcamShake[random 3, 1, random 3];
      sleep 1;
      };
      };


      "chromAberration" ppEffectAdjust [0,0,true];
      "chromAberration" ppEffectCommit 5;
      "radialBlur" ppEffectAdjust [0,0,0,0];
      "radialBlur" ppEffectCommit 5;
      sleep 6;


      "chromAberration" ppEffectEnable false;
      "radialBlur" ppEffectEnable false;
      resetCamShake;
      enableCamShake false;
      deleteVehicle _smoke;


      player setVariable["Druged",false,true];


      Nummer 5:
      Erstellt eine datei namens fn_suechtig.sqf in einen beliebigen Ordner


      Spoiler anzeigen


      /*
      ----------------------------------------------|
      Author: Backer
      Description: To much Drugs biatch! Lets start the effekt every 5 Mins. Called in Init Survival!
      ----------------------------------------------|
      */


      closeDialog 0;
      player say2D "Abhaengig_Sound";


      //Activate ppEffects we need
      "radialBlur" ppEffectEnable true;
      enableCamShake true;


      //Let's go for 36secs of effetcs
      for "_i" from 0 to 36 do
      {
      "radialBlur" ppEffectAdjust [random 1,random 0.5,1,0.5];
      "radialBlur" ppEffectCommit 1;
      addcamShake[random 10, 1, random 10];
      sleep 1;
      };


      //Stop effects
      "radialBlur" ppEffectAdjust [0,0,0,0];
      "radialBlur" ppEffectCommit 5;
      sleep 6;


      //Deactivate ppEffects
      "radialBlur" ppEffectEnable false;
      resetCamShake;



      Nummer 6:


      fügt in der Functions.h alle erstellten dateien ein (wo auch immer Ihr Sie gespeichert habt)


      Beispiel:


      Spoiler anzeigen


      class Querdrogen
      {
      file ="Quer\drogen";
      class LSDnimm {};
      class Weednimm {};
      class Cocainenimm {};
      class Heroinnimm {};
      class suechtig {};
      };


      Nummer 7 :
      geht in core/pmenu/fn_useItem.sqf und fügt folgendes hinzu:


      Spoiler anzeigen


      //Droge

      case (_item in ["froschlsd"]):
      {
      if(playerSide in [west,independent]) exitWith {hint "Hallo Sie sind im Dienst!!";};
      if((player getVariable ["Druged",FALSE])) exitWith {hint "Du nimmst bereits geiles Zeug";};
      if(([false,_item,1] call life_fnc_handleInv)) then
      {
      if(isNil "life_drug") then {life_drug = 0;};
      //Wenn er Drogen nimmt
      life_drug = life_drug + 0.08;
      if (life_drug < 0.00) exitWith {};
      [] spawn life_fnc_LSDnimm;
      };
      };

      case (_item in ["heroinp"]):
      {
      if(playerSide in [west,independent]) exitWith {hint "Hallo Sie sind im Dienst!!";};
      if((player getVariable ["Druged",FALSE])) exitWith {hint "Du nimmst bereits geiles Zeug";};
      if(([false,_item,1] call life_fnc_handleInv)) then
      {
      if(isNil "life_drug") then {life_drug = 0;};
      //Wenn er Drogen nimmt
      life_drug = life_drug + 0.08;
      if (life_drug < 0.00) exitWith {};
      [] spawn life_fnc_Heroinnimm;
      };
      };

      case (_item in ["cocainep"]):
      {
      if(playerSide in [west,independent]) exitWith {hint "Hallo Sie sind im Dienst!!";};
      if((player getVariable ["Druged",FALSE])) exitWith {hint "Du nimmst bereits geiles Zeug";};
      if(([false,_item,1] call life_fnc_handleInv)) then
      {
      if(isNil "life_drug") then {life_drug = 0;};
      //Wenn er Drogen nimmt
      life_drug = life_drug + 0.08;
      if (life_drug < 0.00) exitWith {};
      [] spawn life_fnc_Cocainenimm;
      };
      };

      case (_item in ["marijuana"]):
      {
      if(playerSide in [west,independent]) exitWith {hint "Hallo Sie sind im Dienst!!";};
      if((player getVariable ["Druged",FALSE])) exitWith {hint "Du nimmst bereits geiles Zeug";};
      if(([false,_item,1] call life_fnc_handleInv)) then
      {
      if(isNil "life_drug") then {life_drug = 0;};
      //Wenn er Drogen nimmt
      life_drug = life_drug + 0.08;
      if (life_drug < 0.00) exitWith {};
      [] spawn life_fnc_Weednimm;
      };
      };


      Nummer 8:
      geht in core/configuration.sqf und fügt folgendes hinzu:
      Wo genau findet Ihr sicher heraus


      Code
      life_drug = 0;

      Nummer 9:
      geht in core/init_survival.sqf und fügt folgendes ein:


      Spoiler anzeigen


      [] spawn
      {
      while {true} do
      {
      waitUntil {(life_drug > 0)};
      while{(life_drug > 0)} do {

      if(life_drug > 0.08) then {
      sleep 60;
      [] spawn life_fnc_suechtig;
      hint "Sie sollten bei einen Notarzt vorbei schauen! Sie sind stark Drogensuechtig!";
      sleep 240;
      };
      };
      };
      };


      Nummer 10:
      geht in den Map Editor und erstellt folgende Marker an denen man spawnt wenn man ein Blackout bekommt:


      druged1,druged2,druged3,druged4,druged5


      Nummer11:


      Fügt die Sounds vom Anhang in eure Mission ein. Also in den Ordner und in die description.ext unter
      class cfgSounds


      Spoiler anzeigen


      class LSD_sound
      {
      name = "LSD_sound";
      sound[] = {"\sounds\euerParameter\LSD_sound.ogg", 1.0, 1};
      titles[] = {};
      };

      class Abhaengig_Sound
      {
      name = "Abhaengig_Sound";
      sound[] = {"\sounds\euerParameter\Abhaengig_Sound.ogg", 1.0, 1};
      titles[] = {};
      };

      class Heroin_sound
      {
      name = "Heroin_sound";
      sound[] = {"\sounds\euerParameter\Heroin_sound.ogg", 1.0, 1};
      titles[] = {};
      };

      class Cocaine_sound
      {
      name = "Cocaine_sound";
      sound[] = {"\sounds\euerParameter\Cocaine_sound.ogg", 1.0, 1};
      titles[] = {};
      };

      class Weed_sound
      {
      name = "Weed_sound";
      sound[] = {"\sounds\euerParameter\Weed_sound.ogg", 1.0, 1};
      titles[] = {};
      };


      Nummer12:


      öffnet eure Stringtable.xml und fügt folgendes hinzu


      Code
      <Key ID="STR_MISC_DrunkBlackOut">
        <Original>Du hast einen Blackout!</Original>
        </Key>
        <Key ID="STR_MISC_DrunkBlackOut1">
        <Original>Was zum... - was ist passiert?? Wo bin ich?</Original>
        </Key>

      Nummer13:


      Fleißig Drogen nehmen und Spaß haben


      MEDIC INTERAKTION:


      Nummer14:
      erstellt eine Datei namens fn_Therapieaction.sqf


      Spoiler anzeigen


      /*
      ----------------------------------------------|
      Author: Backer
      Description: Starts the therapie!
      ----------------------------------------------|
      */


      private["_unit"];
      _unit = cursorTarget;
      if(isNull _unit) exitWith {}; //Not valid
      if(player == _unit) exitWith {};
      if(!isPlayer _unit) exitWith {};


      //GIMME MORE


      [[player], "life_fnc_therapie", _unit, false] spawn life_fnc_MP;


      if(side player == independent) then
      {

      [[0,format["%1 wurde von %2 erfolgreich auf Drogen behandelt!",_unit
      getVariable["realname", name _unit], player getVariable["realname",name
      player]]],"life_fnc_broadcast",independent,false] spawn life_fnc_MP;
      };


      Nummer15:


      erstellt eine Datei namens fn_therapie.sqf


      Spoiler anzeigen


      /*
      ----------------------------------------------|
      Author: Backer
      Description: Set the drug level to 0 !
      ----------------------------------------------|
      */


      private["_medic","_player"];
      _medic = [_this,0,Objnull,[Objnull]] call BIS_fnc_param;
      _player = player;
      if(isNull _medic) exitWith {};
      if(!alive player) exitWith {};
      if(!alive _medic) exitWith {};


      if (life_drug > 0) then
      {
      life_drug = 0;
      hint "Sie wurden erfolgreich vom Arzt behandelt, die Therapie war erfolgreich!";
      }else{
      hint "Sie sollten den Notarzt nicht anlügen, dass Sie
      abhängig sind, ansonsten wird er Ihnen beim nächsten mal nicht mehr
      helfen!";

      };


      Nummer16:


      Erstellt eine Datei namens fn_pInteraction_med.sqf


      Spoiler anzeigen


      #define Btn1 37450
      #define Btn2 37451
      #define Btn3 37452
      #define Btn4 37453
      #define Btn5 37454
      #define Btn6 37455
      #define Btn7 37456
      #define Btn8 37457
      #define Title 37401


      private["_display","_curTarget","_Btn1","_Btn2","_Btn3","_Btn4","_Btn5"];
      if(!dialog) then {
      createDialog "pInteraction_Menu";
      };
      disableSerialization;
      _curTarget = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;
      if(isNull _curTarget) exitWith {closeDialog 0;}; //Bad target

      if(!isPlayer _curTarget && side _curTarget == civilian) exitWith {closeDialog 0;}; //Bad side check?
      _display = findDisplay 37400;
      _Btn1 = _display displayCtrl Btn1;
      _Btn2 = _display displayCtrl Btn2;
      _Btn3 = _display displayCtrl Btn3;
      _Btn4 = _display displayCtrl Btn4;
      _Btn5 = _display displayCtrl Btn5;


      life_pInact_curTarget = _curTarget;


      //Set Unrestrain Button
      _Btn1 ctrlSetText localize "STR_pInAct_Unrestrain";
      _Btn1 buttonSetAction "[life_pInact_curTarget] call life_fnc_unrestrain; closeDialog 0;";


      //Set Escort Button
      if((_curTarget getVariable["Escorting",false])) then {
      _Btn2 ctrlSetText localize "STR_pInAct_StopEscort";
      _Btn2 buttonSetAction "[life_pInact_curTarget] call
      life_fnc_stopEscorting; [life_pInact_curTarget] call
      life_fnc_copInteractionMenu;";
      } else {
      _Btn2 ctrlSetText localize "STR_pInAct_Escort";
      _Btn2 buttonSetAction "[life_pInact_curTarget] call life_fnc_escortAction; closeDialog 0;";
      };


      //Set Ticket Button
      _Btn3 ctrlSetText localize "STR_pInAct_TicketBtn";
      _Btn3 buttonSetAction "[life_pInact_curTarget] call life_fnc_ticketAction;";


      _Btn4 ctrlSetText localize "STR_pInAct_PutInCar";
      _Btn4 buttonSetAction "[life_pInact_curTarget] call life_fnc_putInCar;";


      _Btn5 ctrlSetText "Therapie";
      _Btn5 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_Therapieaction;";


      Nummer17: fügt alle erstellten Datein in euer Functions.h hinzu (wo auch immer Ihr diese gespeichert habt)


      Nummer18:
      geht in core/functions/actionkeyhandler.sqf und fügt folgendes nach dem
      aufruf des Interaktionsmenüs für Polizisten ein:


      Code
      else
          {
              if(playerSide == independent) then
              {
                  if(_curTarget getVariable["restrained",false]&& (!(player getVariable "restrained"))) then
                  {
                      if(!dialog) then
                      {
                          [_curTarget] call life_fnc_pInteraction_med;
                      }
                      else
                      {
                          hint "Es wird bereits ein Dialog angezeigt.";
                      };
                  }
                  else
                  {
                      hint "Der andere Spieler muss gefesselt sein.";
                      sleep 3;
                      hint "Oder Sie sind gefesselt!";
                  };
          };
      Alles anzeigen


      Nummer19 (Nur wenn Ihr wollt das Spieler auch vom Arzt im Krankenhaus behandelt werden sollen)


      Fügt in die Init des Arztes folgendes ein:


      Code
      this addAction["Drogen Therapie machen!",life_fnc_therapie];

      Und
      fertig seit Ihr. Natürlich könnt Ihr alles noch so umschreiben das
      Medics Geld dafür bekommen oder das es beim Arzt was kostet!
      Dies dient nur als Grundvorlage für euch


      Viel Spaß


      Dieses Tutorial funktioniert mit dem Alkohol und Drogentester von nic_noc

      [Tutorial] Alkohol- und Drogentester


      Sounds


      LG Backer

      Alles anzeigen

    • Hades
      Frischling
      Trophäen
      11
      Beiträge
      9
      • 19. September 2015 um 01:37
      • #2

      Hallo,
      hat hier jemand noch die Sound-Dateien ???
      Weil der link nicht mehr funktioniert.

      Wäre super von euch.

      Lg Hades

    • Florian
      Anfänger
      Reaktionen
      13
      Trophäen
      11
      Beiträge
      44
      • 19. September 2015 um 02:30
      • #3

      #Updated neuen Link für die Sounds ;) @Hades

    • Hades
      Frischling
      Trophäen
      11
      Beiträge
      9
      • 19. September 2015 um 09:21
      • #4

      Danke Florian

    • gundy2000
      Frischling
      Reaktionen
      1
      Trophäen
      11
      Beiträge
      9
      • 28. November 2015 um 15:31
      • #5

      Wirklich tolles Script, nur leider geht der Sound link nicht.

      LG

      Frank

    • Tyreed
      Anfänger
      Reaktionen
      5
      Trophäen
      11
      Beiträge
      25
      • 29. November 2015 um 13:20
      • #6

      stimmt wäre es möglich die sounds eventuell noch einmal hochzuladen?

      mfg tyreed

    • SBuserhy
      Kenner
      Reaktionen
      265
      Beiträge
      519
      • 30. November 2015 um 00:57
      • #7
      Zitat von PlaySim

      Ich habe den Sound aus den YouTube Videos für alle, die die Sound benötigen, zu ".ogg" Dateien konvertiert - hoffe das ist in Ordnung.


      Mit freundlichen Grüßen
      PlaySim - Die Gaming Community - playsim.de


      Und wer hat das Urheberrecht auf dem Sound?

      ausprobieren, lernen, weiterentwickeln, verbessern :gamer:

      kein Support per PM | schnelle Fehleranalyse >> RPT log Filter

    • PlaySim
      Anfänger
      Reaktionen
      7
      Trophäen
      11
      Beiträge
      66
      • 30. November 2015 um 10:06
      • #8

      Da hast du wohl Recht, da war ich etwas zu schnell...

    • Tyreed
      Anfänger
      Reaktionen
      5
      Trophäen
      11
      Beiträge
      25
      • 2. Dezember 2015 um 10:53
      • #9

      Wäre es denn nun möglich die sounds nochmal upzuloaden?
      lg ty

      Einmal editiert, zuletzt von Tyreed (2. Dezember 2015 um 11:53)

    • PlaySim
      Anfänger
      Reaktionen
      7
      Trophäen
      11
      Beiträge
      66
      • 2. Dezember 2015 um 11:49
      • #10

      Ich werde das lieber aus urheberrechtlichen Gründen dann nicht noch einmal machen.. Vielleicht antwortet ja der Ersteller des Threads mal.

    • sebel1
      Frischling
      Trophäen
      11
      Beiträge
      8
      • 12. Dezember 2015 um 12:11
      • #11

      Hallo, sobald ich dies im Keyhandler eintrage, kann ich nichts mehr mit der Win Taste machen, Reparieren usw,

      Code
      else
          {
              if(playerSide == independent) then
              {
                  if(_curTarget getVariable["restrained",false]&& (!(player getVariable "restrained"))) then
                  {
                      if(!dialog) then
                      {
                          [_curTarget] call life_fnc_pInteraction_med;
                      }
                      else
                      {
                          hint "Es wird bereits ein Dialog angezeigt.";
                      };
                  }
                  else
                  {
                      hint "Der andere Spieler muss gefesselt sein.";
                      sleep 3;
                      hint "Oder Sie sind gefesselt!";
                  };
          };
      Alles anzeigen


      Warum ist dies so? Wo liegt mein Fehler. Altis 4.0

    • pentoxide
      Fortgeschrittener
      Reaktionen
      243
      Trophäen
      11
      Beiträge
      363
      • 12. Dezember 2015 um 12:46
      • Offizieller Beitrag
      • #12

      Wäre cool, wenn Du deinen RPT-Log vom so wie deine actionKeyhandler.sqf anhängen kannst.

      pentoxide/Jonas

      Allzeit zu erreichen unter:

      [email protected]

    • sebel1
      Frischling
      Trophäen
      11
      Beiträge
      8
      • 12. Dezember 2015 um 13:10
      • #13

      Ich habe es aber wieder rausgenommen, da es ja in dem Momemt keinen Sinn gemacht hat, wenn man andere Dinge dann nicht tätigen kann.

      Code
      #include <macro.h>
      /*
      	File: fn_keyHandler.sqf
      	Author: Bryan "Tonic" Boardwine
      
      	Description:
      	Main key handler for event 'keyDown'
      */
      private ["_handled","_shift","_alt","_code","_ctrl","_alt","_ctrlKey","_veh","_locked","_interactionKey","_mapKey","_interruptionKeys"];
      _ctrl = SEL(_this,0);
      _code = SEL(_this,1);
      _shift = SEL(_this,2);
      _ctrlKey = SEL(_this,3);
      _alt = SEL(_this,4);
      _speed = speed cursorTarget;
      _handled = false;
      
      
      
      
      _interactionKey = if((EQUAL(count (actionKeys "User10"),0))) then {219} else {(actionKeys "User10") select 0};
      _mapKey = SEL(actionKeys "ShowMap",0);
      //hint str _code;
      _interruptionKeys = [17,30,31,32]; //A,S,W,D
      
      
      
      
      //Vault handling...
      if((_code in (actionKeys "GetOver") || _code in (actionKeys "salute")) && {(player GVAR ["restrained",false])}) exitWith {
      	true;
      };
      
      
      
      
      if(life_action_inUse) exitWith {
      	if(!life_interrupted && _code in _interruptionKeys) then {life_interrupted = true;};
      	_handled;
      };
      
      
      
      
      //Hotfix for Interaction key not being able to be bound on some operation systems.
      if(!(EQUAL(count (actionKeys "User10"),0)) && {(inputAction "User10" > 0)}) exitWith {
      	//Interaction key (default is Left Windows, can be mapped via Controls -> Custom -> User Action 10)
      	if(!life_action_inUse) then {
      		[] spawn {
      			private "_handle";
      			_handle = [] spawn life_fnc_actionKeyHandler;
      			waitUntil {scriptDone _handle};
      			life_action_inUse = false;
      		};
      	};
      	true;
      };
      
      
      
      
      switch (_code) do {
      	//Space key for Jumping
      	case 57: {
      		if(isNil "jumpActionTime") then {jumpActionTime = 0;};
      		if(_shift && {!(EQUAL(animationState player,"AovrPercMrunSrasWrflDf"))} && {isTouchingGround player} && {EQUAL(stance player,"STAND")} && {speed player > 2} && {!life_is_arrested} && {SEL((velocity player),2) < 2.5} && {time - jumpActionTime > 1.5}) then {
      			jumpActionTime = time; //Update the time.
      			[player,true] spawn life_fnc_jumpFnc; //Local execution
      			[[player,false],"life_fnc_jumpFnc",nil,FALSE] call life_fnc_MP; //Global execution 
      			_handled = true;
      		};
      	};
      
      	//Map Key
      	case _mapKey: {
      		switch (playerSide) do {
      			case west: {if(!visibleMap) then {[] spawn life_fnc_copMarkers;}};
      			case independent: {if(!visibleMap) then {[] spawn life_fnc_medicMarkers;}};
      		};
      	};
      
      	//Holster / recall weapon.
      	case 35: {
      		if(_shift && !_ctrlKey && !(EQUAL(currentWeapon player,""))) then {
      			life_curWep_h = currentWeapon player;
      			player action ["SwitchWeapon", player, player, 100];
      			player switchCamera cameraView;
      		};
      
      		if(!_shift && _ctrlKey && !isNil "life_curWep_h" && {!(EQUAL(life_curWep_h,""))}) then {
      			if(life_curWep_h in [RIFLE,LAUNCHER,PISTOL]) then {
      				player selectWeapon life_curWep_h;
      			};
      		};
      	};
      
      	//Interaction key (default is Left Windows, can be mapped via Controls -> Custom -> User Action 10)
      	case _interactionKey: {
      		if(!life_action_inUse) then {
      			[] spawn  {
      				private "_handle";
      				_handle = [] spawn life_fnc_actionKeyHandler;
      				waitUntil {scriptDone _handle};
      				life_action_inUse = false;
      			};
      		};
      	};
      
      	//Restraining or robbing (Shift + R)
      	case 19:
      	{
      		if(_shift) then {_handled = true;};
      		if(_shift && playerSide == west && !isNull cursorTarget && cursorTarget isKindOf "Man" && (isPlayer cursorTarget) && (side cursorTarget == civilian) && alive cursorTarget && cursorTarget distance player < 3.5 && !(cursorTarget GVAR "Escorting") && !(cursorTarget GVAR "restrained") && speed cursorTarget < 1) then
      		{
      			[] call life_fnc_restrainAction;
      		};
      
      		//Robbing
      		if(_shift && playerSide == civilian && !isNull cursorTarget && cursorTarget isKindOf "Man" && isPlayer cursorTarget && alive cursorTarget && cursorTarget distance player < 4 && speed cursorTarget < 1) then
      		{
      			if((animationState cursorTarget) != "Incapacitated" && (currentWeapon player == RIFLE OR currentWeapon player == PISTOL) && currentWeapon player != "" && !life_knockout && !(player GVAR["restrained",false]) && !life_istazed && !(player GVAR["surrender",false])) then
      			{
      				[cursorTarget] spawn life_fnc_knockoutAction;
      			};
      			_handled = true;
      		};
      	};
      
      	//Shift + G (surrender)
      	case 34:
      	{
      		if(_shift) then {_handled = true;};
      
      
      
      
      		if (_shift) then
      		{
      			if (vehicle player == player && !(player GVAR ["restrained", false]) && (animationState player) != "Incapacitated" && !life_istazed) then
      			{
      				if (player GVAR ["surrender", false]) then
      				{
      					player SVAR ["surrender", false, true];
      				} else
      				{
      					[] spawn life_fnc_surrender;
      				};
      			};
      		};
      	};
      
      	case 20:
      	{
      		if(!_alt && !_ctrlKey) then
      		{
      			if(vehicle player != player && alive vehicle player) then
      			{
      				if((vehicle player) in life_vehicles) then
      				{
      					[vehicle player] spawn life_fnc_openInventory;
      				};
      			}
      				else
      			{
      				if((cursorTarget isKindOf "Land_Wreck_Traw_F" OR cursorTarget isKindOf "Land_Wreck_Traw2_F" OR cursorTarget isKindOf "Car" OR cursorTarget isKindOf "Air" OR cursorTarget isKindOf "Ship" OR cursorTarget isKindOf "House_F") && player distance cursorTarget < 10 && vehicle player == player && alive cursorTarget) then
      				{
      					if(cursorTarget in life_vehicles OR {!(cursorTarget getVariable ["locked",true])}) then
      					{
      						[cursorTarget] spawn life_fnc_openInventory;
      					};
      					if (cursorTarget isKindOf "Land_Wreck_Traw_F" OR cursorTarget isKindOf "Land_Wreck_Traw2_F") then {
      						[cursorTarget] spawn life_fnc_openInventory;
      					};
      				};
      			};
      		};
      	};
      
      	//L Key?
      	case 38: {
      		//If cop run checks for turning lights on.
      		if(_shift && playerSide in [west,independent]) then {
      			if(vehicle player != player && (typeOf vehicle player) in ["C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F"]) then {
      				if(!isNil {vehicle player GVAR "lights"}) then {
      					if(playerSide == west) then {
      						[vehicle player] call life_fnc_sirenLights;
      					} else {
      						[vehicle player] call life_fnc_medicSirenLights;
      					};
      					_handled = true;
      				};
      			};
      		};
      
      		if(!_alt && !_ctrlKey) then { [] call life_fnc_radar; };
      	};
      
      	//Shift+O = Faded Sound
      	case 24:
      	{
      		if(_shift) then
      		{
      			[] call life_fnc_fadeSound;
      			_handled = true;
      		};
      	};
      
      	//Y Player Menu
      	case 21: {
      		if(!_alt && !_ctrlKey && !dialog && !life_is_processing) then {
      			[] call life_fnc_p_openMenu;
      		};
      	};
      
      	//F Key
      	case 33: {
      		if(playerSide in [west,independent] && {vehicle player != player} && {!life_siren_active} && {((driver vehicle player) == player)}) then {
      			[] spawn {
      				life_siren_active = true;
      				sleep 4.7;
      				life_siren_active = false;
      			};
      
      			_veh = vehicle player;
      			if(isNil {_veh GVAR "siren"}) then {_veh SVAR ["siren",false,true];};
      			if((_veh GVAR "siren")) then {
      				titleText [localize "STR_MISC_SirensOFF","PLAIN"];
      				_veh SVAR ["siren",false,true];
      			} else {
      				titleText [localize "STR_MISC_SirensON","PLAIN"];
      				_veh SVAR ["siren",true,true];
      				if(playerSide == west) then {
      					[[_veh],"life_fnc_copSiren",nil,true] call life_fnc_MP;
      				} else {
      					//I do not have a custom sound for this and I really don't want to go digging for one, when you have a sound uncomment this and change medicSiren.sqf in the medical folder.
      					//[[_veh],"life_fnc_medicSiren",nil,true] call life_fnc_MP;
      				};
      			};
      		};
      	};
      
      	//U Key
      	case 22: {
      		if(!_alt && !_ctrlKey) then {
      			if(vehicle player == player) then {
      				_veh = cursorTarget;
      			} else {
      				_veh = vehicle player;
      			};
      
      			if(_veh isKindOf "House_F" && (playerSide == civilian || playerSide == east)) then {
      				if(_veh in life_vehicles && player distance _veh < 8) then {
      					_door = [_veh] call life_fnc_nearestDoor;
      					if(EQUAL(_door,0)) exitWith {hint localize "STR_House_Door_NotNear"};
      					_locked = _veh GVAR [format["bis_disabled_Door_%1",_door],0];
      
      					if(EQUAL(_locked,0)) then {
      						_veh SVAR [format["bis_disabled_Door_%1",_door],1,true];
      						_veh animate [format["door_%1_rot",_door],0];
      						systemChat localize "STR_House_Door_Lock";
      					} else {
      						_veh SVAR [format["bis_disabled_Door_%1",_door],0,true];
      						_veh animate [format["door_%1_rot",_door],1];
      						systemChat localize "STR_House_Door_Unlock";
      					};
      				};
      			} else {
      				_locked = locked _veh;
      				if(_veh in life_vehicles && player distance _veh < 8) then {
      					if(_locked == 2) then {
      						if(local _veh) then {
      							_veh lock 0;
      							_veh animateDoor ["door_back_R",1];
      							_veh animateDoor ["door_back_L",1];
      							_veh animateDoor ['door_R',1];
      							_veh animateDoor ['door_L',1];
      							_veh animateDoor ['Door_rear',1];
      							_veh animateDoor ['Door_LM',1];
      							_veh animateDoor ['Door_RM',1];
      							_veh animateDoor ['Door_LF',1];
      							_veh animateDoor ['Door_RF',1];
      							_veh animateDoor ['Door_LB',1];
      							_veh animateDoor ['Door_RB',1];
      						} else {
      							[[_veh,0],"life_fnc_lockVehicle",_veh,false] spawn life_fnc_MP;
      							_veh animateDoor ["door_back_R",1];
      							_veh animateDoor ["door_back_L",1];
      							_veh animateDoor ['door_R',1];
      							_veh animateDoor ['door_L',1];
      							_veh animateDoor ['Door_rear',1];
      							_veh animateDoor ['Door_LM',1];
      							_veh animateDoor ['Door_RM',1];
      							_veh animateDoor ['Door_LF',1];
      							_veh animateDoor ['Door_RF',1];
      							_veh animateDoor ['Door_LB',1];
      							_veh animateDoor ['Door_RB',1];
      						};
      						hint composeText [ image "icons\unlock.paa", "  Fahrzeug aufgeschlossen" ];
      						player say3D "unlock";
      						systemChat localize "STR_MISC_VehUnlock";
      					} else {
      						if(local _veh) then {
      							_veh lock 2;
      							_veh animateDoor ["door_back_R",0];
      							_veh animateDoor ["door_back_L",0];
      							_veh animateDoor ['door_R',0];
      							_veh animateDoor ['door_L',0];
      							_veh animateDoor ['Door_rear',0];
      							_veh animateDoor ['Door_LM',0];
      							_veh animateDoor ['Door_RM',0];
      							_veh animateDoor ['Door_LF',0];
      							_veh animateDoor ['Door_RF',0];
      							_veh animateDoor ['Door_LB',0];
      							_veh animateDoor ['Door_RB',0];
      						} else {
      							[[_veh,2],"life_fnc_lockVehicle",_veh,false] spawn life_fnc_MP;
      							_veh animateDoor ["door_back_R",0];
      							_veh animateDoor ["door_back_L",0];
      							_veh animateDoor ['door_R',0];
      							_veh animateDoor ['door_L',0];
      							_veh animateDoor ['Door_rear',0];
      							_veh animateDoor ['Door_LM',0];
      							_veh animateDoor ['Door_RM',0];
      							_veh animateDoor ['Door_LF',0];
      							_veh animateDoor ['Door_RF',0];
      							_veh animateDoor ['Door_LB',0];
      							_veh animateDoor ['Door_RB',0];
      						};	
      						hint composeText [ image "icons\lock.paa", "  Fahrzeug abgeschlossen" ];
      						player say3D "car_lock";
      						systemChat localize "STR_MISC_VehLock";
      					};
      				};
      			};
      		};
      	};
      };
      _handled;
      Alles anzeigen
    • sebel1
      Frischling
      Trophäen
      11
      Beiträge
      8
      • 12. Dezember 2015 um 13:28
      • #14

      Sorry, falsches script, das ist das richtige.

      Code
      #include <macro.h>
      /*
      	File: fn_actionKeyHandler.sqf
      	Author: Bryan "Tonic" Boardwine
      
      	Description:
      	Master action key handler, handles requests for picking up various items and
      	interacting with other players (Cops = Cop Menu for unrestrain,escort,stop escort, arrest (if near cop hq), etc).
      */
      private["_curTarget","_isWater"];
      _curTarget = cursorTarget;
      if(life_action_inUse) exitWith {}; //Action is in use, exit to prevent spamming.
      if(life_action_gathering) exitWith {};
      if(life_interrupted) exitWith {life_interrupted = false;};
      _isWater = surfaceIsWater (visiblePositionASL player);
      
      
      
      
      //Check if the player is near an ATM.
      if((call life_fnc_nearATM) && {!dialog}) exitWith {
      	[] call life_fnc_atmMenu;
      };
      
      
      
      
      if(isNull _curTarget) exitWith {
      	if(_isWater) then {
      		private "_fish";
      		_fish = (nearestObjects[visiblePosition player,["Fish_Base_F"],3]) select 0;
      		if(!isNil "_fish") then {
      			[_fish] call life_fnc_catchFish;
      		};
      	} else {
      		if(playerSide == civilian && !life_action_gathering) then {
      			_handle = [] spawn life_fnc_gather;
      			waitUntil {scriptDone _handle};
      			life_action_gathering = false;
      		};
      	};
      };
      
      
      
      
      
      
      
      if(!alive _curTarget && _curTarget isKindOf "Animal" && !(EQUAL((typeOf _curTarget),"Turtle_F"))) exitWith {
      	[_curTarget] call life_fnc_gutAnimal;
      };
      
      
      
      
      if(_curTarget isKindOf "House_F" && {player distance _curTarget < 12} OR ((nearestObject [[16019.5,16952.9,0],"Land_Dome_Big_F"]) == _curTarget OR (nearestObject [[16019.5,16952.9,0],"Land_Research_house_V1_F"]) == _curTarget)) exitWith {
      	[_curTarget] call life_fnc_houseMenu;
      };
      
      
      
      
      if(dialog) exitWith {}; //Don't bother when a dialog is open.
      if(vehicle player != player) exitWith {}; //He's in a vehicle, cancel!
      life_action_inUse = true;
      
      
      
      
      //Temp fail safe.
      [] spawn {
      	sleep 60;
      	life_action_inUse = false;
      };
      
      
      
      
      //Check if it's a dead body.
      if(_curTarget isKindOf "Man" && {!alive _curTarget} && {playerSide in [west,independent]}) exitWith {
      	//Hotfix code by ins0
      	if(((playerSide == blufor && {(EQUAL(LIFE_SETTINGS(getNumber,"revive_cops"),1))}) || playerSide == independent) && {"Medikit" in (items player)}) then {
      		[_curTarget] call life_fnc_revivePlayer;
      	};
      };
      
      
      
      
      
      
      
      //If target is a player then check if we can use the cop menu.
      if(isPlayer _curTarget && _curTarget isKindOf "Man") then {
      	if((_curTarget GVAR ["restrained",false]) && !dialog && playerSide == west) then {
      		[_curTarget] call life_fnc_copInteractionMenu;
      	};
      } else {
      	//OK, it wasn't a player so what is it?
      	private["_isVehicle","_miscItems","_money","_list"];
      
      	_list = ["landVehicle","Ship","Air"];
      	_isVehicle = if(KINDOF_ARRAY(_curTarget,_list)) then {true} else {false};
      	_miscItems = ["Land_BottlePlastic_V1_F","Land_TacticalBacon_F","Land_Can_V3_F","Land_CanisterFuel_F","Land_Suitcase_F"];
      	_animalTypes = ["Salema_F","Ornate_random_F","Mackerel_F","Tuna_F","Mullet_F","CatShark_F","Turtle_F"];
      	_money = "Land_Money_F";
      
      	//It's a vehicle! open the vehicle interaction key!
      	if(_isVehicle) then {
      		if(!dialog) then {
      			if(player distance _curTarget < SEL(SEL(boundingBox _curTarget,1),0)+2) then {
      				[_curTarget] call life_fnc_vInteractionMenu;
      			};
      		};
      	} else {
      		//Is it a animal type?
      		if((typeOf _curTarget) in _animalTypes) then {
      			if(EQUAL((typeOf _curTarget),"Turtle_F") && !alive _curTarget) then {
      				private "_handle";
      				_handle = [_curTarget] spawn life_fnc_catchTurtle;
      				waitUntil {scriptDone _handle};
      			} else {
      				private "_handle";
      				_handle = [_curTarget] spawn life_fnc_catchFish;
      				waitUntil {scriptDone _handle};
      			};
      		} else {
      			//OK, it wasn't a vehicle so let's see what else it could be?
      			if((typeOf _curTarget) in _miscItems) then {
      				[[_curTarget,player,false],"TON_fnc_pickupAction",false,false,true] call life_fnc_MP;
      			} else {
      				//It wasn't a misc item so is it money?
      				if(EQUAL((typeOf _curTarget),_money) && {!(_curTarget GVAR ["inUse",false])}) then {
      					[[_curTarget,player,true],"TON_fnc_pickupAction",false,false,true] call life_fnc_MP;
      				};
      
      			};
      		};
      	};
      };
      Alles anzeigen
    • Nick91
      Frischling
      Trophäen
      8
      Beiträge
      1
      • 4. Juni 2016 um 21:30
      • #15

      Ich erwecke den Thread mal wieder zum Leben.
      Ich habe ein kleines Problem, habe mich strickt an die Anleitung gehalten, jedoch funktioniert nur das Weed bei mir.
      Cocaine und Heroin funktioniert nicht, wenn ich es verarbeitet habe und benutzen will sagt er mir das ich das Item nicht benutzen kann.

      Kann ja dann nur an der UseItem liegen, nicht?

      Grüße

      Code
      #include "..\..\script_macros.hpp"
      /*
      	File: fn_useItem.sqf
      	Author: Bryan "Tonic" Boardwine
      
      
      
      
      	Description:
      	Main function for item effects and functionality through the player menu.
      */
      private "_item";
      disableSerialization;
      if(EQUAL(lbCurSel 2005,-1)) exitWith {hint localize "STR_ISTR_SelectItemFirst";};
      _item = CONTROL_DATA(2005);
      
      
      
      
      switch (true) do {
      	case (_item in ["waterBottle","coffee","redgull"]): {
      		if(([false,_item,1] call life_fnc_handleInv)) then {
      			life_thirst = 100;
      			if(EQUAL(LIFE_SETTINGS(getNumber,"enable_fatigue"),1)) then {player setFatigue 0;};
      			if(EQUAL(_item,"redgull") && {EQUAL(LIFE_SETTINGS(getNumber,"enable_fatigue"),1)}) then {
      				[] spawn {
      					life_redgull_effect = time;
      					titleText[localize "STR_ISTR_RedGullEffect","PLAIN"];
      					player enableFatigue false;
      					waitUntil {!alive player OR ((time - life_redgull_effect) > (3 * 60))};
      					player enableFatigue true;
      				};
      			};
      		};
      	};
      
      
      
      
      	case (EQUAL(_item,"boltcutter")): {
      		[cursorTarget] spawn life_fnc_boltcutter;
      		closeDialog 0;
      	};
      
      
      
      
      	case (EQUAL(_item,"blastingcharge")): {
      		player reveal fed_bank;
      		(group player) reveal fed_bank;
      		[cursorTarget] spawn life_fnc_blastingCharge;
      	};
      
      
      
      
      	case (EQUAL(_item,"defusekit")): {
      		[cursorTarget] spawn life_fnc_defuseKit;
      	};
      
      
      
      
      	case (EQUAL(_item,"storagesmall")): {
      		[] call life_fnc_storageBoxSmall;
      	};
      
      
      
      
      	case (EQUAL(_item,"storagebig")): {
      		[] call life_fnc_storageBoxBig;
      	};
      
      
      
      
      	case (EQUAL(_item,"spikeStrip")): {
      		if(!isNull life_spikestrip) exitWith {hint localize "STR_ISTR_SpikesDeployment"};
      		if(([false,_item,1] call life_fnc_handleInv)) then {
      			[] spawn life_fnc_spikeStrip;
      		};
      	};
      
      
      
      
      	case (EQUAL(_item,"fuelFull")): {
      		if(vehicle player != player) exitWith {hint localize "STR_ISTR_RefuelInVehicle"};
      		[] spawn life_fnc_jerryRefuel;
      	};
      
      
      
      
      	case (EQUAL(_item,"lockpick")): {
      		[] spawn life_fnc_lockpick;
      	};
      
      
      
      
      	case (_item in ["apple","rabbit","salema","ornate","mackerel","tuna","mullet","catshark","turtlesoup","hen","rooster","sheep","goat","donuts","tbacon","peach"]): {
      		if(!(EQUAL(M_CONFIG(getNumber,"VirtualItems",_item,"edible"),-1))) then {
      			if([false,_item,1] call life_fnc_handleInv) then {
      				_val = M_CONFIG(getNumber,"VirtualItems",_item,"edible");
      				_sum = life_hunger + _val;
      				switch (true) do {
      					case (_val < 0 && _sum < 1): {life_hunger = 5;}; //This adds the ability to set the entry edible to a negative value and decrease the hunger without death
      					case (_sum > 100): {life_hunger = 100;};
      					default {life_hunger = _sum;};
      				};
      			};
      		};
      	};
      
      case (_item in ["heroinp"]): 
      { 
      if(playerSide in [west,independent]) exitWith {hint "Hallo Sie sind im Dienst!!";};
      if((player getVariable ["Druged",FALSE])) exitWith {hint "Du nimmst bereits geiles Zeug";};
      if(([false,_item,1] call life_fnc_handleInv)) then 
      {
      if(isNil "life_drug") then {life_drug = 0;};
      //Wenn er Drogen nimmt
      life_drug = life_drug + 0.08;
      if (life_drug < 0.00) exitWith {};
      [] spawn life_fnc_Heroinnimm;
      };
      };
      
      
      
      
      case (_item in ["marijuana"]):
      {
      if(playerSide in [west,independent]) exitWith {hint "Hallo Sie sind im Dienst!!";};
      if((player getVariable ["Druged",FALSE])) exitWith {hint "Du nimmst bereits geiles Zeug";};
      if(([false,_item,1] call life_fnc_handleInv)) then
      {
      if(isNil "life_drug") then {life_drug = 0;};
      //Wenn er Drogen nimmt
      life_drug = life_drug + 0.08;
      if (life_drug < 0.00) exitWith {};
      [] spawn life_fnc_Weednimm;
      };
      };
      
      
      
      
      case (_item in ["cocainep"]):
      {
      if(playerSide in [west,independent]) exitWith {hint "Hallo Sie sind im Dienst!!";};
      if((player getVariable ["Druged",FALSE])) exitWith {hint "Du nimmst bereits geiles Zeug";};
      if(([false,_item,1] call life_fnc_handleInv)) then
      {
      if(isNil "life_drug") then {life_drug = 0;};
      //Wenn er Drogen nimmt
      life_drug = life_drug + 0.08;
      if (life_drug < 0.00) exitWith {};
      [] spawn life_fnc_Cocainenimm;
      };
      };
      
      
      
      
      	case (EQUAL(_item,"pickaxe")): {
      		[] spawn life_fnc_pickAxeUse;
      	};
      
      
      
      
      	default {
      		hint localize "STR_ISTR_NotUsable";
      	};
      };
      
      
      
      
      [] call life_fnc_p_updateMenu;
      [] call life_fnc_hudUpdate;
      Alles anzeigen
    • SBuserhy
      Kenner
      Reaktionen
      265
      Beiträge
      519
      • 4. Juni 2016 um 21:45
      • #16

      dann wird dein verarbeitetes Heroin und verarbeitetes Kokain einen anderen Item-Namen haben.

      case (_item in ["heroinp"]):

      case (_item in ["cocainep"]):

      wahrscheinlich heißt dein Item "heroin_processed" oder so und nicht "heroinp"

      ausprobieren, lernen, weiterentwickeln, verbessern :gamer:

      kein Support per PM | schnelle Fehleranalyse >> RPT log Filter

    • Klaus_Trmump
      Anfänger
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      26
      • 11. Dezember 2016 um 20:49
      • #17

      Guten abend
      ich habe alles so gemacht wie es da steht allles funktioniert bis auf die Interaktionstaste nur ich komm nich drauf was falsch is :/

      Spoiler anzeigen

      #include "..\..\script_macros.hpp"
      /*
      File: fn_actionKeyHandler.sqf
      Author: Bryan "Tonic" Boardwine

      Description:
      Master action key handler, handles requests for picking up various items and
      interacting with other players (Cops = Cop Menu for unrestrain,escort,stop escort, arrest (if near cop hq), etc).
      */
      private["_curObject","_isWater","_CrateModelNames","_crate","_fish","_animal","_whatIsIt","_handle"];
      _curObject = cursorObject;
      if (life_action_inUse) exitWith {}; //Action is in use, exit to prevent spamming.
      if (life_interrupted) exitWith {life_interrupted = false;};
      _isWater = surfaceIsWater (visiblePositionASL player);

      if (player getVariable["isEscorting",false]) exitWith {
      [] call life_fnc_copInteractionMenu;


      if (LIFE_SETTINGS(getNumber,"global_ATM") isEqualTo 1) then{
      //Check if the player is near an ATM.
      if ((call life_fnc_nearATM) && {!dialog}) exitWith {
      [] call life_fnc_atmMenu;
      };
      };

      if (isNull _curObject) exitWith {
      if (_isWater) then {
      _fish = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_fish")),3]) select 0;
      if (!isNil "_fish") then {
      if (!alive _fish) then {
      [_fish] call life_fnc_catchFish;
      };
      };
      } else {
      _animal = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_hunting")),3]) select 0;
      if (!isNil "_animal") then {
      if (!alive _animal) then {
      [_animal] call life_fnc_gutAnimal;
      };
      } else {
      private "_handle";
      if (playerSide isEqualTo civilian && !life_action_gathering) then {
      _whatIsIt = [] call life_fnc_whereAmI;
      if (life_action_gathering) exitWith {}; //Action is in use, exit to prevent spamming.
      switch (_whatIsIt) do {
      case "mine" : { _handle = [] spawn life_fnc_mine };
      default { _handle = [] spawn life_fnc_gather };
      };
      life_action_gathering = true;
      waitUntil {scriptDone _handle};
      life_action_gathering = false;
      };
      };
      };
      };

      if ((_curObject isKindOf "B_supplyCrate_F" || _curObject isKindOf "Box_IND_Grenades_F") && {player distance _curObject < 3} ) exitWith {
      if (alive _curObject) then {
      [_curObject] call life_fnc_containerMenu;
      };
      };

      if (_curObject isKindOf "House_F" && {player distance _curObject < 12} || ((nearestObject [[16019.5,16952.9,0],"Land_Dome_Big_F"]) == _curObject || (nearestObject [[16019.5,16952.9,0],"Land_Research_house_V1_F"]) == _curObject)) exitWith {
      [_curObject] call life_fnc_houseMenu;
      };

      if (dialog) exitWith {}; //Don't bother when a dialog is open.
      if (vehicle player != player) exitWith {}; //He's in a vehicle, cancel!
      life_action_inUse = true;

      //Temp fail safe.
      [] spawn {
      sleep 60;
      life_action_inUse = false;
      };

      //Check if it's a dead body.
      if (_curObject isKindOf "Man" && !(_curObject isKindOf "Animal") && {!alive _curObject} && !(_curObject getVariable["Revive",false]) && {playerSide in [west,independent]}) exitWith {
      //Hotfix code by ins0
      if (((playerSide isEqualTo west && {(LIFE_SETTINGS(getNumber,"revive_cops") isEqualTo 1)}) || playerSide isEqualTo independent)) then {
      if (life_inv_defibrillator > 0) then {
      [_curObject] call life_fnc_revivePlayer;
      };
      };
      };

      //If target is a player then check if we can use the cop menu.
      if (isPlayer _curObject && _curObject isKindOf "Man") then {
      if ((_curObject getVariable ["restrained",false]) && !dialog && playerSide isEqualTo west) then {
      [_curObject] call life_fnc_copInteractionMenu;
      };
      } else {
      //OK, it wasn't a player so what is it?
      private["_isVehicle","_miscItems","_money","_list"];

      _list = ["landVehicle","Ship","Air"];
      _isVehicle = if (KINDOF_ARRAY(_curObject,_list)) then {true} else {false};
      _miscItems = ["Land_BottlePlastic_V1_F","Land_TacticalBacon_F","Land_Can_V3_F","Land_CanisterFuel_F","Land_Suitcase_F"];

      //It's a vehicle! open the vehicle interaction key!
      if (_isVehicle) then {
      if (!dialog) then {
      if (player distance _curObject < ((boundingBox _curObject select 1) select 0)+2 && (!(player getVariable ["restrained",false])) && (!(player getVariable ["playerSurrender",false])) && !life_isknocked && !life_istazed) then {
      [_curObject] call life_fnc_vInteractionMenu;
      };
      };
      } else {
      //OK, it wasn't a vehicle so let's see what else it could be?
      if ((typeOf _curObject) in _miscItems) then {
      [_curObject,player,false] remoteExecCall ["TON_fnc_pickupAction",RSERV];
      } else {
      //It wasn't a misc item so is it money?
      if ((typeOf _curObject) isEqualTo "Land_Money_F" && {!(_curObject getVariable ["inUse",false])}) then {
      [_curObject,player,true] remoteExecCall ["TON_fnc_pickupAction",RSERV];
      };
      };
      else
      {
      if(playerSide == independent) then
      {
      if(_curTarget getVariable["restrained",false]&& (!(player getVariable "restrained"))) then
      {
      if(!dialog) then
      {
      [_curTarget] call life_fnc_pInteraction_med;
      }
      else
      {
      hint "Es wird bereits ein Dialog angezeigt.";
      };
      }
      else
      {
      hint "Der andere Spieler muss gefesselt sein.";
      sleep 3;
      hint "Oder Sie sind gefesselt!";
      };
      };
      };
      };
      };

    • redtraxx
      Schüler
      Reaktionen
      6
      Trophäen
      10
      Beiträge
      108
      • 14. Februar 2017 um 20:40
      • #18

      Hey Leute ich habe die 5.0 und bei mir werden so keine Sounds abgespielt.

      Code: heroinnimm.sqf
      /*
      ----------------------------------------------|
      Author: Backer
      Description: Effekt on heroin use! If you use to much you get naked and spawn on random positions (markers)
      ----------------------------------------------|
      */
      
      
      
      
      
      
      
      closeDialog 0;
      DrugedMarkers = ["druged1","druged2","druged3","druged4","druged5"] call BIS_fnc_selectRandom;
      player setVariable["Druged",true,true];
      player allowDamage false;
      
      
      
      
      
      
      
      
      
      
      
      
      
      [player,"Heroin_sound", 46] call life_fnc_globalSound;
      _posold = getPos player;
      
      
      
      
      
      
      
      if(life_drug > 0) then {
      
      
      
      
      
      
      
      player setPos [getPos player select 0, getPos player select 1, 20000];
      "colorCorrections" ppEffectEnable true;
      "colorCorrections"
      ppEffectAdjust [1, 1, 0, [0,0,0,0.5], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5,random 1], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5, random 1]];
      "colorCorrections" ppEffectCommit 1;
      "chromAberration" ppEffectEnable true;
      "chromAberration" ppEffectAdjust [0.01,0.01,true];
      "chromAberration" ppEffectCommit 1;
      sleep 2.25;
      
      
      
      
      
      
      
      for "_i" from 0 to 23 do {
      "colorCorrections" ppEffectEnable true;
      "colorCorrections" ppEffectAdjust [1, 1, 0, [0,0,0,0.5], [random 10 -
      random 10,random 10 - random 10,random 10 - random 10,random 1], [random
      10 - random 10,random 10 - random 10,random 10 - random 10, random 1]];
      "colorCorrections" ppEffectCommit 1;
      sleep 2.25;
      };
      
      
      
      
      
      
      
      "chromAberration" ppEffectEnable false;
      "colorCorrections" ppEffectEnable false;
      
      
      
      
      
      
      
      hint "Das war vielleicht mal ein Tripp, BUJAHH";
      player setPos _posold;
      sleep 5;
      };
      //3 mal nehmen
      if (life_drug > 0.22) then {
      titleText [localize "STR_MISC_DrunkBlackOut","BLACK OUT"];
      player playMoveNow "Incapacitated";
      //titleText[localize "STR_MISC_DrunkBlackOut","BLACK IN"];
      sleep 15;
      vehicle player setDir 225;vehicle player setVelocity [0, 0, 0]; vehicle player setpos (getmarkerpos DrugedMarkers);
      publicVariable "DrugedMarkers";
      removeUniform player;removeVest player;
      player playMoveNow "AinjPpneMstpSnonWrflDnon_rolltoback";
      sleep 10;
      titleText[localize "STR_MISC_DrunkBlackOut1","PLAIN"];
      player playMoveNow "amovppnemstpsraswrfldnon";
      
      
      
      
      
      
      
      };
      
      
      
      
      
      
      
      player setVariable["Druged",false,true];
      player allowDamage true;
      Alles anzeigen

      Hat da vielleicht jemand eine Lösung für mich?

    • Brighton
      Frischling
      Reaktionen
      5
      Trophäen
      9
      Beiträge
      26
      • 15. Februar 2017 um 07:37
      • #19
      Zitat von redtraxx

      Hey Leute ich habe die 5.0 und bei mir werden so keine Sounds abgespielt.

      Code: heroinnimm.sqf
      /*
      ----------------------------------------------|
      Author: Backer
      Description: Effekt on heroin use! If you use to much you get naked and spawn on random positions (markers)
      ----------------------------------------------|
      */
      
      
      
      
      
      
      
      closeDialog 0;
      DrugedMarkers = ["druged1","druged2","druged3","druged4","druged5"] call BIS_fnc_selectRandom;
      player setVariable["Druged",true,true];
      player allowDamage false;
      
      
      
      
      
      
      
      
      
      
      
      
      
      [player,"Heroin_sound", 46] call life_fnc_globalSound;
      _posold = getPos player;
      
      
      
      
      
      
      
      if(life_drug > 0) then {
      
      
      
      
      
      
      
      player setPos [getPos player select 0, getPos player select 1, 20000];
      "colorCorrections" ppEffectEnable true;
      "colorCorrections"
      ppEffectAdjust [1, 1, 0, [0,0,0,0.5], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5,random 1], [random 5 - random 5,random 5 -
      random 5,random 5 - random 5, random 1]];
      "colorCorrections" ppEffectCommit 1;
      "chromAberration" ppEffectEnable true;
      "chromAberration" ppEffectAdjust [0.01,0.01,true];
      "chromAberration" ppEffectCommit 1;
      sleep 2.25;
      
      
      
      
      
      
      
      for "_i" from 0 to 23 do {
      "colorCorrections" ppEffectEnable true;
      "colorCorrections" ppEffectAdjust [1, 1, 0, [0,0,0,0.5], [random 10 -
      random 10,random 10 - random 10,random 10 - random 10,random 1], [random
      10 - random 10,random 10 - random 10,random 10 - random 10, random 1]];
      "colorCorrections" ppEffectCommit 1;
      sleep 2.25;
      };
      
      
      
      
      
      
      
      "chromAberration" ppEffectEnable false;
      "colorCorrections" ppEffectEnable false;
      
      
      
      
      
      
      
      hint "Das war vielleicht mal ein Tripp, BUJAHH";
      player setPos _posold;
      sleep 5;
      };
      //3 mal nehmen
      if (life_drug > 0.22) then {
      titleText [localize "STR_MISC_DrunkBlackOut","BLACK OUT"];
      player playMoveNow "Incapacitated";
      //titleText[localize "STR_MISC_DrunkBlackOut","BLACK IN"];
      sleep 15;
      vehicle player setDir 225;vehicle player setVelocity [0, 0, 0]; vehicle player setpos (getmarkerpos DrugedMarkers);
      publicVariable "DrugedMarkers";
      removeUniform player;removeVest player;
      player playMoveNow "AinjPpneMstpSnonWrflDnon_rolltoback";
      sleep 10;
      titleText[localize "STR_MISC_DrunkBlackOut1","PLAIN"];
      player playMoveNow "amovppnemstpsraswrfldnon";
      
      
      
      
      
      
      
      };
      
      
      
      
      
      
      
      player setVariable["Druged",false,true];
      player allowDamage true;
      Alles anzeigen

      Hat da vielleicht jemand eine Lösung für mich?

      Das Tutorial wurde für die 3.1.4.8 geschrieben. Versuch es mal mit say3D oder was anderes.

    • mur205
      Frischling
      Trophäen
      9
      Beiträge
      3
      • 22. Februar 2017 um 06:53
      • #20

      Nur leider geht der Sound link nicht.

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von Native-Servers.com? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Benutzerkonto erstellen

    Tags

    • altis life tutorial
    • altis life tutorials
    • drogentest
    • drogeneffekt
    • überdosis
    • abhändig
    • abhängigkeit

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™