Das wäre ja meine Frage
Natürlich haha ![]()
Warum sollte man es denn damit nicht machen können ![]()
Man kann das mit jeder Variable machen... xD
Das wäre ja meine Frage
Natürlich haha ![]()
Warum sollte man es denn damit nicht machen können ![]()
Man kann das mit jeder Variable machen... xD
DeineGeschwindigkeit = GetVehicleSpeed(GetPlayerVehicleID(playerid));
ErlaubteGeschwindigkeit = Blitzer[BlitzerObj][BlitzerGeschwindigkeit] + Others[BlitzerToleranz];
Differenz = DeineGeschwindigkeit - ErlaubteGeschwindigkeit;
Punkte = (Differenz / 6);
if (Punkte >= 4) {
Punkte = 4;
}
Hab mal eine frage,
Wen er sogar 80 km/h zu schnell ist kriegt er trotz allem nur eine Punkt da ich es bei Punkte auf 1 Gesetzt habe.
Wen ich es bei 4 Lasse und er 80 km/h zu schnell fährt kriegt er 8 Punkte?
Mahlzeit,
ich habe gerade ein Führerscheinsystem eingebaut und grundsätzlich funktioniert alles, jedoch stört es mich, dass die Fehlermeldung dreimal angezeigt wird:
https://s15.directupload.net/images/181206/bigqta9r.png
Der Code: Ich habe bei OnPlayerUpdate mit PLAYER_STATE_DRIVER gearbeitet.
//Führerscheinabfrage
if(sInfo[playerid][drivlic]==0)
{
for(new i=0; i<sizeof(autosOhneMotor); i++)
{
if(autosOhneMotor[i]==vModel)
{
continue;
}
else
{
SendClientMessage(playerid,Kaminrot,"Du hat noch keinen Führerschein!");
RemovePlayerFromVehicle(playerid);
}
EDIT: Auch bei Autos ohne Motor (beim BMX beispielweise) werde ich removed und erhalte die Fehlermeldung, woran liegt das?
Setz ein Return rein oder break;
Alles anzeigenMahlzeit,
ich habe gerade ein Führerscheinsystem eingebaut und grundsätzlich funktioniert alles, jedoch stört es mich, dass die Fehlermeldung dreimal angezeigt wird:
https://s15.directupload.net/images/181206/bigqta9r.png
Der Code: Ich habe bei OnPlayerUpdate mit PLAYER_STATE_DRIVER gearbeitet.
//Führerscheinabfrageif(sInfo[playerid][drivlic]==0){for(new i=0; i<sizeof(autosOhneMotor); i++){if(autosOhneMotor[i]==vModel){continue;}else{SendClientMessage(playerid,Kaminrot,"Du hat noch keinen Führerschein!");RemovePlayerFromVehicle(playerid);}
EDIT: Auch bei Autos ohne Motor (beim BMX beispielweise) werde ich removed und erhalte die Fehlermeldung, woran liegt das?
Probier mal
if(sInfo[playerid][drivlic]==0)
{
for(new i=0; i<sizeof(autosOhneMotor); i++)
{
if(autosOhneMotor[i]==vModel)
{
SendClientMessage(playerid,Kaminrot,"Das ist ein Fahrzeug ohne Motor!");
return 1;
}
else
{
SendClientMessage(playerid,Kaminrot,"Du hat noch keinen Führerschein!");
RemovePlayerFromVehicle(playerid);
}
Alles anzeigen
klappt nicht trotzdem danke
Da ist ein Klammerfehler drinnen, das müsste eigentlich so aussehen:
Da ist ein Klammerfehler drinnen, das müsste eigentlich so aussehen:
Vielen Dank das geht jetzt... aber nun ist es so, dass wenn ich auf ein Fahrzeug(welches ich als autoOhneMotor definiert habe also beispielsweise ein bmx) steige, man dieses nicht fahren, da wahrscheinlich die engine auf 0 bleibt...
man dieses nicht fahren, da wahrscheinlich die engine auf 0 bleibt...
Sehr richtig ![]()
Dann schau mal in deinen Engine Befehl, wo SetVehicleParams für den Motor auf ON gesetzt werden und füge das dort ein ![]()
Spieler[playerid][pCarLicenseSperre] = gettime() + (60*60*24*3);
Kurze frage... Wie kann ich ihn am besten die Genaue zahl speichern lassen in der Datenbank und nicht soviele Zahlen?!
Sehr richtig
![]()
Dann schau mal in deinen Engine Befehl, wo SetVehicleParams für den Motor auf ON gesetzt werden und füge das dort ein![]()
Also ich bedanke mich vorerst für deine große Hilfe. Aber ich verstehe nicht genau was du meinst -sorry
Die "Engine" des Fahrrads muss ich auf 1 setzen, habe es gerade probiert und ganz schön verkackt..
EDIT: habe es hinbekommen - vielen Dank ![]()
Wie kann ich ihn am besten die Genaue zahl speichern lassen in der Datenbank und nicht soviele Zahlen?!
He?
Das ist doch nur eine Zahl...halt der Timestamp
1544375073
So sieht die Zahl wohl aus in der Datenbank.
Aber ich denke mal weniger das man daraus ziehen kann das es 3 Stunden kann (Falls man die Zeit mal Verringern muss/kann wie auch immer)
//E: Wie kommt man nur auf Stunden meinte tage ![]()
He?
Das ist doch nur eine Zahl...halt der Timestamp
Er möchte dass bestimmt in dem Format (%H:%M:%S). Oder halt (%d.%m.%y %H:%M:%S)
new date[3], time[3];
gettime(time[0], time[1], time[2]);
getdate(date[0], date[1], date[2]);
printf("Date + Time: %02d-%02d-%04d %02d:%02d:%02d", date[2], date[1], date[0], time[0], time[1], time[2]);
Er möchte dass bestimmt in dem Format (%H:%M:%S). Oder halt (%d.%m.%y %H:%M:%S)
Nein möchte er nicht.
Das ist schon richtig so.
Das ist ja nur eine Zahl die lädst du und kann dann damit rechnen:
Habe es so ausprobiert.
if(gettime() < Spieler[playerid][pFlyLicenseSperre])
{
new string[128];
format(string, sizeof(string), "Flugschein Sperre: {33AA33}Vorhanden (%d Tage, %d Stunden und %d Minuten verbleibend)", ((Spieler[playerid][pFlyLicenseSperre]-gettime())/86400), ((Spieler[playerid][pFlyLicenseSperre]-gettime())/3600), ((Spieler[playerid][pFlyLicenseSperre]-gettime())/60));
SendClientMessage(playerid, COLOR_WHITE, string);
}
else
{
ShowPlayerDialog(playerid, DIALOG_FLUGSCHEIN ,DIALOG_STYLE_MSGBOX,"Lizenz: Flugschein","Der Flugschein wird benötigt, um legal ein Flugzeug oder Helikopter zu fliegen.\n\nKosten: 12000$","Weiter","Schließen");
}
Aber irgednwie gibt er mir an: 2 Tage 71 Stunden irgendwas mit 4k Minuten.
Du musst auch erstmal die Tage bzw. Stunden von der verbleibenden Zeit abziehen um die z.B. Minuten zu bekommen.
Ja habs schon danke @LeonMrBonnie
So müsste es gehen:
new string[128], x = Spieler[playerid][pFlyLicenseSperre]-gettime();
format(string, sizeof(string), "Flugschein Sperre: {33AA33}Vorhanden (%d Tage, %d Stunden, %d Minuten und %d Sekunden verbleibend)", x/86400, (x % 86400) / 3600, (x%3600) / 60, x%60);
SendClientMessage(playerid, COLOR_WHITE, string);