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
Mi: 21 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

    Fahrzeug Spawn Marker erstellen

      • Altis Life
    • CptPanther
    • 14. August 2015 um 07:59
    • CptPanther
      Frischling
      Reaktionen
      17
      Trophäen
      11
      Beiträge
      6
      • 14. August 2015 um 07:59
      • #1

      Allgemeines


      Der folgende Code bewirkt, dass über einem gekauften Fahrzeug (Truck oder PKW) sich ein Pfeil befindet. Dieser ist kein rigidBody und man kann nicht mit diesem kollidieren.

      Script

      Zu bearbeitende Dateien:

      • fn_vehicleShopBuy.sqf

      1. fn_vehicleShopBuy.sqf

      Öffnet die fn_vehicleShopBuy.sqf in Altis_Life.Altis\core\shops. Fügt den folgenden Code ans Ende ein, sodass der letzte Call ersetzt wird und davor die Variablen stehen.

      Code
      _box = boundingBox _vehicle;  
      _offset = _box select 1;  //Gets an array with the maximum bounding values
      _offset = _offset select 2; //Gets the Maxmimum Z height
      _offset = _offset + 0.8; //Just a few inches more...
      
      
      
      
      _sp = visiblePosition _vehicle;
      _sp = _sp vectorAdd [0,0,_offset]; 
      _vh = createVehicle ["Sign_Arrow_Large_F", _sp ,[],0,"NONE"];
      _vh setPos _sp; 
      
      
      
      
      [0] call SOCK_fnc_updatePartial;
      closeDialog 0; //Exit the menu.
      true;
      
      
      
      
      sleep 10;
      deleteVehicle _vh;
      Alles anzeigen


      Zum Vergleich ist hier die fn_vehicleShopBuy.sqf von mir:

      Spoiler anzeigen
      Code: fn_vehicleShopBuy.sqf - TerraGaming
      /*
      	File: fn_vehicleShopBuy.sqf
      	Author: Bryan "Tonic" Boardwine
      
      	Description:
      	Does something with vehicle purchasing.
      */
      private["_mode","_spawnPoints","_className","_basePrice","_colorIndex","_spawnPoint","_vehicle"];
      _mode = _this select 0;
      if((lbCurSel 2302) == -1) exitWith {hint localize "STR_Shop_Veh_DidntPick"};
      _className = lbData[2302,(lbCurSel 2302)];
      _vIndex = lbValue[2302,(lbCurSel 2302)];
      _vehicleList = [life_veh_shop select 0] call life_fnc_vehicleListCfg; _basePrice = (_vehicleList select _vIndex) select 1;
       if(_mode) then {_basePrice = round(_basePrice * 1.5)};
      _colorIndex = lbValue[2304,(lbCurSel 2304)];
      
      
      
      
      //Series of checks (YAY!)
      if(_basePrice < 0) exitWith {}; //Bad price entry
      if(life_cash < _basePrice) exitWith {hint format[localize "STR_Shop_Veh_NotEnough",[_basePrice - life_cash] call life_fnc_numberText];};
      if(!([_className] call life_fnc_vehShopLicenses) && _className != "B_MRAP_01_hmg_F") exitWith {hint localize "STR_Shop_Veh_NoLicense"};
      
      
      
      
      _spawnPoints = life_veh_shop select 1;
      _spawnPoint = "";
      
      
      
      
      if((life_veh_shop select 0) == "med_air_hs") then {
      	if(count(nearestObjects[(getMarkerPos _spawnPoints),["Air"],35]) == 0) exitWith {_spawnPoint = _spawnPoints};
      } else {
      	//Check if there is multiple spawn points and find a suitable spawnpoint.
      	if(typeName _spawnPoints == typeName []) then {
      		//Find an available spawn point.
      		{if(count(nearestObjects[(getMarkerPos _x),["Car","Ship","Air"],5]) == 0) exitWith {_spawnPoint = _x};} foreach _spawnPoints;
      	} else {
      		if(count(nearestObjects[(getMarkerPos _spawnPoints),["Car","Ship","Air"],5]) == 0) exitWith {_spawnPoint = _spawnPoints};
      	};
      };
      
      
      
      
      
      
      
      if(_spawnPoint == "") exitWith {hint localize "STR_Shop_Veh_Block";};
      life_cash = life_cash - _basePrice;
      hint format[localize "STR_Shop_Veh_Bought",getText(configFile >> "CfgVehicles" >> _className >> "displayName"),[_basePrice] 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"}; //Wait?
      	_vehicle allowDamage false;
      	_hs = nearestObjects[getMarkerPos _spawnPoint,["Land_Hospital_side2_F"],50] select 0;
      	_vehicle setPosATL (_hs modelToWorld [-0.4,-4,12.65]);
      	_vehicle lock 2;
      	[[_vehicle,_colorIndex],"life_fnc_colorVehicle",true,false] spawn life_fnc_MP;
      	[_vehicle] call life_fnc_clearVehicleAmmo;
      	[[_vehicle,"trunk_in_use",false,true],"TON_fnc_setObjVar",false,false] spawn life_fnc_MP;
      	[[_vehicle,"vehicle_info_owners",[[getPlayerUID player,profileName]],true],"TON_fnc_setObjVar",false,false] spawn life_fnc_MP;
      	_vehicle disableTIEquipment true; //No Thermals.. They're cheap but addictive.
      } else {
      	_vehicle = createVehicle [_className, (getMarkerPos _spawnPoint), [], 0, "NONE"];
      	waitUntil {!isNil "_vehicle"}; //Wait?
      	_vehicle allowDamage false; //Temp disable damage handling..
      	_vehicle lock 2;
      	_vehicle setVectorUp (surfaceNormal (getMarkerPos _spawnPoint));
      	_vehicle setDir (markerDir _spawnPoint);
      	_vehicle setPos (getMarkerPos _spawnPoint);
      	[[_vehicle,_colorIndex],"life_fnc_colorVehicle",true,false] spawn life_fnc_MP;
      	[_vehicle] call life_fnc_clearVehicleAmmo;
      	[[_vehicle,"trunk_in_use",false,true],"TON_fnc_setObjVar",false,false] spawn life_fnc_MP;
      	[[_vehicle,"vehicle_info_owners",[[getPlayerUID player,profileName]],true],"TON_fnc_setObjVar",false,false] spawn life_fnc_MP;
      	_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) == "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 set[count life_vehicles,_vehicle]; //Add err to the chain.
      life_vehicles pushBack _vehicle;
      [[getPlayerUID player,playerSide,_vehicle,1],"TON_fnc_keyManagement",false,false] spawn life_fnc_MP;
      
      
      
      
      if(_mode) then {
      	if(!(_className in ["B_G_Offroad_01_armed_F","B_MRAP_01_hmg_F"])) then {
      		[[(getPlayerUID player),playerSide,_vehicle,_colorIndex],"TON_fnc_vehicleCreate",false,false] spawn life_fnc_MP;
      	};
      };
      
      
      
      
      _box = boundingBox _vehicle;  
      _offset = _box select 1;  //Gets an array with the maximum bounding values
      _offset = _offset select 2; //Gets the Maxmimum Z height
      _offset = _offset + 0.8; //Just a few inches more...
      
      
      
      
      _sp = visiblePosition _vehicle;
      _sp = _sp vectorAdd [0,0,_offset]; 
      _vh = createVehicle ["Sign_Arrow_Large_F", _sp ,[],0,"NONE"];
      _vh setPos _sp; 
      
      
      
      
      [0] call SOCK_fnc_updatePartial;
      closeDialog 0; //Exit the menu.
      true;
      
      
      
      
      sleep 10;
      deleteVehicle _vh;
      Alles anzeigen

      1.2. Damit das Script funktioniert, müsst ihr bei private die Variablen angeben.
      Fügt in Zeile 8 folgendes ein bzw. ersetzt es:

      Spoiler anzeigen
      Code
      private["_mode","_spawnPoints","_className","_basePrice","_colorIndex","_spawnPoint","_vehicle","_sp","_vh","_box","_offset"];



      Credits dem, der es geschrieben hat

    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] Lizenzen Erstellen

      • TW_Sebastian
      • 20. Mai 2017 um 16:47
      • Tutorials & Releases

    Tags

    • altis life tutorial
    • altis life tutorials
    • Altis Life
    • script
    • fahrzeug
    • spawn
    • cptpanther
    • 1.3.4.8
    • spawnmarker
    • altis life spawn marker
    • spawn marker tutorial

    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™