Willkommen auf Breadfish
Beiträge von German_ScripterHD
-
-
Okay, dann müssen wir mal schauen warum das ganze Crasht bzw. Wo es den Crash auslöst.
C
Alles anzeigenif(strcmp(cmdtext,"/tresorbombe",true) == 0) { print("Step: 0 - Start"); if(!IsPlayerInRangeOfPoint(playerid, 15.0, -1991.38464, -1991.38464, 34.85460))return SendClientMessage(playerid,rot,"Du bist nicht in der Nähe"); print("Step: 1"); new Float:x, Float:y, Float:z; print("Step: 2"); GetPlayerPos(playerid, x, y, z); print("Step: 3"); CreateExplosion(x, y, z, 12, 10.0); print("Step: 4"); DestroyObject(tresordoor); print("Step: 5 - Ende"); return 1; }
- Code ins Script einfügen
- Server starten & Befehl entippen
- Serverlog posten
MfG
-
Bitte den Code einmal Printen lassen und danach Serverlog senden
C
Alles anzeigenstock mysql_CheckPasswort(Name[],Passwort[]) { printf("Step: 0 - Name: %s / Passwort: %s",Name,Passwort); new query[256]; print("Step: 1"); if(strlen(Name) < 1 || strlen(Passwort) < 1) return 0; print("Step: 2"); mysql_escape_string(Name,Name,dbhandle,126); print("Step: 3"); mysql_escape_string(Passwort,Passwort,dbhandle,126); print("Step: 4"); format(query,sizeof(query),"SELECT * FROM Accounts WHERE Username='%s' AND Passwort=SHA1('%s')",Name,Passwort); print("Step: 5"); mysql_query(dbhandle,query,true); print("Step: 6"); printf("%d",cache_num_rows()); print("Step: 7"); if(cache_num_rows() == 0) { print("Step: 8 - return 0"); return 0; } else { print("Step: 9 - retrun 1"); return 1; } }
MfG
-
Crasht der Server bei dem Code immer noch?
-
Ich denke der Crasht aus folgendem Grund:
Die Funktion CreateExplusion weis in deinem Fall nicht wo sie explodieren soll, da du x, y, z ja keinen Wert zuweist.
Sprich du musst der Funktion einen Wert zuweisen, damit die Funktion weis wo die Explosion erstellt werden soll.
Testbefehl:Cif(strcmp(cmdtext,"/bombe",true) == 0) { new Float:Pos[3]; GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]); CreateExplosion(Pos[0],Pos[1],Pos[2], 6, 10.0); return 1; }
MfG
-
Code für die Passwortüberprüfung?
-
Wisst ihr vlt noch wie die Function heißt um ein Object zum explodieren bringen zu können?
Du könntest die Funktion [wiki]CreateExplosion[/wiki] nutzen und dann das Objekt einfach mit [wiki]DestroyObject[/wiki] zerstören.
MfG
//Edit: Schreibfehler behoben.
-
Lass dir das ganze mal printen:
C
Alles anzeigenstock mysql_CheckAccountName(Name[]) { print("Step: 1"); new query[128]; print("Step: 2"); mysql_escape_string(Name,Name,dbhandle,126); print("Step: 3"); format(query, sizeof(query), "SELECT id FROM accounts WHERE Username = '%s'", Name); print("Step: 4"); mysql_function_query(dbhandle,query,true,"",""); print("Step: 5"); new num_fields,num_rows; print("Step: 6"); cache_get_data(num_rows,num_fields,dbhandle); print("Step: 7"); if(num_rows==1){ print("Step: 8 - return 1"); return 1; } print("Step: 9 - return 0"); return 0; }
MfG
-
Die Strings kannst du mit der Funktion [wiki]Strcat[/wiki] zusammenfügen.
MfG
-
Versuch es mal so:
C
Alles anzeigencase DIALOG_FRAKTIONSHELP_3: { new tmp; new string[128]; for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(tmp == listitem) { new PlayerName[MAX_PLAYER_NAME]; GetPlayerName(i, PlayerName, MAX_PLAYER_NAME); format(string, sizeof string,"Gesuchter: %s\nWanteds: %s\n", PlayerName,SpielerInfo[i][pWanteds]); format(string, sizeof string,"Wanteds vergeben\nWanteds clearen"); ShowPlayerDialog(playerid, DIALOG_FRAKTIONSHELP_4, DIALOG_STYLE_LIST, "Wanteddatenbank: Akte",string, "Weiter", "Zurück"); return 1; } else tmp++; } } }
MfG -
So sollte es klappen:
C
Alles anzeigencase DIALOG_FRAKTIONSHELP_3: { if(!response)return cmd_fraktion(playerid); new tmp; for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(tmp == listitem) { format(string, sizeof(string),"%sGesuchter: %s\nWanteds: %s\n\n", string, GetPlayerName(i), Spieler[i][pWanteds]); format(string, sizeof(string),"Wanteds vergeben\nWanteds clearen"); ShowPlayerDialog(playerid, DIALOG_FRAKTIONSHELP_4, DIALOG_STYLE_LIST, "Wanteddatenbank: Akte",string, "Weiter", "Zurück"); return 1; } else tmp++; } } }
MfG
-
Du hast es wahrscheinlich unter OnGameModeInit aber das muss unter OnPlayerConnect
Genau. Wenn du das TextDraw jetzt noch dem Spieler anzeigen lassen möchtest, kannst du das so machen:
MfG
//gesendet via. Smartphone.
-
-
Wenn du den Actor nur hinstellen möchtest, brauchst du kein "new" machen, nur wenn du dem Actor z.B eine Animation zuweisen möchtest.
MfG
-
Habe dir mal eben eins gebastelt
C
Alles anzeigen//© Copyright by German_ScripterHD new PlayerText:TDtaxameter[MAX_PLAYERS][6]; TDtaxameter[playerid][0] = CreatePlayerTextDraw(playerid,371.000000, 342.000000, "_"); PlayerTextDrawBackgroundColor(playerid,TDtaxameter[playerid][0], 255); PlayerTextDrawFont(playerid,TDtaxameter[playerid][0], 1); PlayerTextDrawLetterSize(playerid,TDtaxameter[playerid][0], 0.500000, 8.000000); PlayerTextDrawColor(playerid,TDtaxameter[playerid][0], -1); PlayerTextDrawSetOutline(playerid,TDtaxameter[playerid][0], 0); PlayerTextDrawSetProportional(playerid,TDtaxameter[playerid][0], 1); PlayerTextDrawSetShadow(playerid,TDtaxameter[playerid][0], 1); PlayerTextDrawUseBox(playerid,TDtaxameter[playerid][0], 1); PlayerTextDrawBoxColor(playerid,TDtaxameter[playerid][0], 135); PlayerTextDrawTextSize(playerid,TDtaxameter[playerid][0], 250.000000, 1.000000); PlayerTextDrawSetSelectable(playerid,TDtaxameter[playerid][0], 0); TDtaxameter[playerid][1] = CreatePlayerTextDraw(playerid,272.000000, 342.000000, "~y~Taxameter"); PlayerTextDrawBackgroundColor(playerid,TDtaxameter[playerid][1], 255); PlayerTextDrawFont(playerid,TDtaxameter[playerid][1], 0); PlayerTextDrawLetterSize(playerid,TDtaxameter[playerid][1], 0.600000, 2.000000); PlayerTextDrawColor(playerid,TDtaxameter[playerid][1], -1); PlayerTextDrawSetOutline(playerid,TDtaxameter[playerid][1], 0); PlayerTextDrawSetProportional(playerid,TDtaxameter[playerid][1], 1); PlayerTextDrawSetShadow(playerid,TDtaxameter[playerid][1], 1); PlayerTextDrawSetSelectable(playerid,TDtaxameter[playerid][1], 0); TDtaxameter[playerid][2] = CreatePlayerTextDraw(playerid,257.000000, 368.000000, "Fahrer:"); PlayerTextDrawBackgroundColor(playerid,TDtaxameter[playerid][2], 255); PlayerTextDrawFont(playerid,TDtaxameter[playerid][2], 1); PlayerTextDrawLetterSize(playerid,TDtaxameter[playerid][2], 0.300000, 1.000000); PlayerTextDrawColor(playerid,TDtaxameter[playerid][2], -1); PlayerTextDrawSetOutline(playerid,TDtaxameter[playerid][2], 0); PlayerTextDrawSetProportional(playerid,TDtaxameter[playerid][2], 1); PlayerTextDrawSetShadow(playerid,TDtaxameter[playerid][2], 1); PlayerTextDrawSetSelectable(playerid,TDtaxameter[playerid][2], 0); TDtaxameter[playerid][3] = CreatePlayerTextDraw(playerid,257.000000, 379.000000, "Preis pro KM:"); PlayerTextDrawBackgroundColor(playerid,TDtaxameter[playerid][3], 255); PlayerTextDrawFont(playerid,TDtaxameter[playerid][3], 1); PlayerTextDrawLetterSize(playerid,TDtaxameter[playerid][3], 0.300000, 1.000000); PlayerTextDrawColor(playerid,TDtaxameter[playerid][3], -1); PlayerTextDrawSetOutline(playerid,TDtaxameter[playerid][3], 0); PlayerTextDrawSetProportional(playerid,TDtaxameter[playerid][3], 1); PlayerTextDrawSetShadow(playerid,TDtaxameter[playerid][3], 1); PlayerTextDrawSetSelectable(playerid,TDtaxameter[playerid][3], 0); TDtaxameter[playerid][4] = CreatePlayerTextDraw(playerid,257.000000, 390.000000, "Strecke: 0.9 KM"); PlayerTextDrawBackgroundColor(playerid,TDtaxameter[playerid][4], 255); PlayerTextDrawFont(playerid,TDtaxameter[playerid][4], 1); PlayerTextDrawLetterSize(playerid,TDtaxameter[playerid][4], 0.300000, 1.000000); PlayerTextDrawColor(playerid,TDtaxameter[playerid][4], -1); PlayerTextDrawSetOutline(playerid,TDtaxameter[playerid][4], 0); PlayerTextDrawSetProportional(playerid,TDtaxameter[playerid][4], 1); PlayerTextDrawSetShadow(playerid,TDtaxameter[playerid][4], 1); PlayerTextDrawSetSelectable(playerid,TDtaxameter[playerid][4], 0); TDtaxameter[playerid][5] = CreatePlayerTextDraw(playerid,257.000000, 401.000000, "Preis:"); PlayerTextDrawBackgroundColor(playerid,TDtaxameter[playerid][5], 255); PlayerTextDrawFont(playerid,TDtaxameter[playerid][5], 1); PlayerTextDrawLetterSize(playerid,TDtaxameter[playerid][5], 0.300000, 1.000000); PlayerTextDrawColor(playerid,TDtaxameter[playerid][5], -1); PlayerTextDrawSetOutline(playerid,TDtaxameter[playerid][5], 0); PlayerTextDrawSetProportional(playerid,TDtaxameter[playerid][5], 1); PlayerTextDrawSetShadow(playerid,TDtaxameter[playerid][5], 1); PlayerTextDrawSetSelectable(playerid,TDtaxameter[playerid][5], 0);
MfG
-
die meisten datenbanken werden auch unter linux beim server start nicht gefunden :c
So ein ähnliches Problem hatte ich auch mal.
Enthalten die Datenbanknamen Großbuchstaben?Wenn ja, ist das der Fehler.
Unter Windows klappt alles, nur unter Linux nicht, also einfach den Datenbanknamen klein schreibenMfG
-
Erstellst du die Objekte im Script mit CreateObject?
Wenn ja, kann es sein das du das Limit von 1000 überschreitest und dadurch manche Objekte fehlen.
MfG
-
Ich finde die Map spitze, eventuell könnten in der Mine noch ein paar Details wie Schaufeln und Arbeiter sein.
Gefällt mir sehr!MfG
-
Okay, und wie kann ich die Streamdistanz der Bodenobjekte erhöhen?
-
Ich suche nach einer Function wie z.B DynamicObjectsStreamIn.
Leider finde ich auch im Internet nichts.