Ein = reicht aus.
Was mir allerdings aufgefallen ist:
if(pInfo[playerid][aFehler] > 7)
else if(pInfo[playerid][aFehler] > 7)
Ein = reicht aus.
Was mir allerdings aufgefallen ist:
if(pInfo[playerid][aFehler] > 7)
else if(pInfo[playerid][aFehler] > 7)
Der MySQL-Befehl wäre dazu exemplarisch SELECT `IP` FROM `Accounts` WHERE `id` = 'i'.
Du bräuchtest dazu natürlich noch eine Schleife, die alle Accounts aufruft.
Du musst die IP deiner Spieler in der Datenbank speichern. Will sich nun ein neuer Spieler registrieren, gleichst du seine IP mit allen IPs in der Datenbank (per Schleife) ab.
Du musst playerid in i ändern. Außerdem fehlt bei getPlayerSpeed wahrscheinlich ein Parameter (ebenfalls i).
Außerdem wird pInfo[playerid][aFahrstunde] =+1; zu pInfo[i][aFahrstunde] += 1; und den definierten string brauchst du ebenfalls nicht mehr.
Im Prinzip müsste das so klappen.
Irgendwo dürftest du die Funktion [wiki]TextDrawSetString[/wiki] finden, die die aktuelle Geschwindigkeit einträgt.
Dabei findest du auch die Berechnung der Stundenkilometer.
Du musst mit der Zahl arbeiten, die der Tacho als Geschwindigkeit ausgibt.
Nein, das musst du mit einem Timer regeln. Dann kannst du z. B. alle 5 Sekunden einen Fehlerpunkt dafür vergeben.
Die Geschwindigkeit kannst du mit [wiki]GetVehicleVelocity[/wiki] auslesen. Dabei kannst du dich an der Berechnung im Tacho orientieren.
Den Schaden am Auto kannst du mit [wiki]GetVehicleHealth[/wiki] auslesen.
Wenn der Spieler also zu schnell ist, kannst du ihm per Variable einen Fehlerpunkt geben.
Außerdem kannst du am Prüfungsende nachgucken, ob der Spieler zu viel Schaden am Auto verursacht hat.
Die Wahrscheinlichkeit, dass dir jemand helfen kann, wäre höher, wenn du uns das Video zeigst.
Meinst du ich soll noch zwei Zeilen anlegen also bOpenHour und bCloseHour?
Ja, das wäre wohl die einfachste Methode.
Wie soll ich die Zeit da dann eintragen also z.b wenn ein Geschäft um 11:30 öffnet einfach 11:30?
Nein, du kannst nur die Stunde eintragen (z. B. 11). Wenn du es minutengenau regeln willst, brauchst du zwei weitere Variablen (z. B. bOpenMinute & bCloseMinute).
new hour, minute, second;
gettime(hour, minute, second);
if(bInfo[i][bOpenHour] <= hour && bInfo[i][bCloseHour] > hour)
{
Laden hat geöffnet ...
} else SendClientMessage(playerid, -1, "Du kommst hier nicht rein.");
Da bringt dir aber ein string nicht viel. Du musst die Öffnungszeiten irgendwie als Zahl definieren, um sie mit gettime vergleichen zu können.
Du kannst die Öffnungszeiten aber auch ganz einfach in der Datenbank speichern.
Dort brauchst du dann jeweils eine Spalte für die Öffnungs- und Schließstunde (und ggf. Minute).
Dann kannst du es entsprechend auslesen und via [wiki]gettime[/wiki] mit der aktuellen Zeit vergleichen.
Hab es grad getestet, bei mir funktioniert es wunderbar.
Du musst nur das Zeichen • (erzeugbar mit ALT + Num7) an die entspr. Stelle in deinem Script kopieren. Fertig.
Die aktuelle Uhrzeit kannst du mit [wiki]gettime[/wiki] abfragen.
Im Zweifel kannst du noch ein [wiki]IsPlayerConnected[/wiki] bei killerid bzw. issuerid einfügen.
Wird BizLaden vor den 3DTextLabels aufgerufen?
Probier doch einfach beide aus und verwende den, mit dem du besser klar kommst.