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
Do: 22 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

    [FRAGE] ATM hat 5 Mio auflager

    • Natic
    • 14. Juni 2018 um 15:03
    • Erledigt
    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 14. Juni 2018 um 15:03
      • #1

      Moin NN,

      ich habe mal eine Frage, wie kann ich das Scripten,

      dass in einem ATM 5 Millionen $ Sind (Maximal) und wenn jemand Geld abhebt das mit dem Abgehobenen betrag weniger wird?

      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

    • FrozenIce94
      Anfänger
      Reaktionen
      67
      Trophäen
      11
      Beiträge
      56
      • 14. Juni 2018 um 15:09
      • #2

      Moin,

      Du kannst das mit einer variable lösen.

      Setz einfach die variable auf den ATM und wenn der User Geld abheben will frag die variable dann ab.

      Kannst die Funktionen in Google finden:

      Setvariable und getvariable

      Liebe Grüße

      FrozenIce94

    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 14. Juni 2018 um 15:21
      • #3

      Entweder tue ich so dumm, oder bin gerade so dumm,

      kannst du mir ein Codeschnipsel geben, ich habe erst einmal Variablen deklariert

      Private ["_moneystats", "_getmoney", "_fillmoney"]

      Aber was muss jeweils hier hinter

      _moneystats = ...

      ...

      ?

      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

    • FrozenIce94
      Anfänger
      Reaktionen
      67
      Trophäen
      11
      Beiträge
      56
      • 14. Juni 2018 um 15:52
      • #4

      Ich kann dir aktuell nur die Arbeitsschritte nennen.

      Grundlegend brauchst du ein Script was alle atms auf der karte ermittelt und denen die variable beispielsweise amount mit 5000000 hinzufügt.

      Willst du das es nur ein gemappter atm ist kannst du im Editor auch diesem eine variable schon zuweisen.

      Willst du allerdings das das ganze über einen restart hinweg gespeichert wird muss du die ganzen Variablen auch noch in der Datenbank speichern, damit du nach einem restart die Informationen wieder hast.

      Gehen wir davon aus du machst ein Script wo du alle ATMs ermittelst und denen dann die variable amount zu weist. Dann kannst du mit Schritt 2 weiter machen.

      2. Hier musst du jetzt das Geld abheben bzw auch das einzahlen überarbeiten.

      Du muss die variable amount von dem atm abfragen an dem du grade stehst.

      Dann kannst du prüfen ob alles passt.

      Und zum Schluss musst du die variable in dem atm durch die neue ersetzen.


      Ist eigentlich nicht schwer. Wenn du beispielsweise alle atms ermitteln willst. Da sollte ein codeschnipsel existieren.

      Ich meine da gab's ein Beitrag wo es um die marker für atms ging. Da wurden glaub ich auch alle via Script ermittelt.

      Und die Befehle für die Variablen sind

      Setvariable und getvariable

      Die Befehle musst du auf die object anwenden die diese variable halten sollen deine Deklaration ist nur für das Script du musst das Objekt auch damit füttern

    • Marius1773
      Profi
      Reaktionen
      369
      Trophäen
      9
      Beiträge
      962
      • 14. Juni 2018 um 15:55
      • #5

      Und das erfordert allerdings trotzdem Scriptkenntnisse weil niemand wird dir das vorgekaut hier hin hauen.

      Guck in meine Signatur da ist die Bibel. Les sie.

      Windows Server :love:

      Das Heilige Buch der Arma 3 Scripter, die Arma 3 Scripter Bibel: https://community.bistudio.com/wiki/Category:Scripting_Commands

    • FrozenIce94
      Anfänger
      Reaktionen
      67
      Trophäen
      11
      Beiträge
      56
      • 14. Juni 2018 um 15:59
      • #6

      Ich muss noch ergänzen. Das wie ich es beschrieben habe ist aktuell für jeden Spieler getrennt.

      Also quasi local.

      Möchtest du das es für jeden gleich ist muss du die Informationen im life Server halten, damit die Spieler die Werte vom Server abfragen kann.

    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 14. Juni 2018 um 17:59
      • #7

      ich mache es über eine Datenbank, eine Tabelle wo alles gespeichert wird, dennoch kriege ich gerade die Abfrage nicht hin,

      habe es ersteinmal bis hier geschafft

      Spoiler anzeigen

      //#include "..\script_macros.hpp"

      /*

      File: atm_fill.sqf

      Author: Natic

      Description:

      Fill the Atm with Money, when its empty or not full

      */

      private ["_moneystats", "_amount"];

      _moneystats = ....

      _amount = ...
      {

      if (amount > 5000000) then

      titleText ["Du kannst hier nichts mehr einzahlen, der Bankautomat ist voll",Plain]

      };

      if (amount < 10000) then

      titleText ["Der Bankautomat ist fast leer, daher kannst du nur bedingt etwas abheben",Plain]

      }

      Das richtige Script existiert noch garnicht, weil ich nicht weiß, wie ich das Abfragen muss, dass wenn man so und so viel Geld hat, das auf so und so viel einzahlt, dass dann genau das auf das Alte addiert wird. Wäre cool wenn mir jemand ein Code Schnipsel gibt, weil ich gerade dumm bin

      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 15. Juni 2018 um 09:58
      • #8

      Weiß noch irgend jemand etwas, bis jz habe ich es so, aber die Variablen sind nicht richtig Deklariert

      noch irgendwer eine Idee wie der Codeschnipsel aussehen könnte?

      bis jetzt habe ich es so

      PS: Wenn das Script mit eure Hilfe fertig ist, veröffentliche ich es natürlich auch im Tab Tutorials

      Spoiler anzeigen

      //#include "..\script_macros.hpp"

      /*

      File: atm_fill.sqf

      Author: Natic

      Description:

      Fill the Atm with Money, when its empty or not full

      */

      #include "atm_safe.sqf"

      private ["_moneystats", "_atmmax", "_atmmoney", "_usermoney", "_addmoney"];

      _moneystats = setVariable ["_moneyinfo"];

      _atmmax = setVariable ["_maxmoney;

      _atmmoney = setVariable ["_moneyatm"];

      _usermoney = _atmmoney + _addmoney;

      _addmoney = getVariable ["_usermoney"];

      {

      if (amount > 5000000) then

      titleText ["Du kannst hier nichts mehr einzahlen, der Bankautomat ist voll",PLAIN] //call life_fnc_notification_system;

      };

      if (amount < 10000) then

      titleText ["Der Bankautomat ist fast leer, daher kannst du nur bedingt etwas abheben",PLAIN] //call life_fnc_notification_system;

      }


      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

      2 Mal editiert, zuletzt von Natic (15. Juni 2018 um 10:27)

    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 17. Juni 2018 um 10:04
      • #9

      #UPDATE

      habe es nun so

      fn_handle_atm.,sqf

      Code
      /*
       Author: Natic 
       Description: Database handling
       Upload for: Unity-Life.de
       Copyright: Unity-Life.de 2018
      */
      Private ["_name", "_cash", "_query"];
      _name = _this select 0;
      _cash = _this select 1;_query = format["UPDATE atm SET money='%1' WHERE name='%2'", _cash, _name];
          diag_log format["Query: %1",_query];
          waitUntil{!DB_Async_Active};
          [_query,1] call DB_fnc_asyncCall;
      Alles anzeigen

      fn_request_atm.sqf

      Code
      /*
       Author: Natic 
       Description: Request the Money from the ATM
       Upload for: Unity-Life.de
       Copyright: Unity-Life.de 2018
      */
      Private ["_query","_qresult", "_name"];
      _name = _this select 0;_query =  format["SELECT money FROM atm WHERE name='%1'", _name];
      diag_log format ["Name: Request_ATM: %1", _name];
      diag_log format ["QUERY: Request_ATM: %1", _query];
      waitUntil {!DB_Async_Active};
      _qresult = [_query, 2, true] call DB_fnc_asyncCall;
      diag_log format ["RESULT: Request_ATM: %1", _qresult];return _qresult;
      Alles anzeigen

      fn_atm_fill.sqf //Noch nicht fertig, brauche da eure Hilfe

      Code
      /*
          Author: Natic 
          File: atm_fill.sqf
          Description:
          ATM Menu too fill the ATM with Money ...
      */
      //Variabeln
      private ["_name", "_cash", "_removemoney", "_usermoney", "_addmoney"];
      _name = _this select 0;_cash = [_name] remoteExec ["TON_fnc_handle_atm",2];//Abfragen
      if (_cash >= 500000) exitWith{
      titleText ["Der Automat ist bereits voll, deshalb kannst du Ihn nicht auffüllen.",PLAIN]; //call life_fnc_notification_system;  voher ; entfernen
      };if (PlayerSide != civilian) exitWith {
       titleText ["Du befindest dich im Dienst, daher kannst du diesen Auftrag nicht annehmen.",PLAIN]; //call life_fnc_notification_system; voher ; entfernen
      };//Script zum Befüllen des ATMS
      Alles anzeigen

      Weiß wer wie ich das schreiben könnte, dass der Spieler das Item (Geldkoffer) oder einfach mit einem Geld Betrag den ATM auffüllen kann?

      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

    • Blyatkovicz
      Amateur
      Reaktionen
      82
      Trophäen
      11
      Beiträge
      237
      Bilder
      1
      • 17. Juni 2018 um 10:41
      • #10

      Einfach umgekehrt schreiben, anstelle eines select eine *update* function...

      Achja war da nicht irgendwie irgendwo was, dass man !DB_Async_Active in der extDB3 nicht mehr verwenden sollte? Oder war das bei SQL Custom oder irgendwie sowas....da gabs mal so einer der meinte irgendwie sowas.

    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 17. Juni 2018 um 13:38
      • #11

      Ich muss ja erstmal den Script mit sqf schreiben, dass das passiert, die Update Funktion habe ich schon

      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

    • Marius1773
      Profi
      Reaktionen
      369
      Trophäen
      9
      Beiträge
      962
      • 17. Juni 2018 um 13:53
      • #12

      Ich würde mal sagen mit ner addaction bzw in die useitem von dem Geldkoffer dann checken ob nen ATM in der nähe ist etc.

      Windows Server :love:

      Das Heilige Buch der Arma 3 Scripter, die Arma 3 Scripter Bibel: https://community.bistudio.com/wiki/Category:Scripting_Commands

    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 17. Juni 2018 um 14:36
      • #13

      ich muss doch erstmal scripten, dass wenn der Spieler so und so viel Geld hat, dieses auf so und so viel einzahlt, dass das dann in der Datenbank gespeichert wird, habe erstmal nur das hier

      [warnbox] Siehe Beitrag oben [/warnbox]

      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

    • Marius1773
      Profi
      Reaktionen
      369
      Trophäen
      9
      Beiträge
      962
      • 17. Juni 2018 um 15:02
      • #14
      Zitat von Natic

      ich muss doch erstmal scripten, dass wenn der Spieler so und so viel Geld hat, dieses auf so und so viel einzahlt, dass das dann in der Datenbank gespeichert wird, habe erstmal nur das hier

      [warnbox] Siehe Beitrag oben [/warnbox]

      Zitat

      Weiß wer wie ich das schreiben könnte, dass der Spieler das Item (Geldkoffer) oder einfach mit einem Geld Betrag den ATM auffüllen kann?

      Windows Server :love:

      Das Heilige Buch der Arma 3 Scripter, die Arma 3 Scripter Bibel: https://community.bistudio.com/wiki/Category:Scripting_Commands

    • Blyatkovicz
      Amateur
      Reaktionen
      82
      Trophäen
      11
      Beiträge
      237
      Bilder
      1
      • 17. Juni 2018 um 17:00
      • #15

      Genau darum gehts mir auch, @Beitrag #9 fragst du am Ende wie du das machen sollst, dann komm ich und sage joa update function, dann hast du das ja schon, dann kommt marius und gibt auch noch einen eventuellen ratschlag und dann musst du es doch wieder erst schreiben :/:/:/:/:/

      Entscheid dich doch mal :saint:

    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 17. Juni 2018 um 20:55
      • #16

      Ich meinte damit, könnt ihr mir den Codeschipsel schreiben und erklären

      [warnbox]Nicht den kompletten Code, nur ein Teil schreiben und erklären ;)[/warnbox]

      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

    • Blyatkovicz
      Amateur
      Reaktionen
      82
      Trophäen
      11
      Beiträge
      237
      Bilder
      1
      • 17. Juni 2018 um 21:19
      • #17

      Also du möchtest jetzt wissen wenn ein Spieler mit einem Gegenstand, welcher eine bestimmte Geldsumme entspricht, aus dem Inventar entfernt bekommt und es dann sogesehen eingezahlt wird = Koffer aus dem Inventar entfernt?

    • Strider
      Anfänger
      Reaktionen
      27
      Trophäen
      9
      Beiträge
      63
      • 18. Juni 2018 um 01:06
      • #18

      1. Erstelle ein kofferitem

      2. mach ein shop oda so wo man den koffer kaufen kann

      3. erstell ne addaction oder so am bankautomaten zum aufladen des automaten

      4. fülle den bankautomaten auf und entfern den koffer aus dem inventar.

    • Natic
      Fortgeschrittener
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      408
      • 18. Juni 2018 um 07:21
      • #19

      Das weiß ich ja alles mit dem Item, nur die codezeile das das Geld auch im Automat aufgefüllt wird

      Mit freundlichen Grüßen

      Natic

      --------------------------------------------------------------------------------------------------------------------------

      Kein direkten PN - Support

      --------------------------------------------------------------------------------------------------------------------------

      Programierung

      Wir lieben

      es

    • Marius1773
      Profi
      Reaktionen
      369
      Trophäen
      9
      Beiträge
      962
      • 18. Juni 2018 um 09:55
      • #20

      Ja der Variable den Value geben

      Windows Server :love:

      Das Heilige Buch der Arma 3 Scripter, die Arma 3 Scripter Bibel: https://community.bistudio.com/wiki/Category:Scripting_Commands

    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™