SendRconCommand("gmx");
YAY Forenregel
//Edit PWN tag vergessen
SendRconCommand("gmx");
YAY Forenregel
//Edit PWN tag vergessen
Ich finde eigentlich freeroam/free fun am besten, da man da am meisten freiheiten hat
Joa wie schon gesagt jeder 4-5. hält sich für was besseres und versucht ein eigenes Projekt aufzumachen, auf grund der Admingeilheit und unreife
Das ist jetzt verallgemeinert -> muss nicht auf jeden zutreffen
Nein das ist nicht ganz richtig, denn wenn du z.b. /gibgeld black 1000 bei deinem befehl machst, kommt die meldung das was falsch ist, bei seiner methode kommt das nicht, außer der Spieler ist nicht online
tritt der Fehler auch dann auf wenn du eine if/else verzweigung im case DIALOG_ADMIN_MENU machst?
Und ich bewundere LEute die mit VB klar kommen^^
Aber ein ; musst du dir wie die Zeilenumbrüche in VB vorstellen
VB:
Anweisung
Anweisung
PAWN:
Anweisung;
Anweisung;
Ein ; bedeutet Ende einer Anweisung bzw Funktion
Junge junge keine ahnung haben aber posten -.-"
@Slexout
Zeig uns mal die Zeilen, dann können wir dir auch sagen was fehlt und die dus richtig deklinierst
if(strcmp(cmd, "/setallskin", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(PlayerInfo[playerid][pAdmin] >= 1338)
{
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /setallskin [Skin-ID]");
}
tmp = strtok(cmdtext, idx);
new skin = strval(tmp);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
PlayerInfo[i][pModel] = skin;
SetPlayerSkin(i, skin);
}
}
SendClientMessageToAll(COLOR_WHITE, "Ein Admin hat die Skins von jedem Spieler gewechselt.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Du bist nicht befugt diesen Command zu benutzen (R1338 +)");
}
return 1;
}
Wie mir scheint hast du strtok vergessen
dcmd_gibschluessel(playerid , params[])//dcmd wurde richtig definirt
{
new pname[MAX_PLAYERS],accFormat[128];//name des spielers mit dem Schlüssel
new pnameee[MAX_PLAYERS],accFormattt[128];//name des spielers, der den Schlüssel bekommen soll
new pID,nummernschild[32];// pID=Spielerid , dessen spielers der den schlüssel bekommt;nummernschild=Der string ( die schlüssel werden anhand des nummernschilds geprüft , ob der schlüssel ins auto passt.
if(sscanf(params, "us", pID, nummernschild))
{
return SendClientMessage(playerid,COLOR_RED, "Nutze: /gibschluessel [SpielerID] [FahrzeugNummernschild]");//Selbsterklärend
}
if(!IsPlayerConnected(pID))
{
return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler ist nicht online!");
}
else
{
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"Spieler/%s.datei",pname);
GetPlayerName(pID,pnameee,sizeof pnameee);
format(accFormattt,sizeof accFormattt,"Spieler/%s.datei",pnameee);
new datei[50],str[256],strr[256];
for(new i=1;i<2000;i++)//Die erste lange forschleife, sie soll prüfen ob der spieler der den schlüssel vergibt ihn überhauopt hat
{
format(datei,50,"car%d",i);
if(strcmp(nummernschild,dini_Get(accFormat,datei)) == 0) { break; }
if(strcmp("0",dini_Get(accFormat,datei)) == 0)//wenn in der dini des spielers noch kein nummernschild(schlüssel)steht dann
{
dini_Set(accFormat,datei,"0");//wird das nummernschild des anderen spielers gelöscht(er hat keine schlüssel mehr) dini_Set(accFormattt,datei,nummernschild);// und hier an den anderen übertragen(dieser hat nun die schlüssel)
format(str,256,"Du hast %s die schlüssel für das Auto mit dem Kennzeichen %s gegeben.",pnameee,nummernschild);
SendClientMessage(playerid,COLOR_GREEN,str);
format(str,256,"Du hast von %s die schlüssel für das Auto mit dem Kennzeichen %s bekommen.",pname,nummernschild);
SendClientMessage(pID,COLOR_GREEN,str);
break
}
}
}
return 1;
}
Zu deiner Frage
z.b. so:
if(strcmp(nummernschild,dini_Get(accFormat,datei)) != 0)
oder so
if(strcmp(nummernschild,dini_Get(accFormat,datei)))
Pack doch einfach alles in eine for schleife und lass statt return 1; einfach ein break laufen.
Und nutze statt 2 Strings einfach nur einen
Beispiel:
format(str,256,"Du hast %s die schlüssel für das Auto mit dem Kennzeichen %s gegeben.",pnameee,nummernschild);
SendClientMessage(playerid,COLOR_GREEN,str);
format(str,256,"Du hast von %s die schlüssel für das Auto mit dem Kennzeichen %s bekommen.",pname,nummernschild);
SendClientMessage(pID,COLOR_GREEN,str);
@janplayer
Hast du die Zelle Id als Primärkey in deiner Tabelle eingestellt?
Wenn ja brauchst du Id in deinem query nicht zu über geben
Wenn nicht musst du das auch in den query als Value mit eintragen
if(dialogid == DIALOG_SMSANTWORTEN)
{
if(response)
{
new Query[264];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
new id = AktuelleNachricht[playerid];
SendClientMessage(playerid,Grün,NachrichtenSender[playerid][id]);
format(Query, sizeof(Query), "INSERT INTO sms (`Sender`, `Empfänger`, `inhalt`) VALUES ('%s', '%s', '%s');",sendername,NachrichtenSender[playerid][id],inputtext);
mysql_query(Query);
mysql_insert_id();
}
}
Ich will nicht ausschließen, das das ein Scrpt fehler ist
Das passiert eigentlich dann wenn kein SetSpawnInfo gemacht wurde, hab ich so die erfahrung mit gemacht.
Passiert das auch bei anderen Spielern? Oder nur bei dir
Passiert das auch, wenn du nur diese 4 spurige Straße benutzt?
Sag mir mal pls die ObjektID davon
Nicht zwingend, wenn sich der Timer nicht mit anderen Überschneidet und die Abstände der Wiederholungsrate groß genug sind ist das kein Problem.
Wenn dein PC bzw Root/vServer eine gute Leistung hat, ist das eh kein Problem
Am ende aus den return 0; ein return 1; machen
Bot Connecten lassen -> Spawnen
SetPlayerPosFindZ + Timer
Die meisten sind halt, wie schon gesagt einfach nur Admingeil...
Einer der Gründe, warum die Server keine Große beliebt heit erreicht, ist eigentlich ganz einfach:
Die meisten Serverowner haben einfach keine Erfahrung im Admin sein und vergraulen so einfach die User.
Schlussfolgerung: Die User die vertrieben wurden machen einen eigenen Server auf, mit der Meinung sie könnten es besser, und posten in den Serverwerbungen, dass der Server die reinste Scheiße ist (sorry für den Außdruck, lese es aber oft^^) und sie sollen doch lieber auf dem Server des poststers Spielen. -> Das ist ein ewiger Kreislauf
das
if(!strcmp("/admins", true))
zu das
if(!strcmp("/admins", cmdtext, true))
Mhm ich hatte das mal bei einer Map von Satan, da ist der Client auch andauernt mit allen möglichen streamern gecrasht
Merkwürdigerweise mit dem von Einstein nicht, leider ist der aber nicht UpToDate musste halt updaten, so schwer wirds nicht sind
Probier den mal, und komm jetzt bitte nicht, damit das du schon alle möglichen streamer ausprobiert hast.
ein paar zeilen und danach wären echt nicht schlecht