strcat(string, string2);
strcat(string, string3);
Wieso geht das nicht? Habe drüber die ganzen Strings definiert, da es mit einem String nen Fehler gibt das die Linie zu lang ist :p
strcat(string, string2);
strcat(string, string3);
Wieso geht das nicht? Habe drüber die ganzen Strings definiert, da es mit einem String nen Fehler gibt das die Linie zu lang ist :p
Was heißt denn "geht nicht" ?
Eine bessere Fehlerbeschreibung kann man ja wohl geben.
Wenn ich bei frakid = mysql_GetInt("autos","Fraktionsid","id","a"); das "a" in " setze wie beim Bsp. kommen keine errors. Normalerweiße muss es aber ohne hin. Da kommt aber tag mismatch.
Bei GetFloat gehts auch ohne ".
- Tom
Weiß jemand wieso da nen Warning kommt?
public SpielerRegistrieren(playerid,Kennwort[]){
mysql_real_escape_string(Kennwort,Kennwort);
new Query[255];
format(Query,255,"SELECT `Spielername` FROM `accounts` WHERE `Spielername`='%s'",SpielerInfo[playerid][sName]);
mysql_query(Query);
mysql_store_result();
SendClientMessageToAll(Farbe_Leuchtrot, "Wir haben einen neuen Mitspieler! - Willkommen %s!", SpielerInfo[playerid][sName]);
SendClientMessageToAll(Farbe_Leuchtrot, "Wir wünschen dir viel Spaß auf dem Server!");
warning 202: number of arguments does not match definition
SendClientMessageToAll(Farbe_Leuchtrot, "Wir haben einen neuen Mitspieler! - Willkommen %s!", SpielerInfo[playerid][sName]);
Farbe - Text - eh Variable?
Die Variable da ist irgendwie falsch
SendClientMessageToAll(Farbe_Leuchtrot, "Wir haben einen neuen Mitspieler! - Willkommen %s!", SpielerInfo[playerid][sName]);
Finde den Fehler
Sowas macht man mit format
SendClientMessageToAll(Farbe_Leuchtrot, "Wir haben einen neuen Mitspieler! - Willkommen %s!", SpielerInfo[playerid][sName]);
Finde den Fehler
Sowas macht man mit format
format(Query,sizeof(Query),"Wir haben einen neuen Mitspieler! - Willkommen %s!",SpielerInfo[playerid][sName]);
SendClientMessageToAll(Farbe_Leuchtrot, "");
SendClientMessageToAll(Farbe_Leuchtrot, "Wir wünschen dir viel Spaß auf dem Server!");
format(Query,sizeof(Query),"Wir haben einen neuen Mitspieler! - Willkommen %s!",SpielerInfo[playerid][sName]);
SendClientMessageToAll(Farbe_Leuchtrot, Query);
Was sollte ich alles bei einem Anti-Speedhack System beachten?
Moin Moin
Ich habe gerade einen Großen fail beim Schwarzmarkt gefunden also es handelt sich um das GnE script ( German Next Era )
Also wenn man /frakmats macht kommt ne nachicht das mann bis zu 500 mats bei sich tragen kann also /frakmats 500 Dies geht auch super ABER
wenn man vor die mats ein " - " Setz also z.B /frakmats -9000 krigt man pro matt halt 10 $ also krigt der spieler 90.000 $ geschenkt !
Wie kann ich das verhindern ?
dcmd_frakmats(playerid, params[])
{
new mats, frak, preis;
if(PlayerInfo[playerid][pMember] > 0)
{
frak = PlayerInfo[playerid][pMember];
}
else if(PlayerInfo[playerid][pLeader] > 0)
{
frak = PlayerInfo[playerid][pLeader];
}
if(frak != 5 && frak != 6 && frak != 12 && frak != 13 && frak != 14 && frak != 16 && frak != 17 && frak != 19 && frak != 20 && frak != 23)
{
SendClientMessage(playerid, COLOR_GRAD1, "Du bist in keiner Gang / Mafia!");
return 1;
}
if(!IsPlayerInRangeOfPoint(playerid, 8.0, 2805.0444,-1434.0425,40.0484))
{
SendClientMessage(playerid, COLOR_GRAD1, "Du kannst hier keine Fraktions-Materialien kaufen!");
return 1;
}
if(sscanf(params, "d", mats))
{
SendClientMessage(playerid, COLOR_GRAD1, "Benutzung: /frakmats [Anzahl]");
SendClientMessage(playerid, COLOR_GRAD1, "*Du kannst maximal 500 Fraktions-Materialien mit dir nehmen.");
SendClientMessage(playerid, COLOR_GRAD1, "*1 Fraktions-Material kostet 10$.");
return 1;
}
if(mats > 500)
{
SendClientMessage(playerid, COLOR_GRAD1, "Du kannst maximal 500 Fraktions-Materialien kaufen!");
return 1;
}
if(FrakMatsHolding[playerid] + mats > 500)
{
SendClientMessage(playerid, COLOR_GRAD1, "So viele Fraktions-Materialien könntest du nicht mit dir tragen!");
return 1;
}
preis = mats * 10;
GivePlayerMoney(playerid, -preis);
FrakMatsHolding[playerid] += mats;
format(ALLSTRING, sizeof(ALLSTRING), "*Du hast %d Fraktions-Materialien für %d$ gekauft. Bringe sie nun zur Fraktionskammer!", mats, preis);
SendClientMessage(playerid, COLOR_LIGHTBLUE, ALLSTRING);
SendClientMessage(playerid, COLOR_LIGHTBLUE, "*Solltest du reloggen / sterben verlierst du die Materialien wieder!");
return 1;
}
Alles anzeigenMoin Moin
Ich habe gerade einen Großen fail beim Schwarzmarkt gefunden also es handelt sich um das GnE script ( German Next Era )
Also wenn man /frakmats macht kommt ne nachicht das mann bis zu 500 mats bei sich tragen kann also /frakmats 500 Dies geht auch super ABER
wenn man vor die mats ein " - " Setz also z.B /frakmats -9000 krigt man pro matt halt 10 $ also krigt der spieler 90.000 $ geschenkt !
Wie kann ich das verhindern ?
dcmd_frakmats(playerid, params[])
{
new mats, frak, preis;
if(PlayerInfo[playerid][pMember] > 0)
{
frak = PlayerInfo[playerid][pMember];
}
else if(PlayerInfo[playerid][pLeader] > 0)
{
frak = PlayerInfo[playerid][pLeader];
}
if(frak != 5 && frak != 6 && frak != 12 && frak != 13 && frak != 14 && frak != 16 && frak != 17 && frak != 19 && frak != 20 && frak != 23)
{
SendClientMessage(playerid, COLOR_GRAD1, "Du bist in keiner Gang / Mafia!");
return 1;
}
if(!IsPlayerInRangeOfPoint(playerid, 8.0, 2805.0444,-1434.0425,40.0484))
{
SendClientMessage(playerid, COLOR_GRAD1, "Du kannst hier keine Fraktions-Materialien kaufen!");
return 1;
}
if(sscanf(params, "d", mats))
{
SendClientMessage(playerid, COLOR_GRAD1, "Benutzung: /frakmats [Anzahl]");
SendClientMessage(playerid, COLOR_GRAD1, "*Du kannst maximal 500 Fraktions-Materialien mit dir nehmen.");
SendClientMessage(playerid, COLOR_GRAD1, "*1 Fraktions-Material kostet 10$.");
return 1;
}
if(mats > 500)
{
SendClientMessage(playerid, COLOR_GRAD1, "Du kannst maximal 500 Fraktions-Materialien kaufen!");
return 1;
}
if(FrakMatsHolding[playerid] + mats > 500)
{
SendClientMessage(playerid, COLOR_GRAD1, "So viele Fraktions-Materialien könntest du nicht mit dir tragen!");
return 1;
}
preis = mats * 10;
GivePlayerMoney(playerid, -preis);
FrakMatsHolding[playerid] += mats;
format(ALLSTRING, sizeof(ALLSTRING), "*Du hast %d Fraktions-Materialien für %d$ gekauft. Bringe sie nun zur Fraktionskammer!", mats, preis);
SendClientMessage(playerid, COLOR_LIGHTBLUE, ALLSTRING);
SendClientMessage(playerid, COLOR_LIGHTBLUE, "*Solltest du reloggen / sterben verlierst du die Materialien wieder!");
return 1;
}
Abfragen, ob der eingegebene Betrag unter 0 ist, wenn ja, Code abbrechen.
LG
Abfragen, ob der eingegebene Betrag unter 0 ist, wenn ja, Code abbrechen.
LG
Wie soll ich das machen ? ich bin nicht so der Scripter !
So:
if(mats < 1) return SendClientMessage(playerid,DeineFarbe,"Mats dürfen nicht kleiner als 1 sein!");
Wie wandelt man ein Script was mit Dini arbeitet in MySQL um?
So:
if(mats < 1) return SendClientMessage(playerid,DeineFarbe,"Mats dürfen nicht kleiner als 1 sein!");
Ich würds verkürzen:
if(Mats < 1 || Mats > 500)return SendClientMessage(playerid, FARBE, "Die Mats dürfen nicht kleiner als 1 oder größer als 500 sein.");
Abend,
wegen dem hier:
new Query[255];
format(Query,sizeof(Query),"Es wurde ein Gangwar zwischen der Fraktion %s und %s gestartet.",Factions[SpielerInfo[playerid][sFraktion]],Factions[FightSystem[TempZone][fsOwnerFaction]]);
SendClientMessageToAll(Farbe_Dunkelblau, Query);
SendClientMessageToAll(Farbe_Dunkelblau, "Beide Fraktionen kämpfen nun um ein Gebiet.");
SendClientMessageToAll(Farbe_Dunkelblau, "Der Gangwar läuft nun 3 Stunden.");
ist jetzt mein Headspace überlastet..., kann man das anders machen?
Was zum teufel ist ein Headspace?
Wäre auch mal interessant das zu erfahren
Was zum teufel ist ein Headspace?
Wäre auch mal interessant das zu erfahren
Er meint eher heapspace und das umfasst den Verbrauch an Memory im Stack oder im Heap und dies sind Memory Bereiche.
Aber um nochmal auf den Punkt zu kommen heapspace => Speicherverbrauch beim ausführen des Skriptes auch Ramverbrauch
genannt falls dir das was sagt oder Arbeitsspeicherverbrauch.
Ich kann an dem oben geposteten code nicht erkennen warum das so den Ram verbrauch anheben sollte du kannst die string größe verkleiner sollte es sich darauf beziehen das nicht alle Zeichen wiedergegeben werden liegt das daran das man nur eine bestimmte anzahl an zeichen
über die Chatbox mit SendClientMessage wieder geben kann die liegt bei 144 Zeichen laut dem wiki.
new Query[255];
Wieso benennt man bitte einen String 'Query' ?
Sinn dahinter?
Ausserdem geben strings nur 128 Zeichen wieder... können auch 144 sein, wobei ich denke das es 128 sind.