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
Di: 20 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. Hilfeforum

    Zugriff auf Daten

    • moeck
    • 2. Juni 2017 um 07:23
    • Geschlossen
    • Erledigt
    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 2. Juni 2017 um 07:23
      • #1

      Moin,

      ich war gestern die gesamte Zeit auf der Suche nach einer Lösung aber irgendwie habe ich es verpeilt eventuell habt ihr eine Idee wie ich an die Daten rankomme. Also ich habe eine Verwahrstelle mit Koppelung der WantedListe gebaut. Das Einfügen der Daten hat Problem los geklappt und ich habe auch das Auslesen hinbekommen. Ich habe nur an der Stelle mit dem Auslösen/ Ausparken ein Problem, dass ich in der fn_unimpound nicht mehr an die Daten komme. So hier mal der Code um den es geht.

      C: fn_impoundMenu
      #include "..\..\script_macros.hpp"
      /*
          File: fn_impoundMenu.sqf
          Author: Bryan "Tonic" Boardwine
          
          Description:
          Not actually a impound menu, may act as confusion to some but that is what I wanted.
          The purpose of this menu is it is now called a 'Garage' where vehicles are stored (persistent ones).
      */
      #define Button1 2812;
      #define Title 2801;
      
      private["_vehicles","_control","_type","_Button1","_title"];
      disableSerialization;
      _vehicles = [_this,0,[],[[]]] call BIS_fnc_param;
      _type = [_this,1,"",[""]] call BIS_fnc_param;
      _display = findDisplay 2800;
      _Button1 = _display displayCtrl Button1;
      _title = _display displayCtrl Title;
      
      ctrlShow[2803,false];
      ctrlShow[2830,false];
      waitUntil {!isNull (findDisplay 2800)};
      
      if(count _vehicles == 0) exitWith
      {
          ctrlSetText[2811,localize "STR_Garage_NoVehicles"];
      };
      
      _control = (_display displayCtrl 2802);
      lbClear _control;
      
      
      {
          _vehicleInfo = [_x select 2] call life_fnc_fetchVehInfo;
          _control lbAdd (_vehicleInfo select 3);
          _tmp = [_x select 2,_x select 8,_type];
          if (_type isEqualTo "jail") then { _tmp = [_x select 2,_x select 8,_type,_x select 10]}; //Felder: Classname, Color, Jail, Jail_Price (Kosten zum Ausparken)
          _tmp = str(_tmp);
          _control lbSetData [(lbSize _control)-1,_tmp];
          _control lbSetPicture [(lbSize _control)-1,_vehicleInfo select 2];
          _control lbSetValue [(lbSize _control)-1,_x select 0];
      } foreach _vehicles;
      lbSort _control;
      ctrlShow[2810,false];
      ctrlShow[2811,false];
      if (_type isEqualTo "insure") then {
          _Button1 ctrlSetText "Reparieren";
          _Button1 buttonSetAction "[] call life_fnc_restoreVehicle; closeDialog 0;";
          _title ctrlSetText "Versicherung";
      } else {
          _Button1 ctrlSetText localize "STR_Global_Retrieve";
          if (_type isEqualTo "jail") then {_Button1 ctrlSetText "Auslösen"};
          _Button1 buttonSetAction "[] call life_fnc_unimpound; closeDialog 0;";
          _title ctrlSetText localize"STR_GUI_Garage";
      };
      Alles anzeigen

      Soweit so gut hier stehen noch die richtigen Werte drin und auch im Dialog wird alles richtig angezeigt. Wenn ich nun die fn_unimpound aufrufen kann ich auf die Werte nicht mehr zugreifen.

      C: fn_unimpound.sqf
      #include "..\..\script_macros.hpp"
      /*
          File: fn_unimpound.sqf
          Author: Bryan "Tonic" Boardwine
          
          Description:
          Yeah... Gets the vehicle from the garage.
      */
      private["_vehicle","_vid","_pid","_unit","_price","_texture","_type","_dataArr"];
      disableSerialization;
      if(lbCurSel 2802 == -1) exitWith {hint localize "STR_Global_NoSelection"};
      _vehicle = lbData[2802,(lbCurSel 2802)];
      _vehicle = (call compile format["%1",_vehicle]) select 0;
      _vid = lbValue[2802,(lbCurSel 2802)];
      _type = (call compile format["%1",_vehicle]) select 2;
      _pid = getPlayerUID player;
      _unit = player;
      _texture = [_vehicle] call life_fnc_vehicleColorCfg;
      if(isNil "_vehicle") exitWith {hint localize "STR_Garage_Selection_Error"};
      _price = [_vehicle,__GETC__(life_garage_prices)] call TON_fnc_index;
      if(_price == -1) then {_price = 1000;} else {_price = (__GETC__(life_garage_prices) select _price) select 1;};
      if (_type isEqualTo "jail") then {
          _price = (call compile format["%1",_vehicle]) select 0;
      };
      if(life_atm5cash < _price) exitWith {hint format[(localize "STR_Garage_CashError"),[_price] call life_fnc_numberText];};
      
      if(typeName life_garage_sp == "ARRAY") then {
          [[_vid,_pid,life_garage_sp select 0,_unit,_price,life_garage_sp select 1],"TON_fnc_spawnVehicle",false,false] spawn life_fnc_MP;
      } else {
          if(life_garage_sp in ["medic_spawn_1","medic_spawn_2","medic_spawn_3"]) then {
              [[_vid,_pid,life_garage_sp,_unit,_price,_texture,_type],"TON_fnc_spawnVehicle",false,false] spawn life_fnc_MP;
          } else {
              _pos = getMarkerPos life_garage_sp;
              //SSG Spawnpunkt
              if (life_garage_sp == "air_g_144") then {
                  _pos = [_pos select 0,_pos select 1,5.46];
              };
              //Kartell
              if (life_garage_sp == "air_g_2") then {
                  _pos = [_pos select 0,_pos select 1,2.12];
              };
              //COP Kavala Heliport
              if (life_garage_sp == "cop_air_1") then {
                  _pos = [_pos select 0,_pos select 1,3.96];
              };
              //COP Kavala Garage
              if (life_garage_sp == "cop_car_1") then {
                  _pos = [_pos select 0,_pos select 1,3];
              };
              [[_vid,_pid,_pos,_unit,_price,markerDir life_garage_sp,_texture,_type],"TON_fnc_spawnVehicle",false,false] spawn life_fnc_MP;
          };
      };
      
      hint localize "STR_Garage_SpawningVeh";
      
      life_atm5cash = life_atm5cash - _price;
      Alles anzeigen

      Kann mir einer verraten wie ich an den _type komme?

      Danke,

      moeck

      Signatur? Was ist eine Signatur? Kann man das essen?

      Bitte beachten: Ich gebe keinen Support über private Nachrichten!


      Ganz wichtig: [Leitfaden] Wie frage Ich richtig um Hilfe?

      Nicht zu vergessen [Tutorial/Selbst-Test] Sollte ich einen Life Server eröffnen ?

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 2. Juni 2017 um 07:48
      • #2

      Moin,

      Thema kann geschlossen werden ;) . Ich habe eben die Lösung gefunden, vielleicht sollte man mal richtig lesen ;(

      Ich musste nur folgende Änderung in der fn_unimpound machen.

      C: fn_unimpound.sqf
      #include "..\..\script_macros.hpp"
      /*
          File: fn_unimpound.sqf
          Author: Bryan "Tonic" Boardwine
          
          Description:
          Yeah... Gets the vehicle from the garage.
      */
      private["_vehicle","_vid","_pid","_unit","_price","_texture","_type","_dataArr"];
      disableSerialization;
      if(lbCurSel 2802 == -1) exitWith {hint localize "STR_Global_NoSelection"};
      _dataArr = lbData[2802,(lbCurSel 2802)];
      _dataArr = call compile format["%1",_dataArr];
      _vehicle = _dataArr select 0;
      _vid = lbValue[2802,(lbCurSel 2802)];
      _type = _dataArr select 2;
      _pid = getPlayerUID player;
      _unit = player;
      _texture = [_vehicle] call life_fnc_vehicleColorCfg;
      if(isNil "_vehicle") exitWith {hint localize "STR_Garage_Selection_Error"};
      _price = [_vehicle,__GETC__(life_garage_prices)] call TON_fnc_index;
      if(_price == -1) then {_price = 1000;} else {_price = (__GETC__(life_garage_prices) select _price) select 1;};
      if (_type isEqualTo "jail") then {
          _price = _dataArr select 3;
      };
      if(life_atm5cash < _price) exitWith {hint format[(localize "STR_Garage_CashError"),[_price] call life_fnc_numberText];};
      
      if(typeName life_garage_sp == "ARRAY") then {
          [[_vid,_pid,life_garage_sp select 0,_unit,_price,life_garage_sp select 1],"TON_fnc_spawnVehicle",false,false] spawn life_fnc_MP;
      } else {
          if(life_garage_sp in ["medic_spawn_1","medic_spawn_2","medic_spawn_3"]) then {
              [[_vid,_pid,life_garage_sp,_unit,_price,_texture,_type],"TON_fnc_spawnVehicle",false,false] spawn life_fnc_MP;
          } else {
              _pos = getMarkerPos life_garage_sp;
              //SSG Spawnpunkt
              if (life_garage_sp == "air_g_144") then {
                  _pos = [_pos select 0,_pos select 1,5.46];
              };
              //Kartell
              if (life_garage_sp == "air_g_2") then {
                  _pos = [_pos select 0,_pos select 1,2.12];
              };
              //COP Kavala Heliport
              if (life_garage_sp == "cop_air_1") then {
                  _pos = [_pos select 0,_pos select 1,3.96];
              };
              //COP Kavala Garage
              if (life_garage_sp == "cop_car_1") then {
                  _pos = [_pos select 0,_pos select 1,3];
              };
              [[_vid,_pid,_pos,_unit,_price,markerDir life_garage_sp,_texture,_type],"TON_fnc_spawnVehicle",false,false] spawn life_fnc_MP;
          };
      };
      
      hint localize "STR_Garage_SpawningVeh";
      
      life_atm5cash = life_atm5cash - _price;
      Alles anzeigen

      In Zeile 12 nutze ich jetzt ein zusätzliches Daten Array.

      Gruß,

      moeck

      Signatur? Was ist eine Signatur? Kann man das essen?

      Bitte beachten: Ich gebe keinen Support über private Nachrichten!


      Ganz wichtig: [Leitfaden] Wie frage Ich richtig um Hilfe?

      Nicht zu vergessen [Tutorial/Selbst-Test] Sollte ich einen Life Server eröffnen ?

    Registrieren oder Einloggen

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

    Registrieren

    Ähnliche Themen

    • [Tutorial] VIS Vehicle Information System | Script für Infos über Tankinformationen, Reichweite, Ø Verbrauch, etc.

      • DerL30N
      • 9. September 2016 um 16:35
      • Tutorials & Releases
    • Datenbank erlaubt nicht kompletten zugriff!

      • ChickenWeed
      • 2. März 2017 um 21:11
      • Hilfeforum
    • Frage zu include und Variablen

      • McArthur
      • 23. Februar 2017 um 23:18
      • HTML, CSS, PHP, JS
    • Altis Life Extdb 2 Cyberworks Root username Zugriff Problem

      • Matthias Burns
      • 11. Januar 2017 um 17:13
      • Hilfeforum
    • Setting up Client pleas Wait

      • Setafan Waves
      • 5. Januar 2017 um 10:41
      • Hilfeforum
    • Scripts aus der Life_Server.pbo lesen lassen

      • Brizi Jaeger
      • 21. Dezember 2016 um 16:08
      • Hilfeforum

    Benutzer online in diesem Thema

    • 1 Besucher

    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™