Dann:
If player dead bla bla bla
SendMessageToPlayer ("Der Spieler ist gestorben!")
Ja , genau so wird es gemacht ... .
Dann:
If player dead bla bla bla
SendMessageToPlayer ("Der Spieler ist gestorben!")
Ja , genau so wird es gemacht ... .
Funktioniert nicht richtig,wenn man Selbstmord begeht.
main() funktioniert sowieso nicht bei einem Filterscript.
Wieso bannt man überhaupt Jemanden über die PVar ? Es bringt nichts,denn die Werte werden sowieso beim Verlassen des Servers gelöscht.
PVars sind nur so lange gültig,wie ein Spieler mit dieser ID online ist.Verlässt er den Server,sind die Werte alle ungültig.
Auch beim Serverrestart wären die Daten weg.
ZitatDanke, zumindest der Grund wird nun angezeigt, leider bleibt die Variable nachwievor 0..
Wie prüfst du das ?
Du solltest in das Userprofil schreiben,dass er gebannt ist.Denn sowieso,die ID kann ja von irgendeinem Namen belegt werden,oder nicht ?
Den Code kann man leider nicht gut lesen.
Bevor du Code postest,schau dir mal die Post-Vorschau an.
Ansonsten gibt es nocht pastebin, da kannst es posten und hier den Link einfügen.
Kannst auch direkt Abfragen,ob ein Wert zwischen zwei Werten steckt ohne UND && oder ODER ||.
new hour, minute;
gettime(hour, minute);
if( <UNTERGRENZE> <= hour <= <OBERGRENZE> ) {
}
In deinem Fall müsstewäre so richtig
if( 0 <= hour < 4 )
Achtung,dass dort 0 <= und < 4 ist. Es soll ja wohl von 0:00 bis 3:59 funktionieren.
Solche Threads nerven ... .
Kauf dir eine PSC und gut ist,geschlossen.
Ich meine es so,wie ich es geschrieben habe. Hast dich nicht wirklich an den Post gehalten,schade :/.
Wunderbares Beispiel,wieso man sizeof benutzen sollte.
[...]
Ich weiss nicht wie lang der String ist,den du von gpci bekommst.Probier mal 400 aus,als größe für mysqlquery. Reicht bestimmt aus, kannst es aber ja selber herrausfinden ob es reicht indem du mal mit strlen() die länge vom String ausgeben lässt.
Ansonsten, füg nach jeder Zeile mal print("1") , print("2") usw ein, falls du immernocherhälst.
GetPlayerAdmin(playerid) <= NEEDED_ADMINLEVEL
Sieht verdächtig aus. Wenn das Adminlevel kleiner ist als NEEDED_ADMINLEVEL :-O ?
Sowieso, deine Namensbezeichung ist "komisch".
if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611){
Vehid ... Modid wäre wohl vom Namen her besser.Denn Vehicleid kann ja alles zwischen 1 und (MAX_VEHICLES - 1) sein.
Wovon redest du ? Da steht nirgendwo Google ...
Du benutzt nicht zufällig Google Chrome ?
Für MySQL Fragen ist das Forum nicht gedacht, vorallem nicht bei Syntax Fehlern ...
Zitat- An error has occured. (Error ID: 1064, You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1)
`Radio` int(11) NOT NULL,)
Das Letzte Komma ( , ) ist falsch.Es gehört dort nicht hin.
Wieso testest du die Befehle nicht in irgendeinen MySQL Umgebung ? Du testest doch mit Sicherheit auch lokal, phpMyAdmin zum Beispiel.
bei Google:
f_streamer include samp
http://forum.sa-mp.com/showthread.php?t=122983 - mysql
float und a_http sind beim SA:MP Serverpaket dabei.
Wunderbares Beispiel,wieso man sizeof benutzen sollte.
forward banplayerhdwid(playerid,const grund[]);
public banplayerhdwid(playerid,const grund[])
{
new mysqlquery[128],string[255];
gpci(playerid,string,255);
GetPlayerName(playerid,mysqlquery,24);
format(mysqlquery,256,"INSERT INTO `bans` (`hdwid`,`reason`,`banned_player`) VALUES ('%s','%s','%s')",string,grund,mysqlquery);
// ^-- buffer overflow... du hast als größe 256 angegeben,möglich wäre aber nur 128.Nimm lieber sizeof(mysqlquery) ... damit verhinderst du sowas.
mysql_query(mysqlquery);
new kmsg2[256];
format(kmsg2,256,"Du wurdest gebannt, Grund: %s",grund);
SendClientMessage(playerid,0xFF0000FF,kmsg2);
Kick(playerid);
mysql_free_result();
return 1;
}
Ich weiss nicht wie lang der String ist,den du von gpci bekommst.Probier mal 400 aus,als größe für mysqlquery. Reicht bestimmt aus, kannst es aber ja selber herrausfinden ob es reicht indem du mal mit strlen() die länge vom String ausgeben lässt.
Ansonsten, füg nach jeder Zeile mal print("1") , print("2") usw ein, falls du immernoch
ZitatUnknow command
erhälst.
public OnPlayerDisconnect(playerid, reason)
{
new SQuery[1024];
format(SQuery, sizeof(SQuery), "UPDATE User FROM `users`, `Money` = '%d', `Score` = '%d', `Kills` = '%d', `Deaths` = '%d', `Admin` = '%d', `Warns` = '%d' WHERE `User` = '%s' LIMIT 1", GetPlayerMoney(playerid), GetPlayerScore(playerid), PlayerInfo[playerid][pKills], PlayerInfo[playerid][pDeaths], PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][pWarns], mysql_get_name(playerid));
mysql_query(SQuery);
return 1;
}
Das ist zum Beispiel totaler Blödsinn. UPDATE und FROM sind Gegensätze. Das eine schreibt ( SET ) , das Andere ließt ( GET ).
UPDATE <TABELLE>
SET <FELD> = <WERT>
( WHERE <FELD> = <WERT> )
Auf dem Bild rechts neben "Struktur" steht doch SQL.Da kannst du doch die Querys ausprobieren.
Naja, ich weiss weder was "racuni" ist noch "Korisnik" ist.Sicher, dass Query groß genug ist für den kompletten String ?
Du kannst ja mal den String mit print ausgeben lassen und einfach in XAMPP ausführen ( Hast doch sicherlich lokal einen MySQL Server installiert, da sollte es sicherlich gehen ) lassen.
Da bekommst du eine genauere Fehlerbeschreibung.
`Deathsÿ= '%d',
Glaube nicht das du `Deathsÿ hast.ÿ muss bestimmt mit ` getauscht werden.
if(sscanf(params,"u",o))return SendClientMessage(playerid,ROT,"/setposr [haus]");
Du weisst mit Sicherheit nicht,wieso du dort "u" hast.
http://forum.sa-mp.de/san-andr…t-parametern-7#post414826
Oder hier,
http://wiki.sa-mp.com/wiki/Fast_Commands#Data_types
Die Funktion "HouseExist" ist ja mal völlig [...] .
Ist die wirklich so in deinem Script ? Falls ja, würde man auch Abfragen ob das Haus exisitiert über " 0 <= HAUSID < MAX_HOUSES"
Das Haus würde deiner Funktion nach immer existieren,wenn die Zahl hinter o größer / gleich 0 ist und kleiner als MAX_HOUSES
Was hast du denn wirklich vor ?
new aktion[200];
strtok hat standardmäßig als Rückgabewert ein Array mit der Größe 256. Daher müsste aktion genau so groß sein.
Schau mal dieses Video hier bei ~3:36, das Problem gibts schon lange und hatte ich auch.
http://www.youtube.com/watch?v=mI2kHMVpv1s
Wenn du dieses abfallen der Lichter meinst,dass ist ein GTA Problem. Bin mir auch gar nicht mehr so sicher wodurch es alles hervorgerufen wurde. Ein Fall müsste aber die Kollision mit irgendetwas gewesen sein.Die fallen ab, sind dann aber wieder an der richtigen Stelle. Kann sein,dass du die Lichter zu weit im LKW drin hast und es deswegen als eine Kollision erkannt wird.
Kommt drauf an was du verwendest.
dcmd wäre so:
dcmd_waffenkaufen(...) {
// Befehl.
dcmd_buygun( ... ){
return dcmd_waffenkaufen( ... );
}
ZCMD wäre so:
COMMAND:waffenkaufen(...) {
// Befehl
}
COMMAND:buygun( ... ) {
return cmd_waffenkaufen( ... );
}
Normales strcmp.
if(!strcmp(cmdtext[1],"buygun",true) || !strcmp(cmdtext[1],"waffenkaufen",true) ) {
// Befehl
}