Ich möchte aber das er nur /accept licenses eingibt und das geht auch definitiv ohne 20x Variablen zu erstellen die den Server belasten..
Beiträge von xPuma
-
-
Guten Tag,
Ich würde gerne das wenn einem Spieler die Lizensen angeboten wurden, das der Spieler dann /accept licenses eingibt, und dann das Geld abgezogen bekommt usw.
Ich weiß wie ich den befehl schreibe und alles andere auch jedoch weiß ich nicht wie man abfragt ob der Spieler /accept licensen eingegeben hat...Würde mich über eure Hilfe sehr freuen
MFG
BlackxSoul -
Soltle glaube gehen, ist ungetestet...wenn ich zu Hause bin kann ich dir meinen Code schicken...
Wenn du jetzt abfragen will mit "!" musst du das so machen
-
-
-
Kein Problem
PS. Probier aber meins, in seinem ist ein Fehler mit dem String.
Keins von beiden geht
Kannst du mir vll. sagen an was es liegt? -
-
Guten Abend,
Ich möchte meine Lizensen verteilen, jedoch funktioniert dies nicht..Code
Alles anzeigenocmd:givelicense(playerid,params[]) { new autoschein, license, pID; if(IsPlayerMember(playerid,12)) { if(sscanf(params,"us",pID,license)) return SendClientMessage(playerid,GRAU,"Verwende: /givelicense [ID] [License]"); { if(license == autoschein) { SendClientMessage(playerid,GRAU,"Herzlichen Glückwunsch du hast den Autoschein Bestanden!"); SetPVarInt(pID,"Autoschein",1); } } } return 1; }
Wie mache ich es , dann ich z.B. eingebe:
/givelicense BlackxSoul Autoschein
Kann man das script?
Wenn ja wie?Würde mich über eine Hilfe freuen
MFG
BlackxSoul -
Also im Account Ordner?
-
Macht das mehr Sinn sie bei den anderen zu Speichern?
-
Guten Tag,
Ich habe mir ein Fahrschul-System gescriptet, jedoch speichert er dies nicht richtig ab...Erstmal die 2 Stocks...
Code
Alles anzeigenstock SpeicherLizensen(playerid) { if(GetPVarInt(playerid,"loggedin")==1) { new Lizensen[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Lizensen,sizeof(Lizensen),"/Lizensen/%s.txt",name); dini_IntSet(Lizensen,"Autoschein",GetPVarInt(playerid,"Autoschein")); } return 1; } stock LoadLizensen(playerid) { new Lizensen[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Lizensen,sizeof(Lizensen),"/Lizensen/%s.txt",name); SetPVarInt(playerid,"Autoschein",dini_Int(Lizensen,"Autoschein")); return 1; }
Dann die 2 Befehle zum Testen:
Code
Alles anzeigenocmd:lizense(playerid,params[]) { new string[128]; format(string,sizeof(string),"Autoschein: %i",GetPVarInt(playerid,"Autoschein")); SendClientMessage(playerid,GRÜN,string); return 1; } ocmd:get(playerid,params[]) { SetPVarInt(playerid,"Autoschein",1); SendClientMessage(playerid,GRAU,"Erhalten!"); return 1; }
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Wenn ich jetzt /get eingebe wird mir der Autoschein gesetzt...
Dieser wird dann auch in /lizense angezeigt, wenn ich dann jedoch ein Server-Restart mache.
Ist wieder alles weg und ich muss ihn mir neu setzen...
Außerdem wird auch keine neue Datei also keine neue Userdatei in dem Ordner erstellt -.-Könnt ihr mir vll. weiterhelfen das das richtig abgespeichert wird?
Außerdem wird mein Geld auchnicht abgespeichert ...MFG
BlackxSoul -
Also so ein System habe ich in ca. 1 Stunde selbst gecriptet, dafür gebe ich keine 5-10 Euro aus xDD
-
Wie wäre es wenn du uns mal deinen /invite Befehl hier zeigst dann können wir ihn auch bearbeiten
-
Guten Tag,
Ich habe mir ein Fahrschul-System gescriptet, jedoch speichert er dies nicht richtig ab...Erstmal die 2 Stocks...
Code
Alles anzeigenstock SpeicherLizensen(playerid) { if(GetPVarInt(playerid,"loggedin")==1) { new Lizensen[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Lizensen,sizeof(Lizensen),"/Lizensen/%s.txt",name); dini_IntSet(Lizensen,"Autoschein",GetPVarInt(playerid,"Autoschein")); } return 1; } stock LoadLizensen(playerid) { new Lizensen[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Lizensen,sizeof(Lizensen),"/Lizensen/%s.txt",name); SetPVarInt(playerid,"Autoschein",dini_Int(Lizensen,"Autoschein")); return 1; }
Dann die 2 Befehle zum Testen:
Code
Alles anzeigenocmd:lizense(playerid,params[]) { new string[128]; format(string,sizeof(string),"Autoschein: %i",GetPVarInt(playerid,"Autoschein")); SendClientMessage(playerid,GRÜN,string); return 1; } ocmd:get(playerid,params[]) { SetPVarInt(playerid,"Autoschein",1); SendClientMessage(playerid,GRAU,"Erhalten!"); return 1; }
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Wenn ich jetzt /get eingebe wird mir der Autoschein gesetzt...
Dieser wird dann auch in /lizense angezeigt, wenn ich dann jedoch ein Server-Restart mache.
Ist wieder alles weg und ich muss ihn mir neu setzen...
Außerdem wird auch keine neue Datei also keine neue Userdatei in dem Ordner erstellt -.-Könnt ihr mir vll. weiterhelfen das das richtig abgespeichert wird?
Außerdem wird mein Geld auchnicht abgespeichert ...MFG
BlackxSoul -
Erstmal musst du die verschiedenen Organisationen abspeichern:
Codestock LoadAccount(playerid){ new Organisation[64]; format(Organisation,sizeof(Organisation),"/Organisationen/%s.txt",DEFINIERTE ORGANISATION); //<-- Bearbeiten wie es bei dir eben im Script ist}
Du kannst in der .txd Datei auch noch den Namen, Das Geld usw. was darauf ist speichern...
Dann musst du ein Befehl machen der die Organisation setzt und die Sachen darin editiert:Codeocmd:createorg(playerid,params[]){ new orgname; if(sscanf(params,"s",orgname)) return SendClientMessage(playerid,GRAU,"Verwende: /createorg [Name]"); SetPVarInt(playerid,"Organisationsname",orgname); return 1;}
Und alles weitere kannst du dann ja noch selbst ausbauen
MFG
-
Anscheinend wird das Geld nicht gespeichert...
Also wäre es doch sinnvoll den Spieler nach dem Vorgang abzuspeichern? -
Nachdem du das Geld dem Spieler abziehst musst du ihn noch Speichern...
--> SpielerSpeichern(playerid);Wird das dann noch alles ordentlich beim Connecten ausgelesen, ist dein Problem gelöst...
MFG
BlackxSoul -
Anstatt GetPVarInt musst du fraktname oder wie du es definiert hast eingeben, da er dir ja einen bestimmten namen ausgeben soll...
-
Ja... also nur der der eingeladen wurde und der Supporter sollte schreiben und das lesen können...
-