Beiträge von Jeffry

    Das müsste an sich schon funktionieren. Bist du sicher, dass du auch beides mal die richtige playerid genommen hast?
    Wäre gut den tatsächlichen Code mal zu sehen.


    Ansonsten kannst du es alternativ auch so schreiben:
    Unter den Includes:
    new gCheckpoint[MAX_PLAYERS];


    Im Befehl:
    gCheckpoint[playerid] = 1;


    Bei OnPlayerEnterCheckpoint:
    if(gCheckpoint[playerid] == 1)
    {
    //Code...
    }

    So dürfte es klappen:
    if(strcmp(strget(cmdtext,0),"/einsperren", true) == 0)
    {
    if(IsACop(playerid))
    {
    new price = WantedLevel[playerid] * 50;
    if(OnDuty[playerid] == 1)
    {
    if(!strlen(strget(cmdtext,1)))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /einsperren [Playerid/Name]");
    return 1;
    }
    new playa = strval(strget(cmdtext,1));
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    if(PlayerToPoint(30.0, playa, x, y, z))
    {
    if(IsPlayerConnected(playa))
    {
    if(playa == playerid)
    {
    SendClientMessage(playerid, COLOR_RED, "Du kanst dich nicht selber einsperren");
    }
    else
    {
    if(WantedLevel[giveplayerid] > 0)
    {
    GetPlayerName(playa, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du hast %s eingesperrt.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTRED, string);
    P_GivePlayerMoney(playerid, price);
    format(string, sizeof(string), "* Du wurdest von %s in den Knast gesteckt.", sendername);
    SendClientMessage(playa, COLOR_LIGHTRED, string);
    P_GivePlayerMoney(playa, -price);
    ResetPlayerWeapons(playa);
    WantedPoints[giveplayerid] = 0;
    WantedLevel[giveplayerid] = 0;
    SetPlayerWantedLevel(giveplayerid,0);
    pDaten[playa][Jailed] = 1;
    pDaten[playerid][Jailtime] = (WantedLevel[playerid] * 300);
    SetPlayerInterior(playa, 3);
    if(LSPDZellen == 0)//zelle1
    {
    SetPlayerPos(playa,198.58247375,162.02970886,1002.67919922);
    LSPDZellen += 1;
    }
    if(LSPDZellen == 1)//zelle4
    {
    SetPlayerPos(playa,197.29866028,175.16213989,1002.67266846);
    LSPDZellen += 1;
    }
    if(LSPDZellen == 2)//zelle5
    {
    SetPlayerPos(playa,193.21949768,175.11158752,1002.67266846);
    LSPDZellen = 0;
    }
    format(string, sizeof(string), "Du wurdest für %d Minuten eingesperrt. Kaution: Nein", pDaten[playerid][Jailtime]/60);
    SendClientMessage(playa, COLOR_LIGHTBLUE, string);
    unjailtimer = SetTimer("SetPlayerUnjail", UNJAIL, 1);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Spieler hat kein Wanted!");
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Spieler ist nicht online!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Spieler ist nicht in deine Nähe!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist nicht im Dienst(/duty)");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du darfst diesen Befehl nicht benutzen!");
    }
    return 1;
    }

    Willkommen auf Breadfish!


    format(query,sizeof(query),"SELECT * FROM `gutscheine` WHERE code = '%s'",inputtext);
    zu:
    new query[128];
    format(query,sizeof(query),"SELECT * FROM `gutscheine` WHERE code = '%s'",inputtext);


    Zwecks den Handle-Errors:
    Du musst oben unter den Includes
    new Handle;
    eintragen, oder anstatt Handle das eintragen, was du bei mysql_connect stehen hast.

    @xMichael: Danke!


    N0SKILL: Danke! Ja, das weiß ich, aber da dort entweder die Links tot sind, oder sie keine Pickups konvertieren oder das englische Forum mal wieder down ist, verlasse ich mich da lieber nicht drauf.


    Was passiert, wenn man zwei .map Dateien in dem Konverter-Ordner hat?
    Werden beide in ein einzelnes Textdokument geschrieben oder alle .map-Dateien, die in dem Ordner sind, in verschiedene Textdokumente geschrieben? :hm:


    Danke!
    Es wird für jede .map Datei eine .txt Datei angelegt, heißt wenn du 5 .map Dateien hast, dann hast du danach auch 5 .txt Dateien.

    [jTool] Offline Map Konverter


    Hallo,


    ich veröffentliche hiermit einen Map Konverter für den Offline-Gebrauch. Die Idee kam mir durch die häufige Ausfallzeit der vorhandenen Online-Konverter. Außerdem haben sämtliche Online-Konverter keine Möglichkeit Pickups zu konvertieren, die mit MTA gesetzt worden sind. Dies ist hiermit ebenfalls möglich.
    Ebenfalls wird hiermit sichergestellt, das eure Maps beim konvertieren nirgends abgefangen werden, da die Konvertierung ausschließlich lokal geschieht.



    Verzichtserklärung:
    Der Code wird veröffentlicht "wie er ist". Es wird dringendst empfohlen vor Benutzung ein Backup der Mapfiles zu machen. Für Schäden jeglicher Art übernehme ich keine Haftung, die Benutzung erfolgt auf eigene Verantwortung.
    Der Code darf jederzeit von jedem verändert werden, solange die Namensnennung nicht aus dem Code entfernt wird.
    Der Code darf nicht unter eigenem Name veröffentlicht werden, weder frei noch kommerziell.



    Vorführung


    Das Tool ist nicht mehr als eine kleine ausführbare Datei bzw. ein Visual Basic Code (.vbs) um es beim Namen zu nennen. Im richtigen Verzeichnis abgelegt und gestartet macht der Code in Sekundenschnelle die Arbeit für die man selbst mehrere Stunden bräuchte.

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.



    Anleitung


    Die folgenden Schritte sollen zeigen wie der Code verwendet werden kann, um die .map Dateien von MTA in einen für PAWN bestimmten Code umzuwandeln.
    Ich weise nochmals darauf hin, vor Benutzung ein Backup der Mapfiles, bzw. der Dateien darin, anzulegen. Der Code wurde nach bestem Wissen und Gewissen getestet, dennoch können unvorhergesehene Ereignisse (z.B. Stromausfall) möglicherweise zu Fehlern führen. Ebenfalls weise ich nochmals darauf hin, dass die Benutzung auf eigene Gefahr geschieht.


    1. Code herunterladen
    Um den Code auf den Rechner zu bekommen gibt es zwei Möglichkeiten:


    • Die erste und einfachste Variante ist der direkte Download. Im Anhang befindet sich ein ZIP-Ordner der die ausführbare Datei enthält.
      1) ZIP Ordner auf den Windows-PC herunterladen
      2) Datei entpacken
    • Die zweite Variante ist die manuelle Erstellung der Datei:
      1) Kopiere folgenden Quellcode:


      2) Erstelle eine leere Textdatei (.txt) und öffne diese mit einem Editor.
      3) Füge den kopierten Code ein.
      4) Speichere die Datei mit "Speichern unter..." als "jMapKonverter.vbs"
      5) Erstelle am besten einen Ordner "Konverter" in den die "jMapKonverter.vbs" gespeichert werden kann.



    2. Code ausführen
    Der Code durchsucht das gesamte Verzeichnis (den gesamten Ordner) in dem die Datei liegt nach .map Dateien. Die zu konvertierenden .map Dateien müssen nun in das Verzeichnis des Konverters gelegt werden.
    1) Kopiere die zu konvertierende .map Datei(en) in den "Konverter" Ordner.
    2) Klicke doppelt auf die Datei "jMapKonverter.vbs" und warte. Je nach Größe der Maps und Prozessorgeschwindigkeit kann der Vorgang einige Sekunden dauern.
    3) Sobald der Prozess zu Ende ist, bekommst Du eine Ergebnismeldung.



    3. Ergebnis ansehen
    In dem Ordner "Konverter" wurde nun eine Textdatei, mit dem Name der .map Datei, erstellt, in der sich der konvertierte Code befindet.
    1) Öffne die Textdatei mit einem Text-Editor.
    2) Nun siehst Du den konvertierten Code, der nun in Deinen Gamemode/Filterscript eingefügt werden kann.
    3) Optional: Wenn Du nicht willst, dass die im Ordner liegende(n) Map(s) jedes mal erneut konvertiert werde(n), entferne die .map Datei(en) wieder aus dem Ordner.





    Kompatibilität


    Die Konvertierung geschieht aus dem .map Format in ein beliebiges, von PAWN lesbares, Format.
    Um Änderungen am Format vorzunehmen müssen lediglich die Ausgabe-Strings verändert werden. Die vorhandenen Platzhalter werden jeweils bei der Konvertierung ersetzt. Im Folgenden ein Beispiel:
    Original:

    Code
    '======================================================================================'
    'Für Änderungen am Ausgabe-Layout die Einstellungen hier vornehmen:                    '
    '======================================================================================'
    objectOutStr = "CreateDynamicObject($model, $x, $y, $z, $rx, $ry, $rz);"               '
    vehicleOutStr = "CreateVehicle($model, $x, $y, $z, $ra, $color1, $color2, -1);"        '
    pickupOutStr = "AddStaticPickup($model, $x, $y, $z);"                                  '
    '======================================================================================'


    Geändert:

    Code
    '======================================================================================'
    'Für Änderungen am Ausgabe-Layout die Einstellungen hier vornehmen:                    '
    '======================================================================================'
    objectOutStr = "CreateObject($model, $x, $y, $z, $rx, $ry, $rz);"                      '
    vehicleOutStr = "AddStaticVehicle($model, $x, $y, $z, $ra, $color1, $color2);"         '
    pickupOutStr = "CreatePickup($model, 2, $x, $y, $z, -1);"                              '
    '======================================================================================'






    Fragen/Probleme/Anregungen/Rückmeldungen


    Bei Fragen und Problemen jeglicher Art bitte ich um die Benutzung der "Antworten" Funktion. Sollte ich binnen 48 Stunden nicht geantwortet haben, kann mir gerne eine Private Nachricht (PN) geschickt werden.
    Für Anregungen betreffend Vorschlägen oder Verbesserungen bin ich jederzeit offen. Ich bitte darum, diese ebenfalls über die "Antworten" Funktion zu posten.


    Über Rückmeldungen würde ich mich freuen.



    Changelog


    • 13.04.2015: [v1.0] Erste Veröffentlichung
    • 22.06.2015: [v1.0] Download-Bilder repariert
    • 08.11.2015: [v1.0] Code-Formatierung an WBB4 angepasst



    Download





    Viel Spaß mit dem Tool, ich hoffe es erspart dem einen oder anderen etwas Zeit.


    Beste Grüße,
    Jeffry 8)

    Deinem Code zufolge ich das nicht nachvollziehbar warum das so ist.
    Du kannst ja beim Laden
    HouseInfo[hcount][hID] = strval(result);
    zu:
    HouseInfo[hcount][hID] = strval(result)-1;
    ändern, passt es dann?

    Gerne! :)
    Ich persönlich würde erst mal das mit dem Motor/Licht machen, denn das brauchst du für das Autohaus System wahrscheinlich auch, dann wäre es ja gut, wenn du es schon hast. Wahrscheinlich ist es auch weniger Arbeit und fällt dir daher leichter. Aber das musst du machen, wie es dir liegt.

    Was ich grade noch gesehen habe, in den ersten Posts:
    AutoInfo[id][model]=cache_get_field_content_int(i,"Besitzer",dbhandle);
    AutoInfo[id][Besitzer]=cache_get_field_content_int(i,"model",dbhandle);


    Das ist falsch rum. Du speicherst den Besitzer in die Model ID. Prüfe mal ob das noch immer so ist, wenn ja ändere es.