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
Mo: 19 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

    Medics können keinen Heli kaufen (Tanoa)

    • Ocelot
    • 13. September 2016 um 15:40
    • Geschlossen
    • Erledigt
    • Ocelot
      Frischling
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      9
      • 13. September 2016 um 15:40
      • #1

      Servus,

      ich habe auf meinem Server das Problem dass wenn ich einen Helikopter kaufe/ausparke der Heli nicht spawnt und ein Error kommt (Bild vom Error).
      In den RPT-Logs steht leider nichts und die fn_vehicleShopBuy.sqf sieht wie folgt aus:

      Spoiler anzeigen

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

      Description:
      Does something with vehicle purchasing.
      */
      private["_mode","_vIndex","_spawnPoints","_className","_purchasePrice","_buyMultiplier","_rentMultiplier","_colorIndex","_spawnPoint","_vehicle","_vehicleList","_shopSide","_licenses","_licensesName","_exit","_initalPrice"];
      _mode = _this select 0;
      _exit = false;
      if ((lbCurSel 2302) isEqualTo -1) exitWith {hint localize "STR_Shop_Veh_DidntPick";closeDialog 0;};
      _className = lbData[2302,(lbCurSel 2302)];
      _vIndex = lbValue[2302,(lbCurSel 2302)];
      _vehicleList = M_CONFIG(getArray,"CarShops",(life_veh_shop select 0),"vehicles");
      _shopSide = M_CONFIG(getText,"CarShops",(life_veh_shop select 0),"side");

      _licenses = switch (playerSide) do {
      case civilian: {(M_CONFIG(getArray,"LifeCfgVehicles",_className,"licenses") select 0)};
      case west: {(M_CONFIG(getArray,"LifeCfgVehicles",_className,"licenses") select 1)};
      case independent: {(M_CONFIG(getArray,"LifeCfgVehicles",_className,"licenses") select 2)};
      case east: {(M_CONFIG(getArray,"LifeCfgVehicles",_className,"licenses") select 3)};
      };

      _initalPrice = M_CONFIG(getNumber,"LifeCfgVehicles",_className,"price");

      switch (playerSide) do {
      case civilian: {
      _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_CIVILIAN");
      _rentMultiplier = LIFE_SETTINGS(getNumber,"vehicle_rental_multiplier_CIVILIAN");
      };
      case west: {
      _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_COP");
      _rentMultiplier = LIFE_SETTINGS(getNumber,"vehicle_rental_multiplier_COP");
      };
      case independent: {
      _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_MEDIC");
      _rentMultiplier = LIFE_SETTINGS(getNumber,"vehicle_rental_multiplier_MEDIC");
      };
      case east: {
      _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_OPFOR");
      _rentMultiplier = LIFE_SETTINGS(getNumber,"vehicle_rental_multiplier_OPFOR");
      };
      };

      if (_mode) then {
      _purchasePrice = round(_initalPrice * _buyMultiplier);
      } else {
      _purchasePrice = round(_initalPrice * _rentMultiplier);
      };
      _colorIndex = lbValue[2304,(lbCurSel 2304)];

      _licensesName = "";
      {
      if (!(_x isEqualTo "") && {!(LICENSE_VALUE(_x,_shopSide))}) then {
      _licensesName = _licensesName + localize M_CONFIG(getText,"Licenses",_x,"displayName") + "<br/>";
      _exit = true;
      };
      } forEach _licenses;

      if (_exit) exitWith {hint parseText format[(localize "STR_Shop_Veh_NoLicense")+ "<br/><br/>%1",_licensesName];closeDialog 0;};

      if (_purchasePrice < 0) exitWith {closeDialog 0;}; //Bad price entry
      if (CASH < _purchasePrice) exitWith {hint format[localize "STR_Shop_Veh_NotEnough",[_purchasePrice - CASH] call life_fnc_numberText];closeDialog 0;};

      _spawnPoints = life_veh_shop select 1;
      _spawnPoint = "";

      if (((life_veh_shop select 0) == "med_air_hs")) then {
      if ((nearestObjects[(getMarkerPos _spawnPoints),["Air"],35]) isEqualTo []) exitWith {_spawnPoint = _spawnPoints};
      } else {
      //Check if there is multiple spawn points and find a suitable spawnpoint.
      if (_spawnPoints isEqualType []) then {
      //Find an available spawn point.
      {if ((nearestObjects[(getMarkerPos _x),["Car","Ship","Air"],5]) isEqualTo []) exitWith {_spawnPoint = _x};} forEach _spawnPoints;
      } else {
      if ((nearestObjects[(getMarkerPos _spawnPoints),["Car","Ship","Air"],5]) isEqualTo []) exitWith {_spawnPoint = _spawnPoints};
      };
      };


      if (_spawnPoint isEqualTo "") exitWith {hint localize "STR_Shop_Veh_Block";closeDialog 0;};
      CASH = CASH - _purchasePrice;
      hint format[localize "STR_Shop_Veh_Bought",getText(configFile >> "CfgVehicles" >> _className >> "displayName"),[_purchasePrice] call life_fnc_numberText];

      //Spawn the vehicle and prep it.
      if ((life_veh_shop select 0) == "med_air_hs") then {
      _vehicle = createVehicle [_className,[0,0,999],[], 0, "NONE"];
      waitUntil {!isNil "_vehicle" && {!isNull _vehicle}}; //Wait?
      _vehicle allowDamage false;
      _hs = nearestObjects[getMarkerPos _spawnPoint,["Land_HelipadRescue_F"],50] select 0;
      _vehicle setPosATL (_hs modelToWorld [0,0,0]);
      sleep 0.6;
      } else {
      _vehicle = createVehicle [_className, (getMarkerPos _spawnPoint), [], 0, "NONE"];
      waitUntil {!isNil "_vehicle" && {!isNull _vehicle}}; //Wait?
      _vehicle allowDamage false; //Temp disable damage handling..
      _vehicle setPos (getMarkerPos _spawnPoint);
      _vehicle setVectorUp (surfaceNormal (getMarkerPos _spawnPoint));
      _vehicle setDir (markerDir _spawnPoint);
      };
      _vehicle lock 2;
      [_vehicle,_colorIndex] call life_fnc_colorVehicle;
      [_vehicle] call life_fnc_clearVehicleAmmo;
      [_vehicle,"trunk_in_use",false,true] remoteExecCall ["TON_fnc_setObjVar",RSERV];
      [_vehicle,"vehicle_info_owners",[[getPlayerUID player,profileName]],true] remoteExecCall ["TON_fnc_setObjVar",RSERV];
      _vehicle disableTIEquipment true; //No Thermals.. They're cheap but addictive.

      //Side Specific actions.
      switch (playerSide) do {
      case west: {
      [_vehicle,"cop_offroad",true] spawn life_fnc_vehicleAnimate;
      };
      case civilian: {
      if ((life_veh_shop select 2) isEqualTo "civ" && {_className == "B_Heli_Light_01_F"}) then {
      [_vehicle,"civ_littlebird",true] spawn life_fnc_vehicleAnimate;
      };
      };
      case independent: {
      [_vehicle,"med_offroad",true] spawn life_fnc_vehicleAnimate;
      };
      };

      _vehicle allowDamage true;

      life_vehicles pushBack _vehicle;

      //Always handle key management by the server
      [getPlayerUID player,playerSide,_vehicle,1] remoteExecCall ["TON_fnc_keyManagement",RSERV];

      if (_mode) then {
      if (!(_className in ["B_G_Offroad_01_armed_F","B_MRAP_01_hmg_F"])) then {
      if (life_HC_isActive) then {
      [(getPlayerUID player),playerSide,_vehicle,_colorIndex] remoteExecCall ["HC_fnc_vehicleCreate",HC_Life];
      } else {
      [(getPlayerUID player),playerSide,_vehicle,_colorIndex] remoteExecCall ["TON_fnc_vehicleCreate",RSERV];
      };
      };
      };

      if (LIFE_SETTINGS(getNumber,"player_advancedLog") isEqualTo 1) then {
      if (LIFE_SETTINGS(getNumber,"battlEye_friendlyLogging") isEqualTo 1) then {
      advanced_log = format ["bought vehicle %1 for $%2. On Hand Cash: $%3 Bank Balance: $%4",_className,[_purchasePrice] call life_fnc_numberText,[CASH] call life_fnc_numberText,[BANK] call life_fnc_numberText];
      } else {
      advanced_log = format ["%1 - %2 bought vehicle %3 for $%4. On Hand Cash: $%5 Bank Balance $%6",profileName,(getPlayerUID player),_className,[_purchasePrice] call life_fnc_numberText,[CASH] call life_fnc_numberText,[BANK] call life_fnc_numberText];
      };
      publicVariableServer "advanced_log";
      };

      [0] call SOCK_fnc_updatePartial;
      closeDialog 0; //Exit the menu.
      true;

      Ich hoffe ihr könnt mir helfen

      MFG Ocelot

    • blackfisch
      Legende
      Reaktionen
      2.944
      Trophäen
      9
      Beiträge
      5.966
      Dateien
      6
      Bilder
      63
      • 13. September 2016 um 17:57
      • #2

      Benenne einfach mal deinen Shop um von med_air_hs zu med_air (Config_Vehicles.hpp) und passe entsprechend die Init der NPC's an (Shopname & Spawnpunkte ändern)

      Der sucht bei dir nach dem Krankenhaus und findet es nicht

      #MakeArmaNotWar

      Kein Support via PN & Steam! / No Support via DM & Steam!


      Mit freundlichen Grüßen
      blackfisch
      ______________________

      Web: blackfisch.me

      GitHub: GitHub.com/blackfisch

      Mail: [email protected]

      ______________________
      Wichtige Links:
      [Erklärung|Leitfaden] Code Optimierung

      [Tutorial] life_fnc_MP zu remoteExec

      Ohne Logs & entsprechende Dateien kein Support!

      ______________________

    • Ocelot
      Frischling
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      9
      • 14. September 2016 um 14:42
      • #3

      Vielen lieben Dank @blackfisch jetzt spawnt der Helikopter jedoch direkt am Händler , wie lasse ich diesen bei einem Marker spawnen?

      MFG
      Ocelot

    • Ocelot
      Frischling
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      9
      • 14. September 2016 um 15:54
      • #4

      Okay , konnte es bereits fixen :) , nochmals vielen Dank an dich @blackfisch.

      MFG
      Ocelot

    Registrieren oder Einloggen

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

    Benutzerkonto erstellen

    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™