1000x gibt es hier was im Forum darüber.
Benutz die SuFu
Beiträge von encrusted.
-
-
Kannst du die Zeile markieren ? Bitte
Sorry, total vergessen.
-
Hallo leuts!
Ich habe ein Problem bei einem Stock, aber ich kanns einfach nicht finden
stock LoadPlayer(playerid)
{
new SD[64],name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(SD,sizeof(SD),"/SpielerAccounts/%s.txt",name);
// === SpielerCharaktere === //
sChar[playerid][Char1] = dini_Int(SD,"Char1"); // <
sChar[playerid][Name_Char1] = dini_Set(SD,"Name_Char1"); // <
sChar[playerid][Stufe_Char1] = dini_IntSet(SD,"Stufe_Char1"); // <
sChar[playerid][Char2] = dini_Int(SD,"Char2"); // <
sChar[playerid][Name_Char2] = dini_Set(SD,"Name_Char2"); // <
sChar[playerid][Stufe_Char2] = dini_IntSet(SD,"Stufe_Char2"); // <
sChar[playerid][Char3] = dini_Int(SD,"Char3"); // <
sChar[playerid][Name_Char3] = dini_Set(SD,"Name_Char3"); // <
sChar[playerid][Stufe_Char3] = dini_IntSet(SD,"Stufe_Char3"); // <
sChar[playerid][Char4] = dini_Int(SD,"Char4");
sChar[playerid][Name_Char4] = dini_Set(SD,"Name_Char4");
sChar[playerid][Stufe_Char4] = dini_IntSet(SD,"Stufe_Char4");
sChar[playerid][Char5] = dini_Int(SD,"Char5"); // <
sChar[playerid][Name_Char5] = dini_Set(SD,"Name_Char5"); // <
sChar[playerid][Stufe_Char5] = dini_IntSet(SD,"Stufe_Char5"); // <
return 1;
}Bei jeden spuckt der Compiler das hier aus
number of arguments does not match definition -
Wie wäre es mal mit ein paar Infos über deinen Rechner?! ><
-
Ist irgendetwas falsch?
-
Das Verdiente Geld in eine Spielervariable speichern, und dann beim Timer auslesen und mit GivePlayerMoney dem Spieler geben.
-
BuzzShadow
das sieht mir aus wie ein Code von MrM.
Das sollte eigentlich klappen hast du bei OnPlayerDisconnect auch SpielerSpeichern(playerid); reingemacht ?Logisch, wenn der schreibt das er Videos von MrMonat anguckt
-
Fehler, das ist nicht Pawno(Programm), sondern die Sprache (Pawn), ansonsten nicht schlechtDanke
War mir da jetzt nicht so sicher.@ Source
Ein Dank ebenfalls an dir.
Tut mir leid, war die Uhrzeit@ Slash
danke
Naja, ist ja deren Sache ob sie was lernen wollen oder nicht -
Sieht so aus als ob die weißen Pfeile in dem schwarzen Kreis nicht richtig mittig platziert sind.
Oder ich hab einfach ein Knick in der Optik.Schau ganz oke aus
-
Naben Community!
Was folgt ist, ein Tutorial in dem ich ein erweiterten GMX - Befehl erkläre.
Eigendlich sehr Simpel und für Anfänger von Vorteil.
Am Rande möchte ich jedoch sagen das das mein erstes Tutorial ist.
Kritisieren könnt ihr, so hart ihr wollt.
Nun gut. Fangen wir an:Was ein GMX Befehl ist, solltet ihr denke ich mal wissen.
Für die Leute die sich denken "Hä? GMX? Was meint er damit? Etwa die E-Mail Seite?".
GMX ist ein Command den man an die Rcon Console senden kann.
Was dieser Befehl genau bedeutet weiß ich allerdings auch nicht.
Dieser Befehl sagt der Console das der Server restartet werden soll. Mehr nicht.So nun weiter im Text:
Ein ganz einfacher Befehl würde so aussehen. ( Beispiel mit OCMD )
ocmd:restart(playerid,params[])
{
SendRconCommand("gmx");
return 1;
}Bisschen Mager, nicht?
Okay. Lass uns das ein bisschen umgestalten.
Zu Erst das Grundgerüst des Befehls.
ocmd:restart(playerid,params[])
{
return 1;
}
Sollte klar sein.
Werde ich nicht weiter Erläutern.Nun erstellen wir einmal die Variable time:
ocmd:restart(playerid,params[])
{
new time; // Was eine Variable ist sollte klar sein. 8te Klasse Mathemathik. Diese benutzen wir für die Sekunden (genaueres folgt).
return 1;
}Jetzt wollen wir noch den Namen und einen String
ocmd:restart(playerid,params[])
{
new time, name[MAX_PLAYER_NAME], string[100];
GetPlayerName(playerid,name,sizeof(name)); // Hier "getten" wir den Spielername mit der Variable "name". Die Variable könnte auch "baum" heißen. Ist völlig egal.
return 1;
}Jetzt formartieren wir die Variable string. Das Format wird die später gesendete Nachricht wann der Server restartet wird.
ocmd:restart(playerid,params[])
{
new time, name[MAX_PLAYER_NAME], string[100];
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"Der Server wird in %i Sekunden von %s restartet.",time, name); // Das ist die Message die nachher an alle Spieler gesendet wird.
return 1;
}Jetzt wollen wir noch die sscanf Funktion mit einbauen.
Das ist für Befehle gut wie zum beispiel "/kick [ID] [Grund]". Halt mit ID und Grund als Beispiel.
Hier wird es die Zeit (time) sein.
Diese Funktion fragt ab ob eine Zeit hinter /gmx folgt oder nicht.
Ganz Simpel tun wir dies so:
ocmd:restart(playerid,params[])
{
new time, name[MAX_PLAYER_NAME], string[100];
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"Der Server wird in %i Sekunden von %s restartet.",time, name);
if(sscanf(params,"i",time)) return SendClientMessage(playerid,-1,"Nutzung: /restart [Zeit in Sekunden]"); //Fragt ab, ob hinter "/gmx" ein Integer folgt. Wenn nicht, wird eine Nachricht ausgegeben.
return 1;
}Das meiste haben wir schon geschafft!
Zunächst forwardet ihr einen Timer.
Das macht ihr am besten ganz oben in eurem Gamemode.
Das geht so:
forward RestartTime();Nun gut.
Jetzt müssen wir ja noch den Timer setzen. Dies ist der Punkt wo wir unsere Variable time einen Wert zuweisen.
Nämlich unsere eingegebene Sekunden: "/gmx [Sekunden]"
Natürlich auch die Nachricht an alle Spieler senden.
ocmd:restart(playerid,params[])
{
new time, name[MAX_PLAYER_NAME], string[100];
GetPlayerName(playerid,name,sizeof(name));
if(sscanf(params,"i",time)) return SendClientMessage(playerid,-1,"Nutzung: /restart [Zeit in Sekunden]");
format(string,sizeof(string),"Der Server wird in %i Sekunden von %s restartet.",time, name);
SetTimer("RestartTime",time*1000,false); // Warum x1000? Ganz einfach. Pawno nimmt Timer nur als Millisekunden "wahr". Und da ja SEKUNDEN im Befehl eingeben werden, müssen wir diese wiederrum mit 1000 mal nehmen. Sollte verständlich sein.
SendClientMessageToAll(-1,string); // Sollte sich auch von selbst erklären. Die Nachricht mit dem Inhalt des Formatierten Strings wird an alle Spieler gesendet.
return 1;
}Jetzt erstellen wir ein neues public.
Das könnt ihr irgendwo in eurem Script platzieren.
In dem Public passiert das, wenn der Timer abgelaufen ist.
Und was soll passieren? Genau, der Server soll restartet werden.public RestartTime()
{
SendRconCommand("gmx");
return 1;
}Fertig ist der erweiterte GMX Befehl.
Wenn ihr fehler sieht bitte posten ich werde es dann direkt korrigieren!
MfG.
-
Hallo Community!
Ist zwar nichts großes und besonderes.
Sowas ensteht nun mal aus Langeweile.
#include <a_samp>
#include <ocmd>
#include <sscanf2>#define SCM SendClientMessage
#define SCMTA SendClientMessageToAllforward restarttime();
ocmd:gmx(playerid,params[])
{
new time, string[100], name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"SERVER: Der Server wird in %i Millisekunden von %s restartet.",time,name);
if(sscanf(params,"i",time)) return SCM(playerid,-1,"Nutzung: /gmx [Zeit in Millisekunden]");
SetTimer("restarttime",time,false);
SCMTA(-1,string);
return 1;
}public restarttime()
{
SendRconCommand("gmx");
return 1;
}Vielleicht nützlich für Anfänger.
MfG
/e: Wenn's falsch ist, bitte verschieben.
-
@ Equ:
Wer lesen kann ist klar im Vorteil: Er hat sein Problem schon gelöst.
-
Wie oft wurde diese Frage gestellt? ><
Wie wärs mal mit SuFu benutzen? -
Beide IP's funktionieren nicht.
-
Dienstname: samp-server
Erster Port: 7777
Letzter Port: 7777
IP-Adresse des Server: 192.168.1.**
Klappt immernoch nicht -
Ich würde von Anfang alles durchgehen.
Zum beispiel du joinst auf nem Server und dann komm das Tutorial zum beispiel.
Dann kaufst du dir möglicherweise ein Auto, beantragst dir einen Perso. Holst dir einen Job.
Fange halt einfach in der Reihenfolge an, als wenn du auf nem Roleplay Server dich registrierst u.s.w.mfg
-
Wo sehe ich denn welchen Diensttyp ich hab?
-
Dann müsste es 192.168.0.1 oder 1.1 sein
Jojo, ich bin ja schon drauf.
Nur wie gebe ich den frei? -
Was für einen Router besitzt du ?
Joine mal auf einen Router mit 192.168.x.x
.x .x durch 1.1 ; 0.1 oder 2.1 ersetzen.
Wenn es ein Alice Router ist. alice.box in die Adresszeile von deinem Browser eingeben.Ich hab den NETGEAR-Router
-
Und wie mach ich das?