naja kannst du sie bitte kennzeichnen im quelltext?
Beiträge von NicoAiko
-
-
wann wird die ident nummer erhöht? + Schick mal bitte die Ident im enum
-
was genau ist das problem mit dem ausgang, kommst du net rein oder so? oder wie ist das?
//edit: zu den errors das heißt das rathausausgang nicht benutzt/gebraucht wird. + zeige mal bitte zeile -
seit wann kann man denn in einer switch klammer else machen?
/edit sry klammern verzählt, willst du ein dialog draus machen? -
schick auch mal onplayerconnect
-
benutzte gf?
-
pInfo[playerid][pWohnort] = dini_Int(accFormat,"pWohnort");
zupInfo[playerid][pWohnort] = dini_Get(accFormat,"pWohnort");
Da das ja strings sind und keine zahlen muss da wie beim passwort auch dini_Get(file[],key[])
hin.
Hoffe konnte helfen//edit enum übersehen geschlecht hat kein string
-
Hallo,
ich habe das problem das mein selfmade tacho nicht erscheint...hier die ganzen sachen die mit tacho zu tun haben
public Tacho(playerid)
{
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER || GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
{
new str[128],a = GetPlayerVehicleID(playerid);
if(IstEinAuto(playerid) || IstEinMotorrad(playerid))
{
format(str,sizeof str,"~n~~n~~n~~n~~g~Elektro: ~w~%d ~g~Km/h: ~w~%d ~n~~g~Name: ~w~%s",Elektro[a],GetSpeed(playerid,true),CarName[a-400]);
}
if(IstEinFlugzeugOderHubschrauber(playerid))
{
format(str,sizeof str,"~n~~n~~n~~n~~g~Kerosin: ~w~%d ~g~Km/h: ~w~%d ~n~~g~Name: ~w~%s",Kerosin[a],GetSpeed(playerid,true),CarName[a-400]);
}
if(IstEinBoot(playerid))
{
format(str,sizeof str,"~n~~n~~n~~n~~g~Benzin: ~w~%d ~g~Km/h: ~w~%d ~n~~g~Name: ~w~%s",Benzin[a],GetSpeed(playerid,true),CarName[a-400]);
}
if(IstEinLKW(playerid))
{
format(str,sizeof str,"~n~~n~~n~~n~~g~Diesel: ~w~%d ~g~Km/h: ~w~%d ~n~~g~Name: ~w~%s",Diesel[a],GetSpeed(playerid,true),CarName[a-400]);
}
if(IstEinFahrrad(playerid))
{
format(str,sizeof str,"~n~~n~~n~~n~~g~Km/h: ~w~%d ~g~Name: ~w~%s",GetSpeed(playerid,true),CarName[a-400]);
}
GameTextForPlayer(playerid,str,4000,3);
}
return 1;
}
tacho = SetTimerEx("Tacho",1000,1,"u",playerid); // das ist nur in onplayerentervehicle
DeaktiviereTimer(tacho); // in OnPlayerExitVehicle
danke schonmal im voraus
//edit 1 fehler gesehen mit GameTextForPlayer aber kommt immernoch nicht -
inwiefern willst du das benutzen dann kann ich dir evtl helfen
-
zeig mal bitte den befehl oder halt das wo man das eingeben muss
-
sry aber dann kp versuch doch mal das alles als dialog zu machen aber bei menü?? .... kp sry
-
ah ich habs bei den cases fehlt die 16te bei addmenuitem fehlt halt wenn du zurück machst das das menü dann weg ist weißt
//edit text erweitert
-
////////////////////////sscanf//////////////////////////////////////////////////
/*----------------------------------------------------------------------------*-
Function:
sscanf
Params:
string[] - String to extract parameters from.
format[] - Parameter types to get.{
Float,_
}
:... - Data return variables.
Return:
0 - Successful, not 0 - fail.
Notes:
A fail is either insufficient variables to store the data or insufficient
data for the format string - excess data is disgarded.A string in the middle of the input data is extracted as a single word, a
string at the end of the data collects all remaining text.The format codes are:
c - A character.
d, i - An integer.
h, x - A hex number (e.g. a colour).
f - A float.
s - A string.
z - An optional string.
pX - An additional delimiter where X is another character.
'' - Encloses a litteral string to locate.
u - User, takes a name, part of a name or an id and returns the id if they're connected.Now has IsNumeric integrated into the code.
Added additional delimiters in the form of all whitespace and an
optioanlly specified one in the format string.
-*----------------------------------------------------------------------------*/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;
}
einfach ganz untern oder so im script reinkopieren man kann garnichts falsch machen
//edit text vergessen -
du hast dich glaube ich in der reihenfolge der addmenuitem vertan....
du musst unterAddMenuItem(JOB, 0, "ZeitungsJunge");
noch ein AddMenuItem(JOB,0,"Trucker");
machen weil sonst kommt es aus der reihenfolge (ps bin net so doll mit menus vertraut mach lieber dialog is übersichtlicher xD(finde ich)) -
ich hab ma ne frage am rande... hast du den job trucker denn drin? weil er kommt nicht im addmenuitem
//edit sry verlesen
-
auch aber wie rufst du das menü auf?
machste da net nen befehl für oder wie machste das? -
schick ma befehl mit dem du das menü aufrufst
-
Zitat
stock Register(playerid,key[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format[Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
dine_Create(Spielerdatei);
dine_Set(Spielerdatei,"Passwort",key);
SendClientMessage(playerid,BLAU,"Erfolgreich registriert.";
return 1;
}format[Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name); // <- anfang eckigeklammer weg also so
format(Spielerdatei,sizeof Spielerdatei),"/Accounts/%s.txt",name);
//edit als quelltext gemacht -
dialog_login ist eine #define!
das ist keine funktion, falls du aber eine richtige (z.b. stock) Funktion dafür hast bitte posten...
zu den errors: wahrscheinlich wegen dem #define ! und pls zeilen genau zeigen!
danke -
hier so sieht meiner aus aber ich benutze kein gTeam... aber da es leader im enum gibt ist das eig das selbe...
ocmd:setleader(playerid,params[])
{
new pID, level;
new string[128],fname[40];
new oname[MAX_PLAYER_NAME],aname[MAX_PLAYER_NAME];
GetPlayerName(playerid,aname,sizeof aname);
GetPlayerName(pID,oname,sizeof oname);
if(IsPlayerConnected(playerid))
{
if(Spieler[playerid][Admin] >= 8)
{
if(sscanf(params,"ud",pID,level))
return SendClientMessage(playerid,weiß,"Nutze: /setleader [playerid] [Fraktion]");
if(!IsPlayerConnected(pID))
return SendClientMessage(playerid,rot,"ID nicht vergeben");
if(sscanf(params,"ud",pID,level)) {
SendClientMessage(playerid,weiß,"Nutze: /setleader [playerid] [Fraktion]");
return SendClientMessage(playerid,weiß,"Fraktionen/Gangs: 1 = Cops, 2 = Fahrschule, 3 = Medic, 4 = Grove Street, 5 = Präsident\n6 = LS-Media Society, 7 = Los Santos Taxi Company, 8 = Ordnungsamt, 9 = LSIAT\n10 = Hells Angels"); }
if(level < 1 || level > 10) { return SendClientMessage(playerid,weiß,"Es gibt keine Fraktion/Gangs über 9 oder unter 1"); }
Spieler[pID][Leader] = level;
Spieler[pID][Rank] = 8;
if(level == 1) { SetPlayerSkin(pID,283); Spieler[pID][Skin] = 283; fname = "Polizei"; }
else if(level == 2) { SetPlayerSkin(pID,172); Spieler[pID][Skin] = 172; fname = "Fahrschule"; }
else if(level == 3) { SetPlayerSkin(pID,274); Spieler[pID][Skin] = 274; fname = "Medic"; }
else if(level == 4) { SetPlayerSkin(pID,269); Spieler[pID][Skin] = 269; fname = "Grove Street"; }
else if(level == 5) { SetPlayerSkin(pID,147); Spieler[pID][Skin] = 147; fname = "Präsidentenamt"; }
else if(level == 6) { SetPlayerSkin(pID,295); Spieler[pID][Skin] = 295; fname = "Los Santos Media Society"; }
else if(level == 7) { SetPlayerSkin(pID,255); Spieler[pID][Skin] = 255; fname = "Los Santos Taxi Company"; }
else if(level == 8) { SetPlayerSkin(pID,275); Spieler[pID][Skin] = 275; fname = "Ordnungsamt"; }
else if(level == 9) { SetPlayerSkin(pID,187); Spieler[pID][Skin] = 187; fname = "LSIAT"; }
else if(level == 10) { SetPlayerSkin(pID,100); Spieler[pID][Skin] = 100; fname = "Hells Angels"; }
format(string,sizeof string,"Du hast %s zum Leader der Fraktion %d [%s] gemacht.",oname,level,fname);
SendClientMessage(playerid,weiß,string);
format(string,sizeof string,"Admin %s hat dich zum Leader der Fraktion %d [%s] gemacht.",aname,level,fname);
SendClientMessage(pID,weiß,string);
}
else { return SendClientMessage(playerid,rot,"Du bist nicht befugt diesen Befehl zu benutzen!"); }
}
return 1;
}so muss das ca aufgebaut sein
hoffe ich konnte helfen