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. Hilfeforum

    Lizenz Kauf Button nicht entfernen lassen nach Nutzung

      • Altis Life
    • Gismo2501
    • 29. April 2021 um 22:57
    • Erledigt
    • Gismo2501
      Frischling
      Trophäen
      9
      Beiträge
      19
      • 29. April 2021 um 22:57
      • #1

      Hallo zusammen,

      ich verzweifel leider langsam an einer Sache.

      Erstmal das was ich überhaupt umsetzen möchte:

      Ich möchte, dass man der Luftrettung beitreten und wieder austreten kann (wegen Uniform Wechsel). Dies habe ich mit einer Lizenz gelöst.

      Die Lizenz kaufen etc. funktioniert auch wunderbar, das mit der Kleidung auch.

      Jedoch möchte das man die Lizenz wieder "weggeben" kann.

      Ich habe dafür extra zwei "neue" Skripte geschrieben (einfach nochmal das fn_buyLicense Skript angepasst).

      Spoiler anzeigen
      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_buyLicense.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Called when purchasing a license. May need to be revised.
      */
      private ["_type","_varName","_displayName","_sideFlag","_price"];
      _type = _this select 3;
      
      if (!isClass (missionConfigFile >> "Licenses" >> _type)) exitWith {}; //Bad entry?
      _displayName = M_CONFIG(getText,"Licenses",_type,"displayName");
      _price = M_CONFIG(getNumber,"Licenses",_type,"price");
      _sideFlag = M_CONFIG(getText,"Licenses",_type,"side");
      _varName = LICENSE_VARNAME(_type,_sideFlag);
      
      [0] call SOCK_fnc_updatePartial;
      
      titleText[format [localize "STR_NOTF_B_1", localize _displayName,[_price] call life_fnc_numberText],"PLAIN"];
      missionNamespace setVariable [_varName,false]; // bei dem anderen ist hier entsprechend ein true
      
      // Versuch, ob damit der Button da bleibt. Spoiler: Erfolglos
      switch(_type) do {
      case "luftrettung_active": {license_med_luftrettung_active = true};
      default{};
      };
      
      [2] call SOCK_fnc_updatePartial;
      Alles anzeigen

      Hier noch die Einbindung in die Mission.sqm

      Spoiler anzeigen

      init="this enableSimulation false; this allowDamage false; this addAction[format [""%1 ($%2)"",localize (getText(missionConfigFile >> ""Licenses"" >> ""luftrettung_active"" >> ""revokeName"")), [(getNumber(missionConfigFile >> ""Licenses"" >> ""luftrettung_active"" >> ""price""))] call life_fnc_numberText],life_fnc_revokeLuftrettung,""luftrettung_active"",0,false,true,"""",' !license_med_luftrettung_active && playerSide isEqualTo independent ',5]; this addAction[format [""%1 ($%2)"",localize (getText(missionConfigFile >> ""Licenses"" >> ""luftrettung_active"" >> ""buyName"")), [(getNumber(missionConfigFile >> ""Licenses"" >> ""luftrettung_active"" >> ""price""))] call life_fnc_numberText],life_fnc_buyLicense,""luftrettung_active"",0,false,true,"""",' !license_med_luftrettung_active && playerSide isEqualTo independent ',5]; this addAction[format [""%1 ($%2)"",localize (getText(missionConfigFile >> ""Licenses"" >> ""mAir"" >> ""displayName"")), [(getNumber(missionConfigFile >> ""Licenses"" >> ""mAir"" >> ""price""))] call life_fnc_numberText],life_fnc_buyLicense,""mAir"",0,false,false,"""",' !license_med_mAir && playerSide isEqualTo independent ',5]; this addAction[localize""STR_MAR_EMS_Item_Shop"",life_fnc_weaponShopMenu,""med_basic"",1.5,true,true,"""",""true"",5]; this addAction[localize""STR_MAR_EMS_Clothing_Shop"",life_fnc_clothingMenu,""med_clothing"",1.5,true,true,"""",""true"",5]; this addAction[localize""STR_MAR_W_E_Vehicle Shop"",life_fnc_vehicleShopMenu,[""med_shop"",independent,""med_car_1"",""med"",""Kavala Hospital""],1.5,true,true,"""",""true"",5]; this addAction[localize""STR_MAR_Helicopter_Shop"", life_fnc_vehicleShopMenu,[""med_air_hs"",independent,""medic_spawn_1"",""med"",""Kavala Hospital""],1.5,true,true,"""",""true"",5]; this addAction[localize""STR_MAR_W_Car_Garage"", { if (life_HC_isActive) then { [getPlayerUID player,playerSide,""Car"",player] remoteExecCall [""HC_fnc_getVehicles"",HC_Life]; } else { [getPlayerUID player,playerSide,""Car"",player] remoteExecCall [""TON_fnc_getVehicles"",2];}; createDialog ""Life_impound_menu""; disableSerialization; ctrlSetText[2802,""Fetching Vehicles....""]; life_garage_sp = ""med_car_1""; life_garage_type = ""Car""; },"""",0,false,false,"""",'playerSide isEqualTo independent',5]; this addAction[localize""STR_MAR_Helicopter_Garage"", { if (life_HC_isActive) then { [getPlayerUID player,playerSide,""Air"",player] remoteExecCall [""HC_fnc_getVehicles"",HC_Life]; } else { [getPlayerUID player,playerSide,""Air"",player] remoteExecCall [""TON_fnc_getVehicles"",2];}; createDialog ""Life_impound_menu""; disableSerialization; ctrlSetText[2802,""Fetching Vehicles....""]; life_garage_sp = ""medic_spawn_1""; life_garage_type = ""Air""; },"""",0,false,false,"""",'playerSide isEqualTo independent ',5]; this addAction[localize""STR_MAR_Store_vehicle_in_Garage"",life_fnc_storeVehicle,"""",0,false,false,"""",'!life_garage_store',5]; this addAction[localize""STR_Shops_Market"",life_fnc_virt_menu,""med_market"",1.5,false,false,"""",' isNull objectParent player && player distance _target < 5 && playerSide isEqualTo independent ',5]; this setObjectTextureGlobal [0,""textures\medic_uniform.jpg""];";

      Nun zu meiner eigentlichen Frage:

      Irgendwo wird abgefragt, ob eine Lizenz vorhanden ist und dann der entsprechende BuyButton ausgeblendet. Kann mir jemand diese Datei nennen, wo dies erfolgt?

      Oder hat jemand einen ganz anderen Ansatz um das oben genannte Problem zu lösen (eventuell keine Lizenz sondern eine andere in der DB gespeicherte Variable)?

      Ich bin gerne offen für Vorschläge und Lösungen.

      Liebe Grüße

      Gismo

      PS: ich bin nicht der beste im SQF, ich fange gerade erst damit an :P

    Registrieren oder Einloggen

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

    Registrieren

    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™