Hallo zusammen,
ich habe hier noch mein selfmade-script aufem rechner rumfliegen, aber möchte damit kein projekt starten da die samp spieler von monat zu monat weniger werden.
Allerdings möchte ich es auch nich vergammeln lassen
Verkaufen würde nix bringen da man keine käufer findet die mehr als 30 euro zahlen.
Habt ihr irgendwelche vorschläge was ich damit machen kann/soll?
Beiträge von Pluto
-
-
Logitech g930 Wireless Headset
-
Weiß auch nich,
ich denke bloß umsonst werden es die wenigsten machen oder ohne irgendwelche gegenleistungen muss ja kein Geld sein. -
Springt da was raus für den Lehrer
-
ja... aber dieses teil muss da weg
-
in der Zeile else if (GetPlayerVehicleSeat(playerid) != 0); das ";" weg
-
lösch mal den "stock strtok" dann müsste es gehen
-
Wenn du so weiter machst dann schreibt breadfish dein ganzes script
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
public OnPlayerCommandText
{
dcmd(money,5mcmdtext);dann den befehl ganz unter script
dcmd_money(playerid,params[])
{
new pID;
new Geld2;
new string[128],string2[128];
if(Spieler[playerid][Adminlevel] >= 3)
{
if(sscanf(params,"ui",pID,Geld2))
{
SendClientMessage(playerid,FARBE_WEIS,"Benutze: /money [playerid][Betrag]");
}
else if(pID == INVALID_PLAYER_ID)
{
SendClientMessage(playerid,FARBE_WEIS,"Diesen Spieler gibt es nicht.");
}
else if(Spieler[pID][Adminlevel] > Spieler[playerid][Adminlevel])
{
}
else
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pname,sizeof(pname));
format(string,sizeof(string),"Du hast das Geld von %s auf %d$ gesetzt. Grund: %s",pname,Geld2,Grund);
format(string2,sizeof(string2),"Dein Geld wurde auf %d$ von %s gesetzt.",Geld2,name);
SendClientMessage(playerid,FARBE_HELLBLAU,string);
SendClientMessage(pID,FARBE_HELLBLAU,string2);
GivePlayerMoney(pID,-GetPlayerMoney(pID));
GivePlayerMoney(pID,Geld2);
}
}
}falls du sscanf nicht hast dann hier
stock sscanf(string[], format[], {Float,_}:...)
{
#if defined isnull
if (isnull(string))
#else
if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
#endif
{
return format[0];
}
#pragma tabsize 4
new
formatPos = 0,
stringPos = 0,
paramPos = 2,
paramCount = numargs(),
delim = ' ';
while (string[stringPos] && string[stringPos] <= ' ')
{
stringPos++;
}
while (paramPos < paramCount && string[stringPos])
{
switch (format[formatPos++])
{
case '\0':
{
return 0;
}
case 'i', 'd':
{
new
neg = 1,
num = 0,
ch = string[stringPos];
if (ch == '-')
{
neg = -1;
ch = string[++stringPos];
}
do
{
stringPos++;
if ('0' <= ch <= '9')
{
num = (num * 10) + (ch - '0');
}
else
{
return -1;
}
}
while ((ch = string[stringPos]) > ' ' && ch != delim);
setarg(paramPos, 0, num * neg);
}
case 'h', 'x':
{
new
num = 0,
ch = string[stringPos];
do
{
stringPos++;
switch (ch)
{
case 'x', 'X':
{
num = 0;
continue;
}
case '0' .. '9':
{
num = (num << 4) | (ch - '0');
}
case 'a' .. 'f':
{
num = (num << 4) | (ch - ('a' - 10));
}
case 'A' .. 'F':
{
num = (num << 4) | (ch - ('A' - 10));
}
default:
{
return -1;
}
}
}
while ((ch = string[stringPos]) > ' ' && ch != delim);
setarg(paramPos, 0, num);
}
case 'c':
{
setarg(paramPos, 0, string[stringPos++]);
}
case 'f':
{new changestr[16], changepos = 0, strpos = stringPos;
while(changepos < 16 && string[strpos] && string[strpos] != delim)
{
changestr[changepos++] = string[strpos++];
}
changestr[changepos] = '\0';
setarg(paramPos,0,_:floatstr(changestr));
}
case 'p':
{
delim = format[formatPos++];
continue;
}
case '\'':
{
new
end = formatPos - 1,
ch;
while ((ch = format[++end]) && ch != '\'') {}
if (!ch)
{
return -1;
}
format[end] = '\0';
if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
{
if (format[end + 1])
{
return -1;
}
return 0;
}
format[end] = '\'';
stringPos = ch + (end - formatPos);
formatPos = end + 1;
}
case 'u':
{
new
end = stringPos - 1,
id = 0,
bool:num = true,
ch;
while ((ch = string[++end]) && ch != delim)
{
if (num)
{
if ('0' <= ch <= '9')
{
id = (id * 10) + (ch - '0');
}
else
{
num = false;
}
}
}
if (num && IsPlayerConnected(id))
{
setarg(paramPos, 0, id);
}
else
{
#if !defined foreach
#define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
#define __SSCANF_FOREACH__
#endif
string[end] = '\0';
num = false;
new
name[MAX_PLAYER_NAME];
id = end - stringPos;
foreach (Player, playerid)
{
GetPlayerName(playerid, name, sizeof (name));
if (!strcmp(name, string[stringPos], true, id))
{
setarg(paramPos, 0, playerid);
num = true;
break;
}
}
if (!num)
{
setarg(paramPos, 0, INVALID_PLAYER_ID);
}
string[end] = ch;
#if defined __SSCANF_FOREACH__
#undef foreach
#undef __SSCANF_FOREACH__
#endif
}
stringPos = end;
}
case 's', 'z':
{
new
i = 0,
ch;
if (format[formatPos])
{
while ((ch = string[stringPos++]) && ch != delim)
{
setarg(paramPos, i++, ch);
}
if (!i)
{
return -1;
}
}
else
{
while ((ch = string[stringPos++]))
{
setarg(paramPos, i++, ch);
}
}
stringPos--;
setarg(paramPos, i, '\0');
}
default:
{
continue;
}
}
while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
{
stringPos++;
}
while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
{
stringPos++;
}
paramPos++;
}
do
{
if ((delim = format[formatPos++]) > ' ')
{
if (delim == '\'')
{
while ((delim = format[formatPos++]) && delim != '\'') {}
}
else if (delim != 'z')
{
return delim;
}
}
}
while (delim > ' ');
return 0;
} -
speichern mit /save
-
Ja ist er...
-
Ja ist er....
-
joo kein ding
-
pn du dussel
-
ich habe teamviewer... schreib mir pn mit daten
-
tu den stock strtok löschen
-
Guten Tag liebe Breadfisher..
Ich habe mir eine SMS system erstellt. Es speichert die SMS in den Scriptfiles. Ich speicher alles über dini.
das Speichern klappt auch aber wenn ich jetzt ingame die sms abrufen will, kommt ein Dialogfenster in dem dann nur "Absender:" steht.
eigentlich sollte in diesem Dialog stehten: "Absender: "name" und dann der Text"...
das ist mein Befehl zum sms abrufen.
Ich finde den doofen Fehler einfach nicht.. bitte helft mir
if(strcmp("/showsms",cmdtext,true) == 0)
{
if(Spieler[playerid][smsanzahl] > 0)
{
new smsdatei[64];
new string2[128];
for(new i = 0; i<MAX_SMS;i++)
{
format(smsdatei,sizeof(smsdatei),"/SMS/%d.txt",i);
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
if(!strcmp(name,dini_Get(smsdatei,"Empfanger"),true))
{
smsoffen[playerid] = i;
if(Smszeigen[playerid] == 0)
{
new x = smsoffen[playerid];
Smszeigen[playerid] = 1;
new pname[MAX_PLAYER_NAME];
format(SmsInfo[x][smstext2],128,"%s",dini_Get(smsdatei,"Text"));
format(pname,32,"%s",dini_Get(smsdatei,"Absender"));
format(string,sizeof(string),"Absender: %s",pname);
format(string2,sizeof(string2),"%s",SmsInfo[x][smstext2]);
format(string3,sizeof(string3),"%s\n%s",string,string2);
ShowPlayerDialog(playerid,DIALOG_SHOWSMS,DIALOG_STYLE_MSGBOX,"SMSZEIGEN",string3,"Schließen","");
}
return 0;
}
}
}
} -
Der Fehler kommt, da eine Variale fehlt.
du gibst dem Spieler nur eine Waffe. Die munition gibst du ihm allerdings nicht
-
dir fehlt das include Utils
such diese einfach mal über die SUFU
-
du hast sscanf und strtok bereits definiert.
schau mal ob du stock sscanf oder stock strtok doppelt hast.
wenn nicht dann klammer die beiden stocks mal aus, denn dann hast du sie schon durch einen include
-
Na Endlich.. Gebäude entfernen
Super update