Moin!
Ist es mir irgendwie möglich ein @ in einem Textdraw anzeigen zu lassen?
MfG
https://forum.sa-mp.com/showthread.php?t=113254
Probier mal das
Moin!
Ist es mir irgendwie möglich ein @ in einem Textdraw anzeigen zu lassen?
MfG
https://forum.sa-mp.com/showthread.php?t=113254
Probier mal das
in keiner der Fonts befindet sich ein @ habe es damals selbst mit einem "J" und "C" gebastelt aber sah shit aus ansonsten guck mal hier habe es nicht verstanden vlt checkst du es.
https://forum.sa-mp.com/showthread.php?t=113254
Probier mal das
in keiner der Fonts befindet sich ein @ habe es damals selbst mit einem "J" und "C" gebastelt aber sah shit aus ansonsten guck mal hier habe es nicht verstanden vlt checkst du es.
Danke, so funktioniert es leider auch net. Wie es in der Anleitung steht hab ich schon getestet, geht nicht.
aber werden die Objecte slots trotzdem genutzt wenn man in der umgebung ist?
Die Slots werden nur verbraucht, wenn die Objekte dem Spieler angezeigt werden.
Befindet er sich also nicht in der Welt der Objekte, dann nicht ![]()
[debug] Run time error 4: "Array index out of bounds"
[debug] Attempted to read/write array element at negative index -400
[debug] AMX backtrace:
[debug] #0 000ebc78 in public ocmd_cars (0, 54676248) in GNE.amx
[debug] #1 native CallLocalFunction () in samp-server.exe
[debug] #2 00001590 in public OnPlayerCommandText (0, 54676224) in ZSH.amx
ocmd:cars(playerid)
{
new spawned = 0, string[528] = "Nummer\tFahrzeug\tDetails\tFahrzeug-ID";
if(!IsLoggedIn(playerid))return 1;
strdel(DialogString, 0, sizeof(DialogString));
if(Spieler[playerid][pRank] < RANG_COLEADER)return SendClientMessage(playerid, COLOR_WHITE, ERROR_FRAKTION);
for(new fV;fV<MAX_FVEHS;fV++)
{
if(fVehicle[fV][vehFraktion] == Spieler[playerid][pFraktion])
{
if(fVehicle[fV][vehAbgeschleppt] == 0)
{
format(string,sizeof(string),"{FFFFFF}%s\n%s\t%s\t-\t{FFFFFF}%d", string, fVehicle[fV][vehNumberPlate], VehicleName[GetVehicleModel(fVehicle[fV][vehID])-400], fVehicle[fV][vehID]);
}
else
{
format(string,sizeof(string),"{FFFFFF}%s\n%s\t%s\t{AA3333}Verwahrstelle\t{FFFFFF}%d", string, fVehicle[fV][vehNumberPlate], VehicleName[GetVehicleModel(fVehicle[fV][vehID])-400], fVehicle[fV][vehID]);
}
strcat(DialogString, string);
spawned++;
}
}
if(spawned == 0)return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Keine Fraktionsfahrzeuge vorhanden!");
ShowPlayerDialog(playerid, DIALOG_FVEHICLELIST, DIALOG_STYLE_TABLIST_HEADERS, "Fraktions Fahrzeuge", string, "Auswählen","Schließen");
return 1;
}
Alles anzeigen
Wen ich das Fahrzeug nicht abgeschleppt habe öffnet sich der Dialog... Wen ich eins Abgeschleppt habe Öffnet sich der Dialog nicht mehr... Fehler vom Log ist oben zusehn..
Man rechnet die Model-ID -400. Aber nicht die vehID
Zeile 9 mal so schreiben:
//Edit:
Man rechnet die Model-ID -400. Aber nicht die vehID
Genau das tut er ![]()
Allerdings ist die vehID manchmal 0, somit ist die modelid 0, somit versucht er auf den index -400 zuzugreifen ![]()
Allerdings ist die vehID manchmal 0, somit ist die modelid 0, somit versucht er auf den index -400 zuzugreifen
Sorry.
Auf dem Handy nicht ersichtlich durch die kleine Code-Darstellung.
Alles anzeigenZeile 9 mal so schreiben:
//Edit:
Genau das tut er
Allerdings ist die vehID manchmal 0, somit ist die modelid 0, somit versucht er auf den index -400 zuzugreifen
Der Fehler bleibt gleich ich blicke da nicht ganz durch ![]()
Der Fehler bleibt gleich ich blicke da nicht ganz durch
Wut...und wenn du es so machst?
for(new fV,m;fV<MAX_FVEHS;fV++)
{
if(fVehicle[fV][vehFraktion] == Spieler[playerid][pFraktion])
{
m = GetVehicleModel(fVehicle[fV][vehID])-400;
if(m==-400) continue;
if(fVehicle[fV][vehAbgeschleppt] == 0)
{
format(string,sizeof(string),"{FFFFFF}%s\n%s\t%s\t-\t{FFFFFF}%d", string, fVehicle[fV][vehNumberPlate], VehicleName[m], fVehicle[fV][vehID]);
}
else
{
format(string,sizeof(string),"{FFFFFF}%s\n%s\t%s\t{AA3333}Verwahrstelle\t{FFFFFF}%d", string, fVehicle[fV][vehNumberPlate], VehicleName[m], fVehicle[fV][vehID]);
}
strcat(DialogString, string);
spawned++;
}
}
Alles anzeigen
Das Funktioniert, nur die frage ist jetzt die anderen Fahrzeuge die abgeschleppt wurden werden nun nicht mehr angezeigt in der Liste..
die abgeschleppt wurden werden nun nicht mehr angezeigt in der Liste
Die Fahrzeuge die abgeschleppt werden...sind die denn noch da oder werden die destroyed?
Die werden destroyed:
ocmd:opark(playerid, params[])
{
new Geld;
new vehicleid = GetVehicleTrailer(GetPlayerVehicleID(playerid));
if(Spieler[playerid][pFraktion] != 6)return SendClientMessage(playerid, COLOR_WHITE, ERROR_FRAKTION);
if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 525)return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Du bist in keinem Tow Truck!");
if(sscanf(params, "d", Geld))return SendClientMessage(playerid, COLOR_WHITE, "{3592D7}* Benutze {00CC00}/opark [Kaution]");
if(vehicleid == INVALID_VEHICLE_ID)return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Du hast kein Fahrzeug am Hacken.");
if(IsPlayerInRangeOfPoint(playerid, 10.0, 2259.1782, 2037.8052, 10.6974)) {
if(!(IsAFraktionsVeh(vehicleid) == INVALID_VEHICLE_ID)) {
if(IsValidVehicle(vehicleid)) {
new fV = IsAFraktionsVeh(vehicleid), VehicleID, string[128];
VehicleID = GetPlayerVehicleID(playerid);
new occupiedCarID = GetVehicleTrailer(VehicleID);
fVehicle[fV][vehAbgeschleppt] = 1;
format(fVehicle[fV][vehAbgeschlepptVon], MAX_PLAYER_NAME, "%s", GetName(playerid));
fVehicle[fV][vehKaution] = Geld;
DestroyVehicle(occupiedCarID);
format(string, sizeof(string), "{F3FF02}Du hast den %s erfolgreich abgeschleppt und erhältst am nächsten Payday 3000$. Kaution: %d$", VehicleName[fVehicle[fV][modelid]-400], Geld);
SendClientMessage(playerid, COLOR_WHITE, string);
Spieler[playerid][pJobMoney] += 3000;
Frak[6][frakKasse] = Geld;
return 1;
}
}
for(new slot = 0;slot<MAX_PLAYER_VEHICLES;slot++)
{
for(new i=0;i<GetMaxPlayers();i++)
{
if(IsValidVehicle(PrivateVehicle[i][slot][vehID]))
{
if(vehicleid == PrivateVehicle[i][slot][vehID])
{
new VehicleID, string[128];
VehicleID = GetPlayerVehicleID(playerid);
new occupiedCarID = GetVehicleTrailer(VehicleID);
PrivateVehicle[playerid][slot][vehAbgeschleppt] = 1;
format(PrivateVehicle[playerid][slot][vehAbgeschlepptVon], MAX_PLAYER_NAME, "%s", GetName(playerid));
PrivateVehicle[playerid][slot][vehKaution] = Geld;
DestroyVehicle(occupiedCarID);
format(string, sizeof(string), "{F3FF02}Du hast den %s erfolgreich abgeschleppt und erhältst am nächsten Payday 3000$. Kaution: %d$", VehicleName[PrivateVehicle[playerid][slot][modelid]-400], Geld);
SendClientMessage(playerid, COLOR_WHITE, string);
Spieler[playerid][pJobMoney] += 3000;
Frak[6][frakKasse] = Geld;
return 1;
}
}
}
}
}
return 1;
}
Alles anzeigen
Das dachte ich mir..deshalb funktioniert GetvehicleModel nicht, da das Auto ja nicht existiert.
Du musst die Modelid zwischenspeichern und kannst es dann anzeigen (die vehicleid ist natürlich 0, da ein zerstörtes Auto keine vehicleID hat).
Das was gespeichert wird wen ich jetzt z.b die Fahezeug ID 560 erstelle speichert die dauerhaft.
Jetzt ist die frage wie soll ich das zwischenspeichern und dann auslesen?
Gibt doch dutzende Möglichkeiten.
Bspw. sobald er es Abschleppt ein SetPVarInt(playerid,"Zwischenspeicher",modelid);
Du solltest dir auch dringend merken:
FahrzeugID / VehID ist die eindeutige ID des Fahrzeugs auf dem Server.
ModelID ist die ID des Fahrzeugmodels zum Beispiel 560 = Sultan oder 411 = Infernus oder 522 = NRG etc. etc.
format(query, sizeof(query), "INSERT INTO `accounts` (`name`, `password`, `registerdatum`) VALUES ('%s', md5('%s'), '%s')", GetName(playerid), password,datum);
wie bringe ich es von md5, auf salt habe das hier gefunden
new MyHash[64 + 1]; // + 1 to account for the required null terminator
SHA256_PassHash("test", "78sdjs86d2h", MyHash, sizeof MyHash);
printf("Returned hash: %s", MyHash); // Returned hash: CD16A1C8BF5792B48142FF6B67C9CB5B1BDC7260D8D11AFBA6BCDE0933A3C0AF
muss ich dann einfach es so machen
format(query, sizeof(query), "INSERT INTO `accounts` (`name`, `password`, `registerdatum`) VALUES ('%s', SHA256_PassHash('%s'), '%s')", GetName(playerid), password,datum);
oder wie muss es dann aussehen ? danke in vorraus ![]()
oder wie muss es dann aussehen ?
https://forum.sa-mp.com/showthread.php?t=581336
Hier gibts nen ganz nettes Tutorial dazu
Bcrypt habe ich auch gefunden und als tipp bekommen aber wie arbeitet man den da mit dem plugin
und es es aufwendig mit dem einbau so das man fast das ganze login register um dübeln muss ?