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
Fr: 23 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] Alarm System für das Housing System

      • Altis Life
    • Exodoos
    • 1. August 2016 um 22:56
    • Exodoos
      Fortgeschrittener
      Reaktionen
      164
      Trophäen
      10
      Beiträge
      332
      • 1. August 2016 um 22:56
      • #1

      ALARMSYSTEM FÜR HOUSING
      Tutorial von CamaroZ

      Hallo, dieses Script fügt einen Alarm System zu eurem Housing System hinzu.

      Dann fangen wir mal an.


      Öffnet eure "Functions.hpp" und fügt es unter der class "Housing" ein:

      SQL: Functions.hpp
      class alarme {};

      Geht in euren "Housing" Ordner, der befindet sich im "core" Ordner und erstellt eine neue Datei namens "fn_alarme.sqf":

      SQL: fn_alarme.sqf
      /*
      
      
      
      
      Author: CamaroZ
      File: fn_alarme.sqf
      
      
      
      
      */
      
      
      
      
      private ["_alarme","_house"];
      
      
      
      
      _house = param [0,objNull,[objNull]];
      
      
      
      
      if (isNull _house) exitWith {};
      if (!(_house isKindOf "House_F")) exitWith {};
      
      
      
      
      if (_house getVariable "alarme") then {
      
      
      
      
      playSound3D ["A3\Sounds_F\sfx\alarm_independent.wss", player, false, getPosASL player, 1, 1, 150]; //Alarme da Casa
      // No lugar de player pode ser reposto por _house, que o som ficaria no objeto. Porém não foi testado...
      
      
      
      
      } else {
      
      
      
      
          hint "Essa casa não possui, nenhum alarme.";
      
      
      
      
      };
      Alles anzeigen


      Jetzt müsst ihr die folgenden Variablen in den folgenden Dateien einfügen:

      SQL: fn_buyHouse.sqf
      _house setVariable ["uid",floor(random 99999),true];
      _house setVariable ["alarme",true,true]; // Código adicionado
      SQL: fn_sellHouse.sqf
      _house setVariable ["locked",false,true];
      _house setVariable ["alarme",false,true]; // Código adicionado
      SQL: fn_lockupHouse.sqf
      _house setVariable ["locked",true,true];
      _house setVariable ["alarme",true,true]; // Código adicionado

      Dann öffne die Datei "fn_houseMenu.sqf" und füge den gesamten Block ganz unten ein

      SQL: fn_houseMenu.sqf
      } else {
              _Btn1 ctrlSetText localize "STR_pInAct_SellHouse";
              _Btn1 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_sellHouse; closeDialog 0;";
              _Btn1 ctrlShow true;
      
      
      
      
              if (((_curTarget getVariable "house_owner") select 0) != (getPlayerUID player)) then {
                  _Btn1 ctrlEnable false;
              };
      
      
      
      
              if (_curTarget getVariable ["locked",false]) then {
                  _Btn2 ctrlSetText localize "STR_pInAct_UnlockStorage";
              } else {
                  _Btn2 ctrlSetText localize "STR_pInAct_LockStorage";
              };
              _Btn2 buttonSetAction "[life_pInact_curTarget] call life_fnc_lockHouse; closeDialog 0;";
              _Btn2 ctrlShow true;
      
      
      
      
              if (isNull (_curTarget getVariable ["lightSource",objNull])) then {
                  _Btn3 ctrlSetText localize "STR_pInAct_LightsOn";
              } else {
                  _Btn3 ctrlSetText localize "STR_pInAct_LightsOff";
              };
              _Btn3 buttonSetAction "[life_pInact_curTarget] call life_fnc_lightHouseAction; closeDialog 0;";
              _Btn3 ctrlShow true;
      
      
      
      
              if (_curTarget getVariable ["alarme",true]) then { // Código adicionado
              _Btn4 ctrlSetText "Desligar Alarme";
              _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',false,true]; closeDialog 0;";
              _Btn4 ctrlshow true;
              } else {
              _Btn4 ctrlSetText "Ligar Alarme";
              _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',true,true]; closeDialog 0;";
              _Btn4 ctrlshow true;
              };
      Alles anzeigen

      Öffnet die Datei "fn_copBreakDoor.sqf" und fügt das folgende ein:

      SQL: fn_copBreakDoor.sqf
      _door = [_house] call life_fnc_nearestDoor;
      if (_door isEqualTo 0) exitWith {hint localize "STR_Cop_NotaDoor"};
      if ((_house getVariable [format["bis_disabled_Door_%1",_door],0]) isEqualTo 0) exitWith {hint localize "STR_House_Raid_DoorUnlocked"};
      
      
      
      
      life_action_inUse = true;
      
      
      
      
      if(_house getVariable "alarme") then { // Código adicionado
          [_house]call life_fnc_alarme;
          [2,"STR_House_Raid_NOTF",true,[(_house getVariable "house_owner") select 1]] remoteExecCall ["life_fnc_broadcast",RCLIENT]; // Essa mensagem aparecerá para todos os players online no servidor, caso deseje desativar é opcional.
      };
      Alles anzeigen


      Geht jetzt in eure "life_server.pbo" und sucht im Ordner "house" nach "initHouses.sqf" und fügt diese Variablen ein:

      SQL: initHouses.sqf
      _house setVariable ["locked",true,true]; //Lock up all the stuff.
              _house setVariable ["alarme",true,true]; // Código adicionado


      WICHTIG: Der Alarm ist anpassbar, wenn ihr den Alarm bei der lockpick haben wollt nachdem ihr in das Haus eingebrochen habt, fügt diesen Snippet ein:

      SQL
      if(_house getVariable "alarme") then {
          [_house]call life_fnc_alarme;
      };


      Öffnet euren "fn_boltcutter.sqf" und fügt noch diesen Codeschnipsel ein:

      SQL: fn_boltcutter.sqf
      if (_door isEqualTo 0) exitWith {hint localize "STR_Cop_NotaDoor"}; //Not near a door to be broken into.
      if ((_building getVariable [format["bis_disabled_Door_%1",_door],0]) isEqualTo 0) exitWith {hint localize "STR_House_Raid_DoorUnlocked"};
      
      
      
      
      if ((nearestObject [[16019.5,16952.9,0],"Land_Dome_Big_F"]) == _building || (nearestObject [[16019.5,16952.9,0],"Land_Research_house_V1_F"]) == _building) then {
          [[1,2],"STR_ISTR_Bolt_AlertFed",true,[]] remoteExecCall ["life_fnc_broadcast",RCLIENT];
      } else {
          [0,"STR_ISTR_Bolt_AlertHouse",true,[profileName]] remoteExecCall ["life_fnc_broadcast",RCLIENT];
      };
      
      
      
      
      life_action_inUse = true;
      //Setup the progress bar
      
      
      
      
      if(_building getVariable "alarme") then { // Código adicionado
          [_building] call life_fnc_alarme;
      };
      Alles anzeigen

      So, das müsste es gewesen sein, falls was nicht passen sollte oder ich habe es falsch übersetzt, BITTE teilt es mir mit und ich ändere es selbstverständlich.
      Nicht vergessen ich gehe NUR auf kommentare ein, die dementsprechend sittengerecht verfasst worden sind, auf Flamerei gehe ich nicht ein!

      VIEL SPASS!


      PS.:

      Zitat von Dukes

      Hallo zusammen,

      ich habe mir das Script mal angeschaut und habe die Lösung für euer Problem mit der fn_houseMenu.sqf.

      Ihr dürft nicht den ganzen Code einfügen nur diesen hier:

      Code
      if (_curTarget getVariable ["alarme",true]) then { // Código adicionado
                  _Btn4 ctrlSetText "Haus-Alarm deaktivieren";
                  _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',false,true]; closeDialog 0;";
                  _Btn4 ctrlshow true;
              } else {
                  _Btn4 ctrlSetText "Haus-Alarm aktivieren";
                  _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',true,true]; closeDialog 0;";
                  _Btn4 ctrlshow true;
              };

      Ich werde meine fn_houseMenu.sqf unten anhängen. Dann könnt ihr euch das anschauen. Exodoos vielleicht änderst du das oben im TuT noch.


      Hoffe es hilft dem einem oder anderem weiter.

      Mit freundlichen Grüßen,

      Dukes

      Alles anzeigen

      Mit freundlichen Grüßen,

      Exodoos
      ________________________________

      Macht euch doch ein Bild!

      Ohne Logs & entsprechende Dateien kein Support!

      2 Mal editiert, zuletzt von Exodoos (19. Dezember 2017 um 12:42)

    • LolYou!?
      Anfänger
      Reaktionen
      9
      Trophäen
      9
      Beiträge
      37
      • 1. August 2016 um 23:27
      • #2

      Schön übersetzt, kannst vllt Bilder hinzufügen ?

    • Exodoos
      Fortgeschrittener
      Reaktionen
      164
      Trophäen
      10
      Beiträge
      332
      • 1. August 2016 um 23:39
      • #3

      Ich schaue mal was sich in den Tagen machen lässt. :)

      Mit freundlichen Grüßen,

      Exodoos
      ________________________________

      Macht euch doch ein Bild!

      Ohne Logs & entsprechende Dateien kein Support!

    • GenApophis
      Fortgeschrittener
      Reaktionen
      49
      Trophäen
      10
      Beiträge
      303
      • 14. September 2016 um 17:26
      • #4
      Zitat von Exodoos

      Dann öffne die Datei "fn_houseMenu.sqf" und füge den gesamten Block ganz unten ein

      SQL: fn_houseMenu.sqf
      } else {
              _Btn1 ctrlSetText localize "STR_pInAct_SellHouse";
              _Btn1 buttonSetAction "[life_pInact_curTarget] spawn life_fnc_sellHouse; closeDialog 0;";
              _Btn1 ctrlShow true;
      
      
      
      
              if (((_curTarget getVariable "house_owner") select 0) != (getPlayerUID player)) then {
                  _Btn1 ctrlEnable false;
              };
      
      
      
      
              if (_curTarget getVariable ["locked",false]) then {
                  _Btn2 ctrlSetText localize "STR_pInAct_UnlockStorage";
              } else {
                  _Btn2 ctrlSetText localize "STR_pInAct_LockStorage";
              };
              _Btn2 buttonSetAction "[life_pInact_curTarget] call life_fnc_lockHouse; closeDialog 0;";
              _Btn2 ctrlShow true;
      
      
      
      
              if (isNull (_curTarget getVariable ["lightSource",objNull])) then {
                  _Btn3 ctrlSetText localize "STR_pInAct_LightsOn";
              } else {
                  _Btn3 ctrlSetText localize "STR_pInAct_LightsOff";
              };
              _Btn3 buttonSetAction "[life_pInact_curTarget] call life_fnc_lightHouseAction; closeDialog 0;";
              _Btn3 ctrlShow true;
      
      
      
      
              if (_curTarget getVariable ["alarme",true]) then { // Código adicionado
              _Btn4 ctrlSetText "Desligar Alarme";
              _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',false,true]; closeDialog 0;";
              _Btn4 ctrlshow true;
              } else {
              _Btn4 ctrlSetText "Ligar Alarme";
              _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',true,true]; closeDialog 0;";
              _Btn4 ctrlshow true;
              };
      Alles anzeigen


      Hi @Exodoos,
      kannst du hier evtl mal die Fertige Datei zeigen, ich überreisse das irgendwie nicht ganz^^

      GA Gaming Community

      TS3.GA-Gaming.de

    • Brizi Jaeger
      Profi
      Reaktionen
      291
      Trophäen
      11
      Beiträge
      1.025
      • 26. Mai 2017 um 03:51
      • #5

      Wenn ich diesen Code :

      Code
      if (_curTarget getVariable ["alarme",true]) then { // Código adicionado
       _Btn4 ctrlSetText "Desligar Alarme";
       _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',false,true]; closeDialog 0;";
       _Btn4 ctrlshow true;
       } else {
       _Btn4 ctrlSetText "Ligar Alarme";
       _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',true,true]; closeDialog 0;";
       _Btn4 ctrlshow true;
       };

      einfüge öffnet sich gar nicht erst das Interaktionsmenü am Haus

    • [WJ] Relaxo/Spike
      Anfänger
      Reaktionen
      4
      Trophäen
      11
      Beiträge
      46
      • 19. Oktober 2017 um 21:03
      • #6

      bei mir das selbe

      Spoiler anzeigen

      21:01:28 Error in expression

      if (_curTarget in life_hideoutBuildings) exitWith {

      closeD>

      21:01:28 Error position:


      closeD>

      21:01:29 Error else: Nicht definierte Variable in Ausdruck: life_hideoutbuildings

      21:01:29 File core\housing\fn_houseMenu.sqf [life_fnc_houseMenu], line 97

    • Dukes
      Fortgeschrittener
      Reaktionen
      22
      Trophäen
      9
      Beiträge
      423
      • 16. Dezember 2017 um 13:01
      • #7

      Hallo zusammen,

      ich habe mir das Script mal angeschaut und habe die Lösung für euer Problem mit der fn_houseMenu.sqf.

      Ihr dürft nicht den ganzen Code einfügen nur diesen hier:

      Code
      if (_curTarget getVariable ["alarme",true]) then { // Código adicionado
                  _Btn4 ctrlSetText "Haus-Alarm deaktivieren";
                  _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',false,true]; closeDialog 0;";
                  _Btn4 ctrlshow true;
              } else {
                  _Btn4 ctrlSetText "Haus-Alarm aktivieren";
                  _Btn4 buttonSetAction "life_pInact_curTarget setVariable ['alarme',true,true]; closeDialog 0;";
                  _Btn4 ctrlshow true;
              };

      Ich werde meine fn_houseMenu.sqf unten anhängen. Dann könnt ihr euch das anschauen. Exodoos vielleicht änderst du das oben im TuT noch.


      Hoffe es hilft dem einem oder anderem weiter.

      Mit freundlichen Grüßen,

      Dukes

      Dateien

      fn_houseMenu.sqf 8,15 kB – 224 Downloads

      "Liegt der Camper tot im Keller,

      war der Rusher wieder schneller,

      liegt der Rusher tot daneben,

      hat der Camper nen Kollegen,

      sind sie beide noch am Leben,

      ging ne menge Blei vorbei,

      sind sie jedoch beide weg,

      cheatet einer - so ein Dreck!"


      ## -/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/- ##

      Tonnick Community

      TS³ : tonnickcommunity.de

    • Vandigra
      Frischling
      Trophäen
      10
      Beiträge
      10
      • 15. März 2019 um 21:09
      • #8

      Irgendwie funktioniert bei mir der Haus-Alarm nicht.

      Ich verwende die Framework Version 5.0 allerdings noch ohne den "widthRailWay" fix

      Mein Problem:

      Der Button zum deaktivieren des Alarmes wechselt bei mir nicht auf Aktivieren.

      Desweiteren funktioniert auch der Dietrich nicht zum knacken des Türschlosses.

      Soweit ich es beurteilen kann, ist in den Logs nichts auffälliges.

      Dennoch hänge ich sie mal mit an. Genauso wie die housemenu und die lockpick Dateien.

      Dateien

      client.rpt 76,93 kB – 209 Downloads server.rpt 67,12 kB – 197 Downloads fn_houseMenu.sqf 7,91 kB – 149 Downloads fn_lockpick.sqf 4,45 kB – 164 Downloads
    • Alice Kingsleigh
      Profi
      Reaktionen
      329
      Trophäen
      8
      Beiträge
      1.141
      • 15. März 2019 um 21:19
      • #9

      Hmm kann es sein, dass deine mission nicht als pbo gepackt ist? Das kann, auch ohne Logfehler, viele sehr merkwürdige Fehler verursachen.

    • Vandigra
      Frischling
      Trophäen
      10
      Beiträge
      10
      • 15. März 2019 um 22:03
      • #10

      Die Mission habe ich tatsächlich nicht als pbo gepakt.

      Dachte allerdings auch nicht, das dies notwendig sei. Denn bisher hat alles auch so funktioniert, von dem was ich von hier eingebaut habe.

      Edit:
      Habe die Mission jetzt mal in eine pbo verpackt. Allerdings mit dem selben Ergebnis.

      Einmal editiert, zuletzt von Vandigra (15. März 2019 um 22:12) aus folgendem Grund: Nachtrag

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Ähnliche Themen

    • Einbruch Nachricht kommt nicht

      • AmaZiinG
      • 11. Juni 2017 um 11:47
      • Hilfeforum
    • Suche Alarm System für das Housing System

      • harti
      • 17. Oktober 2016 um 13:23
      • Hilfeforum

    Tags

    • Altis Life
    • 4.4
    • alarm system
    • housing system
    • 4.4 r4

    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™