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: 25 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

    Banking Fehler

    • AmaZiinG
    • 1. März 2017 um 13:47
    • Geschlossen
    • Erledigt
    • AmaZiinG
      Profi
      Reaktionen
      496
      Beiträge
      798
      Dateien
      4
      Bilder
      46
      • 1. März 2017 um 13:47
      • #1

      Hey Leute,

      zur Zeit installiere ich auf meinen Server das Erweiterte Banking System. Bei Cops und Medics funktioniert es ohne Fehler. Nur bei den Civis bekomme ich folgenden Error im Client Log raus:

      Code
      13:34:53 "----------------------------------------------------------------------------------------------------"
      13:34:53 "--------------------------------- Starting Altis Life Client Init ----------------------------------"
      13:34:53 "------------------------------------------ Version 4.4R3 -------------------------------------------"
      13:34:53 "----------------------------------------------------------------------------------------------------"
      13:34:53 "::Life Client:: Initialization Variables"
      13:34:53 "::Life Client:: Variables initialized"
      13:34:53 "::Life Client:: Setting up Eventhandlers"
      13:34:53 "::Life Client:: Eventhandlers completed"
      13:34:53 "::Life Client:: Setting up user actions"
      13:34:53 "::Life Client:: User actions completed"
      13:34:53 "::Life Client:: Waiting for server functions to transfer.."
      13:34:53 "::Life Client:: Received server functions."
      13:34:53 "::Life Client:: Waiting for the server to be ready.."
      13:34:53  Mission id: af152533d9efec0ea14621965065415229d52bae
      13:34:53 Error in expression <use"];
      life_vehicles pushBack _house;
      } forEach life_houses;
      
      life_gangData = _t>
      13:34:53   Error position: <forEach life_houses;
      
      life_gangData = _t>
      13:34:53   Error foreach: Typ Zahl, erwartet Array
      13:34:53 File mpmissions\__CUR_MP.Jackson_County\core\session\fn_requestReceived.sqf, line 90
      13:36:36 SimulWeather - Cloud Renderer - noise texture file is not specified!
      13:36:36 Deinitialized shape [Class: "C_Soldier_VR_F"; Shape: "a3\characters_f_bootcamp\common\vr_soldier_f.p3d";]
      13:36:36 Deinitialized shape [Class: "Underwear_F"; Shape: "a3\characters_f\common\basicbody.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_w_worker_F"; Shape: "a3\characters_f\common\coveralls.p3d";]
      13:36:36 Deinitialized shape [Class: "B_diver_F"; Shape: "a3\characters_f\common\diver_slotable.p3d";]
      13:36:36 Deinitialized shape [Class: "O_Soldier_F"; Shape: "a3\characters_f\opfor\o_soldier_01.p3d";]
      13:36:36 Deinitialized shape [Class: "C_Nikos_aged"; Shape: "a3\characters_f_epc\civil\c_nikos_aged.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_hunter_1_F"; Shape: "a3\characters_f\civil\c_hunter_f.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_p_beggar_F_afro"; Shape: "a3\characters_f\civil\c_poor.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_p_fugitive_F_asia"; Shape: "a3\characters_f\civil\c_poor.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_p_fugitive_F"; Shape: "a3\characters_f\civil\c_poor.p3d";]
      13:36:36 Deinitialized shape [Class: "B_RangeMaster_F"; Shape: "a3\characters_f\civil\c_poloshirtpants.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_1"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_polo_3_F"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_polo_6_F"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_p_shorts_1_F_afro"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_shorts_3_F_euro"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_polo_5_F"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_polo_4_F"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_polo_2_F"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 Deinitialized shape [Class: "C_man_polo_1_F"; Shape: "a3\characters_f\civil\c_poloshirt.p3d";]
      13:36:36 c:\w\stable\futura\lib\network\networkserver.cpp ClearNetServer:NOT IMPLEMENTED - briefing!
      13:36:38 Extensions:
      Alles anzeigen

      Hier mal meine requestReceived:

      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_requestReceived.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Called by the server saying that we have a response so let's
          sort through the information, validate it and if all valid
          set the client up.
      */
      private["_array"];
      life_session_tries = life_session_tries + 1;
      if (life_session_completed) exitWith {}; //Why did this get executed when the client already initialized?
      if (life_session_tries > 3) exitWith {cutText[localize "STR_Session_Error","BLACK FADED"]; 0 cutFadeOut 999999999;};
      
      0 cutText [localize "STR_Session_Received","BLACK FADED"];
      0 cutFadeOut 9999999;
      
      
      if (isNil "_this") exitWith {[] call SOCK_fnc_insertPlayerInfo;};
      if (_this isEqualType "") exitWith {[] call SOCK_fnc_insertPlayerInfo;};
      if (count _this isEqualTo 0) exitWith {[] call SOCK_fnc_insertPlayerInfo;};
      if ((_this select 0) isEqualTo "Error") exitWith {[] call SOCK_fnc_insertPlayerInfo;};
      if (!(getPlayerUID player isEqualTo (_this select 0))) exitWith {[] call SOCK_fnc_dataQuery;};
      
      
      if (!isServer && (!isNil "life_adminlevel" || !isNil "life_coplevel" || !isNil "life_donorlevel")) exitWith {
          [profileName,getPlayerUID player,"VariablesAlreadySet"] remoteExecCall ["SPY_fnc_cookieJar",RSERV];
          [profileName,format["Variables set before client initialization...\nlife_adminlevel: %1\nlife_coplevel: %2\nlife_donorlevel: %3",life_adminlevel,life_coplevel,life_donorlevel]] remoteExecCall ["SPY_fnc_notifyAdmins",RCLIENT];
          sleep 0.9;
          failMission "SpyGlass";
      };
      
      //Parse basic player information.
      CASH = parseNumber (_this select 2);
      BANK = parseNumber (_this select 3);
      life_bankingpin = parseNumber (_this select 16); //Banking Eintrag !
      CONST(life_adminlevel,parseNumber (_this select 4));
      if (LIFE_SETTINGS(getNumber,"donor_level") isEqualTo 1) then {
          CONST(life_donorlevel,parseNumber (_this select 5));
      } else {
          CONST(life_donorlevel,0);
      };
      
      //Loop through licenses
      if (count (_this select 6) > 0) then {
          {missionNamespace setVariable [(_x select 0),(_x select 1)];} forEach (_this select 6);
      };
      
      life_gear = _this select 8;
      [true] call life_fnc_loadGear;
      
      //Parse side specific information.
      switch (playerSide) do {
          case west: {
              CONST(life_coplevel, parseNumber(_this select 7));
              CONST(life_medicLevel,0);
              life_blacklisted = _this select 9;
              if (LIFE_SETTINGS(getNumber,"save_playerStats") isEqualTo 1) then {
                  life_hunger = ((_this select 10) select 0);
                  life_thirst = ((_this select 10) select 1);
                  player setDamage ((_this select 10) select 2);
              };
          };
      
          case civilian: {
              life_is_arrested = _this select 7;
              CONST(life_coplevel, 0);
              CONST(life_medicLevel, 0);
              life_houses = _this select 13;
              if (LIFE_SETTINGS(getNumber,"save_playerStats") isEqualTo 1) then {
                  life_hunger = ((_this select 9) select 0);
                  life_thirst = ((_this select 9) select 1);
                  player setDamage ((_this select 9) select 2);
              };
      
              //Position
              if (LIFE_SETTINGS(getNumber,"save_civilian_position") isEqualTo 1) then {
                  life_is_alive = _this select 10;
                  life_civ_position = _this select 11;
                  if (life_is_alive) then {
                      if (count life_civ_position != 3) then {diag_log format["[requestReceived] Bad position received. Data: %1",life_civ_position];life_is_alive =false;};
                      if (life_civ_position distance (getMarkerPos "respawn_civilian") < 300) then {life_is_alive = false;};
                  };
              };
      
              {
                  _house = nearestObject [(call compile format["%1",(_x select 0)]), "House"];
                  life_vehicles pushBack _house;
              } forEach life_houses;
      
              life_gangData = _this select 14;
              if (!(count life_gangData isEqualTo 0)) then {
                  [] spawn life_fnc_initGang;
              };
              [] spawn life_fnc_initHouses;
          };
      
          case independent: {
              CONST(life_medicLevel, parseNumber(_this select 7));
              CONST(life_coplevel,0);
              if (LIFE_SETTINGS(getNumber,"save_playerStats") isEqualTo 1) then {
                  life_hunger = ((_this select 9) select 0);
                  life_thirst = ((_this select 9) select 1);
                  player setDamage ((_this select 9) select 2);
              };
          };
          
          case east: { 
              CONST(life_adaclevel, parseNumber(_this select 7)); 
              CONST(life_coplevel,0); 
              if (LIFE_SETTINGS(getNumber,"save_playerStats") isEqualTo 1) then {
                   life_hunger = ((_this select 9) select 0);
                   life_thirst = ((_this select 9) select 1);
                   player setDamage ((_this select 9) select 2); 
              }; 
         };
      };
      
      if (count (_this select 16) > 0) then {
          {life_vehicles pushBack _x;} forEach (_this select 15);
      };
      
      life_session_completed = true;
      Alles anzeigen

      Ich hoffe das mir jemand weiter helfen kann.

      Mfg

      AmaZiinG

      Mein Discord:
      https://discord.gg/4UMWmpfDet

    • ZorG
      Amateur
      Reaktionen
      84
      Beiträge
      276
      • 1. März 2017 um 14:07
      • #2

      Musstest Du den DB request erweitern da Du zusätzliche einträge ausliest?

      Dann verschiebt sich die Pos des queryrequest (life_server, MySql, fn_queryRequest.sqf) für Häuser und Gang.

      Da die Daten beim queryrequest hinten dran gehängt werden.

      Hast Du hier was geändert/erweitert

      Code
      _query = switch (_side) do {
          // West - 11 entries returned
          case west: {format ["SELECT pid, name, cash, bankacc, adminlevel, donorlevel, cop_licenses, coplevel, cop_gear, blacklist, cop_stats, playtime FROM players WHERE pid='%1'",_uid];};
          // Civilian - 12 entries returned
          case civilian: {format ["SELECT pid, name, cash, bankacc, adminlevel, donorlevel, civ_licenses, arrested, civ_gear, civ_stats, civ_alive, civ_position, playtime FROM players WHERE pid='%1'",_uid];};
          // Independent - 10 entries returned
          case independent: {format ["SELECT pid, name, cash, bankacc, adminlevel, donorlevel, med_licenses, mediclevel, med_gear, med_stats, playtime FROM players WHERE pid='%1'",_uid];};
      };

      Dann ändert sich der select Wert in fn_requestReceived.sqf für Häuser und Gang.

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 1. März 2017 um 14:09
      • #3

      Moin,

      wenn ich mich nicht irre ist die Variable life_houses nicht vom Typ array. Zu mindestens sagt das die Fehlermeldung aus. Also momentan steht da eine Zahl drin und nicht ein 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 ?

    • AmaZiinG
      Profi
      Reaktionen
      496
      Beiträge
      798
      Dateien
      4
      Bilder
      46
      • 1. März 2017 um 15:04
      • #4

      Ich habe die fn_queryRequest erweitert.

      Aber ich denke nicht das ich einen Fehler gemacht habe.

      Code
      #include "\life_server\script_macros.hpp"
      /*
          File: fn_queryRequest.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Handles the incoming request and sends an asynchronous query
          request to the database.
      
          Return:
          ARRAY - If array has 0 elements it should be handled as an error in client-side files.
          STRING - The request had invalid handles or an unknown error and is logged to the RPT.
      */
      private["_uid","_side","_query","_queryResult","_tickTime","_tmp"];
      _uid = [_this,0,"",[""]] call BIS_fnc_param;
      _side = [_this,1,sideUnknown,[civilian]] call BIS_fnc_param;
      _ownerID = [_this,2,ObjNull,[ObjNull]] call BIS_fnc_param;
      
      if (isNull _ownerID) exitWith {};
      _ownerID = owner _ownerID;
      
      _query = switch (_side) do {
          // West - 11 entries returned
          case west: {format["SELECT playerid, name, cash, bankacc, adminlevel, donorlevel, cop_licenses, coplevel, cop_gear, blacklist, cop_stats, playtime, banking_pin FROM players WHERE playerid='%1'",_uid];};
          // Civilian - 12 entries returned
          case civilian: {format["SELECT playerid, name, cash, bankacc, adminlevel, donorlevel, civ_licenses, arrested, civ_gear, civ_stats, civ_alive, civ_position, playtime, banking_pin FROM players WHERE playerid='%1'",_uid];};
          // Independent - 10 entries returned
          case independent: {format["SELECT playerid, name, cash, bankacc, adminlevel, donorlevel, med_licenses, mediclevel, med_gear, med_stats, playtime, banking_pin FROM players WHERE playerid='%1'",_uid];};
          // East - 10 entries returned
          case east: {format["SELECT playerid, name, cash, bankacc, adminlevel, donorlevel, adac_licenses, adaclevel, adac_gear, adac_stats, playtime, banking_pin FROM players WHERE playerid='%1'",_uid];};
      };
      
      _tickTime = diag_tickTime;
      _queryResult = [_query,2] call DB_fnc_asyncCall;
      
      if (EXTDB_SETTING(getNumber,"DebugMode") isEqualTo 1) then {
          diag_log "------------- Client Query Request -------------";
          diag_log format["QUERY: %1",_query];
          diag_log format["Time to complete: %1 (in seconds)",(diag_tickTime - _tickTime)];
          diag_log format["Result: %1",_queryResult];
          diag_log "------------------------------------------------";
      };
      
      if (_queryResult isEqualType "") exitWith {
          [] remoteExecCall ["SOCK_fnc_insertPlayerInfo",_ownerID];
      };
      
      if (count _queryResult isEqualTo 0) exitWith {
          [] remoteExecCall ["SOCK_fnc_insertPlayerInfo",_ownerID];
      };
      
      //Blah conversion thing from a2net->extdb
      _tmp = _queryResult select 2;
      _queryResult set[2,[_tmp] call DB_fnc_numberSafe];
      _tmp = _queryResult select 3;
      _queryResult set[3,[_tmp] call DB_fnc_numberSafe];
      
      //Parse licenses (Always index 6)
      _new = [(_queryResult select 6)] call DB_fnc_mresToArray;
      if (_new isEqualType "") then {_new = call compile format["%1", _new];};
      _queryResult set[6,_new];
      
      //Convert tinyint to boolean
      _old = _queryResult select 6;
      for "_i" from 0 to (count _old)-1 do {
          _data = _old select _i;
          _old set[_i,[_data select 0, ([_data select 1,1] call DB_fnc_bool)]];
      };
      
      _queryResult set[6,_old];
      
      _new = [(_queryResult select 8)] call DB_fnc_mresToArray;
      if (_new isEqualType "") then {_new = call compile format["%1", _new];};
      _queryResult set[8,_new];
      //Parse data for specific side.
      switch (_side) do {
          case west: {
              _queryResult set[9,([_queryResult select 9,1] call DB_fnc_bool)];
      
              //Parse Stats
              _new = [(_queryResult select 10)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _queryResult set[10,_new];
      
              //Playtime
              _new = [(_queryResult select 11)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _index = TON_fnc_playtime_values_request find [_uid, _new];
              if (_index != -1) then {
                  TON_fnc_playtime_values_request set[_index,-1];
                  TON_fnc_playtime_values_request = TON_fnc_playtime_values_request - [-1];
                  TON_fnc_playtime_values_request pushBack [_uid, _new];
              } else {
                  TON_fnc_playtime_values_request pushBack [_uid, _new];
              };
              [_uid,_new select 0] call TON_fnc_setPlayTime;
              
              //Bank PIN
              _tmp = _queryResult select 12;
              _queryResult set[16,[_tmp] call DB_fnc_numberSafe];
          };
      
          case civilian: {
              _queryResult set[7,([_queryResult select 7,1] call DB_fnc_bool)];
      
              //Parse Stats
              _new = [(_queryResult select 9)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _queryResult set[9,_new];
      
              //Position
              _queryResult set[10,([_queryResult select 10,1] call DB_fnc_bool)];
              _new = [(_queryResult select 11)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _queryResult set[11,_new];
      
              //Bank PIN
              _tmp = _queryResult select 13;
              _queryResult set[16,[_tmp] call DB_fnc_numberSafe];
              
              //Playtime
              _new = [(_queryResult select 12)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _index = TON_fnc_playtime_values_request find [_uid, _new];
              if (_index != -1) then {
                  TON_fnc_playtime_values_request set[_index,-1];
                  TON_fnc_playtime_values_request = TON_fnc_playtime_values_request - [-1];
                  TON_fnc_playtime_values_request pushBack [_uid, _new];
              } else {
                  TON_fnc_playtime_values_request pushBack [_uid, _new];
              };
              [_uid,_new select 2] call TON_fnc_setPlayTime;
      
              _houseData = _uid spawn TON_fnc_fetchPlayerHouses;
              waitUntil {scriptDone _houseData};
              _queryResult pushBack (missionNamespace getVariable[format["houses_%1",_uid],[]]);
              _gangData = _uid spawn TON_fnc_queryPlayerGang;
              waitUntil{scriptDone _gangData};
              _queryResult pushBack (missionNamespace getVariable[format["gang_%1",_uid],[]]);
          };
      
          case independent: {
              //Parse Stats
              _new = [(_queryResult select 9)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _queryResult set[9,_new];
      
              //Playtime
              _new = [(_queryResult select 10)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _index = TON_fnc_playtime_values_request find [_uid, _new];
              if (_index != -1) then {
                  TON_fnc_playtime_values_request set[_index,-1];
                  TON_fnc_playtime_values_request = TON_fnc_playtime_values_request - [-1];
                  TON_fnc_playtime_values_request pushBack [_uid, _new];
              } else {
                  TON_fnc_playtime_values_request pushBack [_uid, _new];
              };
              [_uid,_new select 1] call TON_fnc_setPlayTime;
              
              //Bank PIN
              _tmp = _queryResult select 11;
              _queryResult set[16,[_tmp] call DB_fnc_numberSafe];
          };
          
           case east: {
              //Pa* * e Stats
              _new = [(_queryResult select 9)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _queryResult set[9,_new];
      
              //Playtime
              _new = [(_queryResult select 10)] call DB_fnc_mresToArray;
              if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _index = TON_fnc_playtime_values_request find [_uid, _new];
              if (_index != -1) then {
              TON_fnc_playtime_values_request set[_index,-1];
              TON_fnc_playtime_values_request = TON_fnc_playtime_values_request - [-1];
              TON_fnc_playtime_values_request pushBack [_uid, _new];
              } else {
              TON_fnc_playtime_values_request pushBack [_uid, _new];
              };
              [_uid,_new select 1] call TON_fnc_setPlayTime;
          };
      };
      
      publicVariable "TON_fnc_playtime_values_request";
      
      _keyArr = missionNamespace getVariable [format["%1_KEYS_%2",_uid,_side],[]];
      _queryResult set[15,_keyArr];
      
      _queryResult remoteExec ["SOCK_fnc_requestReceived",_ownerID];
      Alles anzeigen

      Mein Discord:
      https://discord.gg/4UMWmpfDet

    • ZorG
      Amateur
      Reaktionen
      84
      Beiträge
      276
      • 1. März 2017 um 15:34
      • #5
      1. fn_queryRequest.sqf
      2. //Bank PIN
      3. _tmp = _queryResult select 13;
      4. _queryResult set[16,[_tmp] call DB_fnc_numberSafe];
      5. _queryResult set[15,_keyArr];

      fn_requestReceived.sqf

      life_houses = _this select 13; <- Da sind nun ??? nichts?

      life_gangData = _this select 14; <- Da sind nun ??? nichts?

      Dein array sieht in etwa so nun aus.

      ...,"Position","","","","","keys","Bank PIN","Playtime","house","gang"] (select 10,11, 12, 13, 14, 15, 16, 17, 18)

      Da die Playtime, Häuser und die Gang per pushback ans vorhandene array angehängt wird, sieht das nun so aus.

    • AmaZiinG
      Profi
      Reaktionen
      496
      Beiträge
      798
      Dateien
      4
      Bilder
      46
      • 1. März 2017 um 16:34
      • #6
      Zitat von ZorG

      fn_requestReceived.sqf

      life_houses = _this select 13; <- Da sind nun ??? nichts?

      life_gangData = _this select 14; <- Da sind nun ??? nichts?


      Dein array sieht in etwa so nun aus.

      ...,"Position","","","","","keys","Bank PIN","Playtime","house","gang"] (select 10,11, 12, 13, 14, 15, 16, 17, 18)


      Da die Playtime, Häuser und die Gang per pushback ans vorhandene array angehängt wird, sieht das nun so aus.

      Alles anzeigen

      Ich weiß jetzt nicht was du meinst könntest du das vllt ein wenig anders erklären ?:/

      Mein Discord:
      https://discord.gg/4UMWmpfDet

    • ZorG
      Amateur
      Reaktionen
      84
      Beiträge
      276
      • 1. März 2017 um 16:52
      • #7

      mit _queryResult set[16,[_tmp] call DB_fnc_numberSafe]; wird der Bank PIN an stelle 17 vom requestquery geschrieben, danach kommt per pushback die Playtime, Häuser und die Gang hinter die Bank PIN und nicht davor.

      verschieb

      //Bank PIN _tmp = _queryResult select 13;

      _queryResult set[16,[_tmp] call DB_fnc_numberSafe];

      hinter die Gang, also so:

      C
      _houseData = _uid spawn TON_fnc_fetchPlayerHouses;
       waitUntil {scriptDone _houseData};
       _queryResult pushBack (missionNamespace getVariable[format["houses_%1",_uid],[]]);
       _gangData = _uid spawn TON_fnc_queryPlayerGang;
       waitUntil{scriptDone _gangData};
       _queryResult pushBack (missionNamespace getVariable[format["gang_%1",_uid],[]]);
      
      //Bank PIN 
      _tmp = _queryResult select 13;
      _queryResult set[16,[_tmp] call DB_fnc_numberSafe];

      Das könnte so gehen, falls ich mich nicht verzählt habe.

    • AmaZiinG
      Profi
      Reaktionen
      496
      Beiträge
      798
      Dateien
      4
      Bilder
      46
      • 1. März 2017 um 17:16
      • #8

      Ich habe es so verschoben wie du es im Beispiel gezeigt hast. Leider bekomme ich den gleichen Fehler.

      Mein Discord:
      https://discord.gg/4UMWmpfDet

    • Brizi Jaeger
      Profi
      Reaktionen
      291
      Trophäen
      11
      Beiträge
      1.025
      • 1. März 2017 um 19:21
      • #9

      Was ist denn ein neues Banking System?

    • powerafro2
      Profi
      Reaktionen
      357
      Trophäen
      11
      Beiträge
      1.342
      Dateien
      1
      Bilder
      4
      • 1. März 2017 um 19:23
      • #10

      Mit Pin Eingabe. Gibt es auf altisliferpg

      Mfg powerafro2

    • Brizi Jaeger
      Profi
      Reaktionen
      291
      Trophäen
      11
      Beiträge
      1.025
      • 1. März 2017 um 19:37
      • #11

      Aso das xD

    • ZorG
      Amateur
      Reaktionen
      84
      Beiträge
      276
      • 1. März 2017 um 19:57
      • #12

      fn_queryRequest.sqf

      C
      case civilian: {
          _queryResult set[7,([_queryResult select 7,1] call DB_fnc_bool)];
          //Parse Stats
          _new = [(_queryResult select 9)] call DB_fnc_mresToArray;
          if (_new isEqualType "") then {_new = call compile format["%1", _new];};
          _queryResult set[9,_new];
          //Position
          _queryResult set[10,([_queryResult select 10,1] call DB_fnc_bool)];
          _new = [(_queryResult select 11)] call DB_fnc_mresToArray;
          if (_new isEqualType "") then {_new = call compile format["%1", _new];};
          _queryResult set[11,_new];
          //Bank PIN
          _tmp = _queryResult select 13;
          _queryResult set[16,[_tmp] call DB_fnc_numberSafe];
          //Playtime
          _new = [(_queryResult select 12)] call DB_fnc_mresToArray;
          if (_new isEqualType "") then {_new = call compile format["%1", _new];};
              _index = TON_fnc_playtime_values_request find [_uid, _new];
          if (_index != -1) then {
              TON_fnc_playtime_values_request set[_index,-1];
              TON_fnc_playtime_values_request = TON_fnc_playtime_values_request - [-1];
              TON_fnc_playtime_values_request pushBack [_uid, _new];
              } else {
              TON_fnc_playtime_values_request pushBack [_uid, _new];
          };
          _queryResult set[14,[]];
          
          [_uid,_new select 2] call TON_fnc_setPlayTime;
          _houseData = _uid spawn TON_fnc_fetchPlayerHouses;
          waitUntil {scriptDone _houseData};
          _queryResult pushback (missionNamespace getVariable[format["houses_%1",_uid],[]]);
      
          _gangData = _uid spawn TON_fnc_queryPlayerGang;
          waitUntil{scriptDone _gangData};
          _queryResult pushback (missionNamespace getVariable[format["gang_%1",_uid],[]]);
       };
      Alles anzeigen

      fn_requestReceived.sqf

      C
      case civilian: {
           life_is_arrested = _this select 7;
           CONST(life_coplevel, 0);
           CONST(life_medicLevel, 0);
           life_houses = _this select ((count _this)-2); //13;
           if (LIFE_SETTINGS(getNumber,"save_playerStats") isEqualTo 1) then {
           life_hunger = ((_this select 9) select 0);
           life_thirst = ((_this select 9) select 1);
           player setDamage ((_this select 9) select 2);
           };
           //Position
           if (LIFE_SETTINGS(getNumber,"save_civilian_position") isEqualTo 1) then {
               life_is_alive = _this select 10;
               life_civ_position = _this select 11;
               if (life_is_alive) then {
               if (count life_civ_position != 3) then {diag_log format["[requestReceived] Bad position received. Data: %1",life_civ_position];life_is_alive =false;};
               if (life_civ_position distance (getMarkerPos "respawn_civilian") < 300) then {life_is_alive = false;};
               };
           };
           {
              _house = nearestObject [(call compile format["%1",(_x select 0)]), "House"];
              life_vehicles pushBack _house;
           } forEach life_houses;
           life_gangData = _this select ((count _this)-1); //14;
           if (!(count life_gangData isEqualTo 0)) then {
              [] spawn life_fnc_initGang;
           };
           [] spawn life_fnc_initHouses;
       };
      Alles anzeigen
    • AmaZiinG
      Profi
      Reaktionen
      496
      Beiträge
      798
      Dateien
      4
      Bilder
      46
      • 1. März 2017 um 20:37
      • #13

      Danke funktioniert jetzt :)

      Mein Discord:
      https://discord.gg/4UMWmpfDet

    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] Neues Z Menü ( Telefon )

      • 18Nils
      • 21. April 2016 um 21:28
      • Tutorials & Releases
    • Gang Konto | Geld Bug FIX?

      • Kuchenplatte
      • 10. April 2017 um 14:19
      • Hilfeforum
    • Banking Problem

      • AmaZiinG
      • 26. März 2017 um 14:24
      • Hilfeforum
    • Problem bei: NEUES Z MENÜ ( TELEFON ) Banking, Licences und Player Menu

      • Blue283
      • 19. März 2017 um 13:03
      • Hilfeforum

    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™