Hast du es nirgends anders definiert? Zum Beispiel global oder in einem Enum?
Wenn du nichts findest kannst du es ja immer noch umbenennen, machst eine 2 hin oder so.
Beiträge von Jeffry
-
-
Code in PN geschickt:
if(!strcmp(cmdtext,"/rac",true))
{
if(sDatei[playerid][pAdmin] >= 2)
{
for(new p = 0; p < MAX_PLAYERS; p++)
{
for(new v = 0; v < MAX_VEHICLES; v++)
{
if(!IsPlayerInVehicle(p,v))
{
SetVehicleToRespawn(v);
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==LSPDcar[i])
{
SetVehiclePos(LSPDcar[i],Fraktautos[i][1][fposx],Fraktautos[i][1][fposy],Fraktautos[i][1][fposz]);
SetVehicleZAngle(LSPDcar[i],Fraktautos[i][1][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==SecretServicecar[i])
{
SetVehiclePos(SecretServicecar[i],Fraktautos[i][2][fposx],Fraktautos[i][2][fposy],Fraktautos[i][2][fposz]);
SetVehicleZAngle(SecretServicecar[i],Fraktautos[i][2][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Cripzcar[i])
{
SetVehiclePos(Cripzcar[i],Fraktautos[i][3][fposx],Fraktautos[i][3][fposy],Fraktautos[i][3][fposz]);
SetVehicleZAngle(Cripzcar[i],Fraktautos[i][3][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Bloodzcar[i])
{
SetVehiclePos(Bloodzcar[i],Fraktautos[i][4][fposx],Fraktautos[i][4][fposy],Fraktautos[i][4][fposz]);
SetVehicleZAngle(Bloodzcar[i],Fraktautos[i][4][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Vagoscar[i])
{
SetVehiclePos(Vagoscar[i],Fraktautos[i][5][fposx],Fraktautos[i][5][fposy],Fraktautos[i][5][fposz]);
SetVehicleZAngle(Vagoscar[i],Fraktautos[i][5][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Aztecascar[i])
{
SetVehiclePos(Aztecascar[i],Fraktautos[i][6][fposx],Fraktautos[i][6][fposy],Fraktautos[i][6][fposz]);
SetVehicleZAngle(Aztecascar[i],Fraktautos[i][6][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Yakuzacar[i])
{
SetVehiclePos(Yakuzacar[i],Fraktautos[i][7][fposx],Fraktautos[i][7][fposy],Fraktautos[i][7][fposz]);
SetVehicleZAngle(Yakuzacar[i],Fraktautos[i][7][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Terrorcar[i])
{
SetVehiclePos(Terrorcar[i],Fraktautos[i][8][fposx],Fraktautos[i][8][fposy],Fraktautos[i][8][fposz]);
SetVehicleZAngle(Terrorcar[i],Fraktautos[i][8][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==LCNcar[i])
{
SetVehiclePos(LCNcar[i],Fraktautos[i][9][fposx],Fraktautos[i][9][fposy],Fraktautos[i][9][fposz]);
SetVehicleZAngle(LCNcar[i],Fraktautos[i][9][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Armycar[i])
{
SetVehiclePos(Armycar[i],Fraktautos[i][10][fposx],Fraktautos[i][10][fposy],Fraktautos[i][10][fposz]);
SetVehicleZAngle(Armycar[i],Fraktautos[i][10][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Hitmancar[i])
{
SetVehiclePos(Hitmancar[i],Fraktautos[i][11][fposx],Fraktautos[i][11][fposy],Fraktautos[i][11][fposz]);
SetVehicleZAngle(Hitmancar[i],Fraktautos[i][11][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==FBIcar[i])
{
SetVehiclePos(FBIcar[i],Fraktautos[i][12][fposx],Fraktautos[i][12][fposy],Fraktautos[i][12][fposz]);
SetVehicleZAngle(FBIcar[i],Fraktautos[i][12][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Mediccar[i])
{
SetVehiclePos(Mediccar[i],Fraktautos[i][13][fposx],Fraktautos[i][13][fposy],Fraktautos[i][13][fposz]);
SetVehicleZAngle(Mediccar[i],Fraktautos[i][13][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==SRFcar[i])
{
SetVehiclePos(SRFcar[i],Fraktautos[i][14][fposx],Fraktautos[i][14][fposy],Fraktautos[i][14][fposz]);
SetVehicleZAngle(SRFcar[i],Fraktautos[i][14][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Newscar[i])
{
SetVehiclePos(Newscar[i],Fraktautos[i][15][fposx],Fraktautos[i][15][fposy],Fraktautos[i][15][fposz]);
SetVehicleZAngle(Newscar[i],Fraktautos[i][15][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==Fahrschulcar[i])
{
SetVehiclePos(Fahrschulcar[i],Fraktautos[i][16][fposx],Fraktautos[i][16][fposy],Fraktautos[i][16][fposz]);
SetVehicleZAngle(Fahrschulcar[i],Fraktautos[i][16][fposa]);
}
}
}
}
break;
}
SendClientMessage(playerid,COLOR_GRÜN,"Ein Admin respawnt alle Fahrzeuge auf diesem Server.");
}
return 1;
}So sollte es passen.
Allerdings ist das nicht wirklich schön wie du das geschrieben hast. Du kannst die ganzen if's unter eine for(new i... Schleife packen. -
#define COLOR_GREEN2 0x33AA33AA
#define COLOR_PURPLE2 0xC2A2DAAApublic OnFilterScriptInit()
{
print("\n***********************************");
print(" MP3 Filterscript By Dennis aka. MrHellstorm");
print("***********************************\n");
return 1;
}public OnFilterScriptExit()
{
return 1;
}main() darfst du in Filterscripts nicht verwenden.
Die Farben waren schon mit dem Name definiert. -
Dann bin ich am Ende meines Lateins, tut mir Leid.
Du hast aber nicht zwei Server-Ordner und startest die ganze Zeit den falschen, oder?
Was du noch probieren kannst, ist, dass du den Server-Ordner auf einen Stick ziehst und auf einem anderen Rechner den Code ausprobierst, ob es dort geht. Falls ja, liegt es wohl an irgendwelchen Berechtigungen an einem Rechner. Wenn es da auch nicht geht, keine Ahnung.
Du kannst ja auch mal den SA-MP Server neu runterladen und die Codes in den neuen Ordner ziehen, vielleicht klappt es dann.
Mehr fällt mir dazu nicht ein, da muss ich passen.

-
Starte den Server mal als Administrator.
Also am Code liegt es nicht, sonst würde es dir die Nachricht ja nicht anzeigen, dass die Datei gelöscht wurde. -
Das liegt daran, dass das Auto nicht neu erstellt wurde. Setze einfach nach dem Respawn die Position an die der gespeicherten Position.
if(!IsPlayerInVehicle(i,v)) SetVehicleToRespawn(v);
zu:
if(!IsPlayerInVehicle(i,v))
{
SetVehicleToRespawn(v);
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(v==LSPDcar[i])
{
SetVehiclePos(LSPDcar[i],Fraktautos[i][1][fposx],Fraktautos[i][1][fposy],Fraktautos[i][1][fposz]);
SetVehicleZAngle(LSPDcar[i],Fraktautos[i][1][fposa]);
}
}
for(new i=0;i<MAX_FRAKTCARS;i++)
{
if(veh==SecretServicecar[i])
{
SetVehiclePos(LSPDcar[i],Fraktautos[i][2][fposx],Fraktautos[i][2][fposy],Fraktautos[i][2][fposz]);
SetVehicleZAngle(LSPDcar[i],Fraktautos[i][2][fposa]);
}
}
} -
Poste mal einen screenshot von deinem Explorer in dem man den Pfad und die Datei sieht. (http://www.tinypic.com)
Und poste die Funktion so, wie du sie mit dem Print hast.Kannst du die Datei manuell löschen?
-
-
format(dat,sizeof(xxx),"/data/%s.txt",name);
zu:
format(dat,sizeof(dat),"/data/%s.txt",name); -
Du kannst kein Array mit der Größe 1 erstellen.
new enum_Config[1][configInfo];
zu:
new enum_Config[2][configInfo];-----------
oder:
new enum_Config[configInfo];und dann die [0]'s weg machen.
-
mysql_log(LOG_ALL);
bei OnGameModeInit ganz als erstes einfügen.Dann posten was im Server Log oder in dem MySQL Log ausgegeben wird.
EDIT:
Ja genau das. Warte kurz.EDIT2:
Nimm den "root" Benutzer ohne Passwort. Localhost solltest du nehmen, wenn die Datenbank auf dem gleichen Server liegt:#define MYSQL_HOST "localhost"
#define MYSQL_USER "root"
#define MYSQL_PASS ""
#define MYSQL_DATA "DATENBANKNAME"Das ist in 99% aller Fälle standardmäßig so eingestellt.
Dein user "samp" wird nicht die richtigen Berechtigungen haben, das ist auf localhost (dein Rechner) so eingestellt, standardmäßig zumindest.
Deshalb benutze, wie ich oben geschrieben habe, den root - User ohne Passwort, der hat ALLE Berechtigungen. Dem kannst du später auch, je nach Client, ein Passwort geben. -
Schalte mal den mysql_log mit LOG_ALL an und poste was dort geloggt wird.
http://wiki.sa-mp.com/wiki/MySQL/R33#mysql_log -
Was heiß es kommt nichts an?
Setze vor:
if(!strcmp(MD5_Hash(inputtext), MySQL_Password(sName(playerid)), true))printf("inputtext: %s", inputtext);
printf("MD5_Hash: %s", MD5_Hash(inputtext));
printf("MySQL_Password: %s", MySQL_Password(sName(playerid)));Was wird geprintet?
-
new
WeaponName[][] =
{
"Faust","Schlagring","Golfschläger","Schlagstock","Messer","Baseballschläger","Schaufel","Billiard-Cue","Katana","Kettensäge",
"Dildo","Vibrator","Vibrator","Dildo","Blumen","Stock","Granate","Tränengas","Molotow Coctail","NONE","NONE","NONE",
"9mm Pistole","SDPistole","Deagle","Shotgun","Sawn-Off Shotgun","Combat Shotgun","Micro Uzi","MP5","AK47","M4","Tec9",
"Rifle","Sniper","RPG","Raketenwerfer","Flammenwerfer","Minigun","Rucksackbomben","Detonator","Sprühdose","Feuerlöscher",
"Kamera","Nachtsichtgerät","Infrarotsichtgerät","Fallschirm","Fake Pistole","Fahrzeug","Rotor","Explosion","Selbstmord","Fall in den Tod"
};
} //<----- Die Klammer hier muss weg.(Die Klammer in Zeile 14 im Pastebin.)
Bleibt die Warnung bestehen, oder ist die weg, wenn du die Klammer weg machst?
-
wegen " 0 terminator "
Nope, brauchst du nicht, weil:
a_samp.inc:
// Limits and internal constants
#define MAX_PLAYER_NAME (24)Es können maximal 20 der 24 Zeichen besetzt sein, also noch genügend Platz für den 0-Terminator.

-
Dann ändere es lieber wieder zurück, vielleicht wird pname ja für was ganz anderes verwendet.
Mach den Code zu:
new p_name[MAX_PLAYER_NAME];
GetPlayerName(pID, p_name, MAX_PLAYER_NAME);
format(string,sizeof(string),"AdminBefehl: Du hast dem Spieler %s (ID:%i) die Waffe %s mit %i Munition gegeben.",p_name,pID,SpielerWaffenName(waffe),muni);
SendClientMessage(playerid,COLOR_RED,string);
format(string,sizeof(string),"AdminBefehl: Der Admin %s (ID:%i) hat dir die Waffe %s mit %i Munition gegeben.",p_name,playerid,SpielerWaffenName(waffe),muni);Das sollte gehen.
-
Wie hast du denn
Spieler[pID][pname]
deklariert?Ich tippe so (im enum):
pname,ändere das zu:
pname[MAX_PLAYER_NAME], -
Ich hab hier nochmal was für Euch, grade eben kurz gemacht, dachte ich gebe es weiter, vielleicht kann es ja der ein oder andere brauchen.
stock GetWochenTag(timestamp) //©Jeffry
{
new day[11];
switch((timestamp % 604800) / 86400)
{
case 0: day = "Donnerstag";
case 1: day = "Freitag";
case 2: day = "Samstag";
case 3: day = "Sonntag";
case 4: day = "Montag";
case 5: day = "Dienstag";
case 6: day = "Mittwoch";
}
return day;
}Benutzung:
Spoiler anzeigen printf("Der heutige Tag ist ein %s.", GetWochenTag(gettime()));
printf("Gestern war %s.", GetWochenTag(gettime()-(60*60*24))); //24 Stunden mit je 60 Minuten mit je 60 Sekunden = 1 Tag.Spoiler anzeigen Gibt aus:
ZitatSpoiler anzeigen [11/08/2014 15:02:13] Der heutige Tag ist ein Montag.
[11/08/2014 15:02:13] Gestern war Sonntag.Keywords: HeutigerTag, WochenTag, WeekDay, GetToday, GetWeekDay, Welcher Tag ist heute?, Wochentag ausgeben.
-
Mach es doch mit einem Editor, das sieht recht komfortabel aus: http://forum.sa-mp.com/showthread.php?t=471474
Oder hier noch ein Tutorial zu dem ganzen Thema: http://forum.sa-mp.com/showthread.php?t=361737
-
Dann hast du den MySQL Log nicht richtig eingeschaltet.
Es kann auch sein, dass es in einer extra Datei gespeichert wird.Versuche es nochmal, es muss etwas ausgegeben werden, wenn der Debug Modus an ist.