Beitrag von Apokrate ()
Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
Du solltest natürlich auch den Code zeigen, der
Register(playerid,password[])
aufruft.
Möglicherweise füllst du den zweiten Parameter nicht (korrekt).
stock Register(playerid,password[])
{
new Player[64];
if(IsPlayerNPC(playerid)) return 1;
format(Player,sizeof(Player),"/Spieler/%s.cfg",PlayerName(playerid));
printf("Player: %s", Player);
dini_Create(Player);
printf("passwort: %s", password);
dini_Set(Player,"passwort",password);
return 1;
}
Debugge das mal so, und poste dann was geprintet wird.
Ebenso hier:
Register(playerid,inputtext);
zu:
printf("inputtext: %s", inputtext);
Register(playerid,inputtext);
Alles anzeigenstock Where(func[]){
new dir:dHandle = dir_open("./scriptfiles/Accounts/");
new item[40], type, datei[20], readstr[200],count;
while(dir_list(dHandle, item, type))
{
if(type == FM_FILE)
{
format(datei,20,"/Accounts/%s",item);
new File:file = f_open(datei);
while(f_read(file, readstr){
if(strfind(func,readstr,false) != -1) ++count;
}
}
}
dir_close(dHandle);
return count;
}
Die Funktion ist dafür da, bei allen Spielern eine bestimmte Information aus deren Spielerdatei herauszufinden, ohne MySQL..
-> Wie könnte ich das z.B. machen?
format(string,...,"%s",Where("Admin") >= 1); // das mit dem ">=1" & auch halt mit Strings ( Where("Name") > Name ) [iwi sowas]
Kann mir da vlt jemand helfen?
Sowas würde nur indirekt funktionieren mit einem define
#define Where(%0\32;%1\32;%2) Func(%0,"%1","%2")
stock Func(func[],operaotr[],value[])
{
return 1;
}
Verwendung:
printf("%d",Where("Admin" >= 2));
Also das was du machst würde gehen jedoch musst du jeden string in dem du was gefunden hast diesen komplett zerlegen
@|Prototype|: Okay, danke.. Und mit Strings abfragen sollte ja ähnlich sein. . (Denke ich kriegs hin. .)
@|Prototype|: Okay, danke.. Und mit Strings abfragen sollte ja ähnlich sein. . (Denke ich kriegs hin. .)
Ich würde das ganze so machen:
if(strcmp(operator,"==") == 0){
}else if(strcmp(operator,">") == 0){
}else if(strcmp(operator,"<") == 0){
}else if(strcmp(operator,"<=") == 0){
}else if(strcmp(operator,"=>") == 0){
und beim Gleichheitsoperator kannst du ja die strings mit strcmp vergleichen
bei den restlichen Operatoren würde ich den string mit floatstr umkonvertieren, da man
entweder Zahlen oder floats damit vergleicht
Warum bekomme ich hier immer "tag mismatch" Fehler?
Code:
//TestMenu ist so definiert: new TestMenu;
TestMenu = CreateMenu("Header", 2, 200.0, 100.0, 150.0, 150.0);
AddMenuItem(TestMenu, 0, "Test");
AddMenuItem(TestMenu, 0, "Test");
new Menu:TestMenu;
Oh, ja stimmt hat komigerweiße trotzdem ingame funktioniert
[pwn=255]
ocmd:destroyveh(playerid, params[])
{
if(IsPlayerInAnyVehicle(playerid))
{
new vehicleid;
vehicleid= GetPlayerVehicleID(playerid);
DestroyVehicle(vehicleid);
SendClientMessage(playerid, -1, "> Fahrzeug erfolgreich gelöscht.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "> Du bist nicht in einem Fahrzeug.");
}
return 1; // Zeile 268
}
[/pwn]
Loose Indentation in Zeile 268?
ocmd:destroyveh(playerid,params[]){
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,COLOR_RED,"> Du bist nicht in einem Fahrzeug!");
return DestroyVehicle(GetPlayerVehicleID(playerid)),SendClientMessage(playerid,-1,"> Fahrzeug erfolgreich gelöscht!");
}
Hab eine Frage bzgl. "SetPlayerCameraPos" und "SetPlayerCameraLookAt"
Was muss ich machen, das genau die Position genommen wird wo ich hingucke.
Wenn ich z.b. schräg runter gucke /save mache, dann die Postitionen bei "SetPlayerCameraPos" und "SetPlayerCameraLookAt" reinschreibe, dann wird die Position nicht schräg runter sondern geradeaus angezeigt, und die Camera wird weiter nach rechts gedreht ...
Was muss ich machen, damit es richtig ist?
MfG
[BlaZZeR]BirD:
Die Position die du bei /save heraus bekommst ist die des Spielers, nicht die der Camera
Um die CameraPostion herauszufinden brauchst du GetPlayerCameraPos
Und dazu addierst du GetPlayerCameraFrontVector.
Dann hast du dein SetPlayerCameraLookAt
Hat funktioniert, besten dank. (Nun weiß ich endlich mal wie man die Funktionen richtig benutzt :D)
Mal ne kurze frage: Wie kann ich einen Spieler zur Skinauswahl "Schicken" ? Also dass er das Tutorial durchmacht, und dann kann er sich einen Skin auswählen
Kennt jemand eine Funktion, mit der man Charakter aus einem String auslesen kann? Nehmen wir an, es lautet ein String: "Haus 1 (ID: 2)" Welche Möglichkeit gibt es, die ID auszulesen, ohne die bestimmte Stelle des Tokens anzugeben?
Mal ne kurze frage: Wie kann ich einen Spieler zur Skinauswahl "Schicken" ? Also dass er das Tutorial durchmacht, und dann kann er sich einen Skin auswählen
http://wiki.sa-mp.com/wiki/ForceClassSelection
[GSR]PreJay: Nutze strfind. Suche die Position von "ID:" und dann von ")" ab der Position von ID. Dann löschst du mit strdel hinten den Teil weg (Wert von ")" bis Ende) und dann von 0 bis Wert von "ID:" + 3.
Dann hast du die Nummer übrig im String, dann nur noch strval von dem string und du hast die Nummer als Integer.
Ich habe immer noch Probleme mit der Textdrawbox, ich habe alles richtig erstellt jedoch sieht das so aus :
http://img5.fotos-hochladen.net/uploads/ingameou5ak43gxn.png
Warum sieht das nicht so aus wie ich das gemacht habe :
http://www.fotos-hochladen.net/uploads/samp001zvcf4rjhoa.png
Ich habe auch bereits ein Thread erstellt :
Verbindungs Box failt.