Es erschwert einem das Scripten später enorm, wenn man es jetzt nicht so macht (also mit #define's).
Beiträge von maddinat0r
-
-
Schlechte Idee, man will ja nicht umsonst noch mehr tippen.
Man will ja nicht mit den ID's durcheinanderkommen, später hast du dann 100 Dialoge und wenn du mal ne ID
verändern willst, viel Spaß.
Schreib mal die #define über den ShowPlayerDialog. -
Vielleicht als Admin ausführen?
Bei mir klappt es einwandfrei und hab auch 64bit. -
Du hast einfach nur '\' eingegeben, das ist nicht erlaubt.
Nach '\' muss ein spezieller Buchstabe kommen, war hier aber nicht der Fall.
Dashalb habe ich nach den letzten 2 '\' ein 'n' getippt. -
Parken | Position Sichern\nNummernschild ändern\nFahrzeug rufen\nFahrzeug öffnen\nFahrzeug Schließen
//Edit:
Parken | Position Sichern\nNummernschild ändern\nFahrzeug rufen\nFahrzeug öffnen\nFahrzeug SchließenDiese Zeichen hattest du vergessen.
-
if(strcmp("/dm2",cmdtext, true) == 0) {
new string[100],name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(string,sizeof(string),"Info: %s ist in die Desert Eagle DM Arena gegangen! [/dm2]",name);
SendClientMessageToAll(gelb,string);
SetPlayerSkin(playerid, 33);
ResetPlayerWeapons(playerid);
GivePlayerWeapon(playerid, 24, 10000);
SetPlayerPos(playerid,1059.895996,2081.685791,10.820312);
SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), 0);
SendClientMessage(playerid, 0x00FF09FF, "Willkommen in der Desert-Eagle-DM Arena!");
TogglePlayerControllable(playerid,0);
SetTimerEx("Unfreeze",10000,0,"i",playerid);
return 1;
}
forward Unfreeze(playerid);
public Unfreeze(playerid)
{
TogglePlayerControllable(playerid,1);
return 1;
} -
xD, Erstmal ist Doppelpost (2 Posts nach einander) verboten, benutze die Editierfunktion (und die Editierregel).
Und 2. such dir die ganzen Includes im Forum mit der Suchfunktion raus. -
Uff xD
Vielleicht solltest du deinen Adminlevel beim Befehl anpassen?
Wie man unschwer erkennen kann, sind da nur die Adminlevels 1 - 5, nicht 1337 oder sonstwas. -
if (strcmp(cmd, "/admins", true) == 0 || strcmp(cmd, "/supporter", true) == 0)
{
new adminlist[256], admin[30], aname[MAX_PLAYER_NAME];
strcat(adminlist,"Serverowner:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(PlayerInfo[i][pAdmin] == 0) continue;
if(PlayerInfo[i][pAdmin] == 5) { GetPlayerName(i,aname,MAX_PLAYER_NAME); format(admin,sizeof(admin),"%s\n",aname); strcat(adminlist,admin); }
}
strcat(adminlist,"\nSuper-Administratoren:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(PlayerInfo[i][pAdmin] == 0) continue;
if(PlayerInfo[i][pAdmin] == 4) { GetPlayerName(i,aname,MAX_PLAYER_NAME); format(admin,sizeof(admin),"%s\n",aname); strcat(adminlist,admin); }
}
strcat(adminlist,"\nAdministratoren:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(PlayerInfo[i][pAdmin] == 0) continue;
if(PlayerInfo[i][pAdmin] == 3) { GetPlayerName(i,aname,MAX_PLAYER_NAME); format(admin,sizeof(admin),"%s\n",aname); strcat(adminlist,admin); }
}
strcat(adminlist,"\nSupport-Leiter:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(PlayerInfo[i][pAdmin] == 0) continue;
if(PlayerInfo[i][pAdmin] == 2){ GetPlayerName(i,aname,MAX_PLAYER_NAME); format(admin,sizeof(admin),"%s\n",aname); strcat(adminlist,admin); }
}
strcat(adminlist,"\nSupporter:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(PlayerInfo[i][pAdmin] == 0) continue;
if(PlayerInfo[i][pAdmin] == 1) { GetPlayerName(i,aname,MAX_PLAYER_NAME); format(admin,sizeof(admin),"%s\n",aname); strcat(adminlist,admin); }
}
ShowPlayerDialog(playerid,DIALOG_ADMINLIST,DIALOG_STYLE_MSGBOX,"Admins online:",adminlist,"Okay","");
return 1;
}
<.<' , Bittesehr xD -
Hab hier (eher für mich) nen /admins-Befehl geschrieben.
Musst ihn eigentlich nur so umändern, wie du es haben willst (mit den Adminlevels und den Namen).
if (strcmp(cmd, "/admins", true) == 0 || strcmp(cmd, "/supporter", true) == 0)
{
new adminlist[256], admin[30];
strcat(adminlist,"Serverowner:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(Spieler[i][Admin] == 0) continue;
if(Spieler[i][Admin] == 5) { format(admin,sizeof(admin),"%s\n",Spieler[i][Name]); strcat(adminlist,admin); }
}
strcat(adminlist,"\nSuper-Administratoren:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(Spieler[i][Admin] == 0) continue;
if(Spieler[i][Admin] == 4) { format(admin,sizeof(admin),"%s\n",Spieler[i][Name]); strcat(adminlist,admin); }
}
strcat(adminlist,"\nAdministratoren:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(Spieler[i][Admin] == 0) continue;
if(Spieler[i][Admin] == 3) { format(admin,sizeof(admin),"%s\n",Spieler[i][Name]); strcat(adminlist,admin); }
}
strcat(adminlist,"\nSupport-Leiter:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(Spieler[i][Admin] == 0) continue;
if(Spieler[i][Admin] == 2) { format(admin,sizeof(admin),"%s\n",Spieler[i][Name]); strcat(adminlist,admin); }
}
strcat(adminlist,"\nSupporter:\n");
for(new i;i < MAX_PLAYERS;i++) {
if(Spieler[i][Admin] == 0) continue;
if(Spieler[i][Admin] == 1) { format(admin,sizeof(admin),"%s\n",Spieler[i][Name]); strcat(adminlist,admin); }
}
ShowPlayerDialog(playerid,DIALOG_ADMINLIST,DIALOG_STYLE_MSGBOX,"Admins online:",adminlist,"Okay","");
return 1;
} -
public OnPlayerConnect(playerid) {
new File:wl = fopen("Whitelist.cfg",io_read), user[MAX_PLAYER_NAME], pname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
while(fread(wl,user)) {
if(!strcmp(user,pname)) goto load;
}
return Kick(playerid);
load:
//Hier gehts weiter mit deinem OnPlayerConnect
//...
//...
return 1;
}
Was ist daran so schwer?
Ich geb noch einstündigen Support -
Nein, wie denn auch?
Falls das Script gut geloggt wird und du Zugriff auf den Server hast , könntest du höchstens die log-Datei ansehen und dort nachsehn,
wie die Befehle heißen.
Und außerdem wenn es sogar irgendwie geht, wenn die Befehle geändert wurden, dann auch wohl aus gutem Grund. -
Ist ja auch logisch, wenn man 18 Fraktionen 500x auf einmal speichern will xD
-
Ich benutze immer ein Filterscript, also such mal nach einem.
Kleiner Tipp: Falls du hier keins findest, im englischen SA-MP Forum suchen. -
Nach seeeeeehr langsamen Lesen des Satzes hab ich erkannt, dass das Script ihm beim Compilieren sagt,
dass es die Datei nicht findet (cannot read from file:blablalba.inc) aber er hat genau diese Datei im Includes-Ordner drinnen.
Sag uns doch mal wie die Include heißt und vergleich nochmal den Namen im Script mit dem Dateinamen.
Und versuch Pawno mit Administrationsrechten zu starten. -
Ich meine, dass die Adminrechte für Pawno nur für die Befehlsliste rechts gebraucht werden (damit Pawno Zugriff auf die Dateien hat).
Hab ebenfalls 64bit, geht auch alles einwandfrei. -
Versuch den Kompatibilitätsmodus mit 1. Pawno und 2. dem Server an sich.
Stell Windows XP SP3 ein. -
Wenn du alles mit ID's machst, wieso ist dann bei where "Name"?
Sollte es nicht "ID" oder sonstwas sein? -
Gewinner war irgendein playerps3, auf jeden Fall war es der 7. Kommentar.
Gratulation (falls dieser jemand hier registriert ist) an ihn -
Das return 1; muss glaub ich raus, nur eins am Ende vom gesamten Callback lassen.