Beiträge von Anti.

    Kurze Frage, sind schleifen innerhalb von schleifen schlimm?



    z.B: beim Sekundentimer, als Check wenn jemand eine unerreichbare Waffe hat > auto ban:



    for (new i=0; i < MAX_PLAYERS; i++)
    {


    for (new x=0; x < sizeof(BannedGuns); x++)
    {
    if(GetPlayerWeapon(i) == BannedGuns[x])
    {
    Ban(i); continue;
    }
    }


    }

    Ich habe keine Ahnung, was du suchst.


    Ich empfehle dir einen eigenen restart befehl, wo du alles speicherst und danach dann den Server neustartest :)

    Jo jetzt habe ich einen Befehl und schließe den Server nur noch über "exit" über der Konsole, bist jetzt klappt es, ich hoffe das geht auch in Zukunft mit exit über Konsole auch wenn mehrere Spieler on sind, wäre ja doof jedes mal extra in SA:MP einzuloggen um den Server runterzufahren

    Du kannst dir mit den File-Commands ganz einfach so ein eigenes System schreiben.
    Das ist vom Grundsatz her wirklich nur Basiswissen.


    Es geht wesentlich einfacher: direkt speichern. ;)

    Jo ich versuch gerade zu finden wo OnGameModeExit definiert ist oder Rcon Command "exit" aber ich finde nur die natives und nicht die funktion, weißt du wo die sind?

    ^ zu oben
    Scheint mir unnötig kompliziert ich würde ja eher strval(inputtext) nehmen statt eine Zahl als String zu speichern


    Außerdem habe ich da mal eine Frage
    Wie wäre es gut ein .ini Speichersystem zu verwenden welches sich automatisch beim Gamemode exit selbst speichert
    Wie ich festgestellt habe ist gamemodeexit zu schnell um die .inis für die Fraktionen und sonstigen Dateien zu speichern
    Jedes mal einen Rollback zu haben wenn man den Server ausschaltet ist ja auch nicht so toll, außerdem weiß ich nicht ob es auch die Spieler speichern könnte wenn mehr als nur ich aufm Server sind


    Bis jetzt würde mir nur einfallen alle 5 Minuten einmal alles zu speichern

    Okay keine Ahnung ob ich einen Denkfehler habe, aber wenn ich z.B. Strings verwendet habe musste ich nur beim Definieren ihre Array-Länge angeben,
    Jetzt habe ich folgendes Problem:


    Oben im gamemode


    new KKOwner[MAX_PLAYER_NAME];


    Gamemodeinit:


    Falls die .ini nicht existiert > dini_Set("/Server/RLRP/Biz/Krankenkasse.ini", "Owner", "NONE");


    KKOwner = dini_Get("/Server/RLRP/Biz/Krankenkasse.ini", "Owner");


    und kriege dabei folgenden Fehler: error 047: array sizes do not match, or destination array is too small




    Ich habe halt vor den Spielernamen später mit KKOwner zu vergleichen um herauszufinden ob er die Krankenkasse besitzt.
    Und ich lade immer am Anfang alles in eine Variable (hier: KKOwner) um diese dann über den ganzen Gamemode zu verwenden und bei Gamemodeexit speicher ich den neuen Wert ein, falls dieser verändert wurde.
    Damit ich nicht immer 100x im Script die gleichen dini Funktionen habe


    Würde das ganze auch über MySQL machen habe aber 0 Ahnung wie ich vernünftig mySQL im Script einbinde :P


    Edit //
    Ähm ja klar Denkfehler xD,
    so geht es jetzt:


    new str2[MAX_PLAYER_NAME];
    format(str2, sizeof(str2), "%s", dini_Get("/Server/RLRP/Biz/Krankenkasse.ini", "Owner"));
    KKOwner = str2;

    Moin die Länge der messages in SA:MP ist ja ziemlich kurz und das nervt ein wenig (144 Zeichen pro Zeile)


    Wie schneide ich z.B. bei einer Nachricht von einem Spieler ab dem 141. Zeichen ab und packe den Rest in eine neue Zeile?
    Wäre so deutlich angenehmer für die Spieler anstatt immer ganz kurze Nachrichten zu schreiben.

    Es sieht so aus als wäre der Query String zu klein, versuch den mal größer zu machen.

    Ich versuch das mal mit mehreren Strings weil wie ich in der Vergangenheit feststellen konnte bringt es nix die größe des Strings zu erhöhen
    Fange gerade nen komplett neuen GameMode an also probier ich es morgen wenn ich soweit bin, dass ich viele Daten abspeichere

    Also obwohl mir kein Error angezeigt wird beim Logout nichts in der Datenbank gespeichert, ist der string vielleicht zu lang?


    Code
    mysql_format(handle, query, sizeof(query), "UPDATE cnrusers SET score = '%d', kills = '%d', deaths = '%d', admin = '%d', money = '%d', bank = '%d', team = '%d', skin = '%d', mute = '%d', ban = '%d', cop_level = '%d', cop_experience = '%d', crime_level = '%d', crime_experience = '%d', total_crimes = '%d', wanted_level = '%d', handy = '%d' WHERE id = '%d'"



    Code
    [20:35:14] [DEBUG] mysql_format - connection: 1, len: 1028, format: "UPDATE cnrusers SET score = '%d', kills = '%d', deaths = '%d', admin = '%d', money = '%d', bank = '%d', team = '%d', skin = '%d'..."
    [20:35:14] [DEBUG] mysql_pquery - connection: 1, query: "UPDATE cnrusers SET score = '20', kills = '124', deaths = '1', a", callback: "(null)", format: "(null)"
    [20:35:14] [DEBUG] CMySQLQuery::Execute[] - starting query execution
    [20:35:14] [DEBUG] CMySQLQuery::Execute[] - query was successfully executed within 3.202 milliseconds
    [20:35:14] [DEBUG] CMySQLQuery::Execute[] - no callback specified, skipping result saving

    Hi ich frage mich gerade ob es möglich wäre ein Dialog als Liste zu machen der jeden spieler mit einer bestimmten anforderung anzeigt


    z.B. alle spieler in einem radius von 12 units um den ausführenden spieler herum in einer Liste, bestimmt geht das irgendwie mit einer format funktion und einer spieler schleife bin mir aber nicht sicher wie

    Also ich gehe davon aus, dass du das Forum auswählen musst.


    Core ist das Framework und Forum ist selbstredend. Kostet wie schon seit ca. einem jahr 89,99 Euro. Solltest du nachträglich soetwas wie den Kalender benötigen kannst du dies im Store kaufen. Benötigt man an sich allerdings nicht Kalender gibt es kostenlos bei Google und co.

    Danke

    Bei der Einrichtung kann ich dir helfen.


    Woltlab bietet zum austesten ein Angebot an: https://www.woltlab.com/demo/


    Viele Grüße

    Ich weiß schon wie man WoltLab einrichtet, da ich den Crack benutzt habe um es auszuprobieren jedoch es jetzt komplett verwenden möchte und dabei natürlich das Produkt kaufe.


    Jedoch weiß ich nicht genau was ich bei der Seite beim Kauf auswählen soll

    Hey ich würde mal gerne wissen wo man jetzt genau eine WoltLab Lizenz herbekommt und wie man sowas verwendet, da ich mich darin 0 auskenne würde ich lieber mal die Community hier fragen.


    Ich war auf der WoltLab Seite und hab mir die verschiedenen Produkte angesehen und bin jedoch jetzt ein wenig verwirrt und weiß nicht was ich davon genau kaufen muss um die Lizenz sowie Dateien für ein WoltLab Forum zu erhalten
    Ich weiß es gibt dazu einen Crack, ich würde es jedoch lieber jetzt mit der legalen Variante versuchen


    Edit: WoltLab Burning Board

    Hey ich bekomme zum ersten Mal den Error "Array index out of bonds" (variable "PropertyOwner") ich hab probiert und versucht und kriege es einfach nicht hin das es klappt.


    Im moment sieht der Code so aus: