Beiträge von IPrototypeI

    Ja, ich bin es schon wieder :D
    Ähm folgendes...
    ich habe ein kleines Alter system erstellt... allerdings funktionobelt da was nicht so ganz wie hier zu sehen:


    Hier mal der Code (Funktion der Ausgabe ist bereits getestet!):

    Code
    if(IsNumeric(inputtext) < 16 || IsNumeric(inputtext) > 90)
    {
        strval(inputtext) == IntroAlterVar; //IntroAlterVar ist die Variable die das Alter im
        //Textdraw ausgeben soll.
        Strenggeheimer Code!
    }

    Also an dem Code ist wirklich alles verkehrt.



    Code
    IntroAlterVar = strval(inputtext);
    if(IntroAlterVar >= 16 && IntroAlterVar <= 90)
    {
        //IntroAlterVar ist die Variable die das Alter im
        //Textdraw ausgeben soll.
        Strenggeheimer Code!
    }

    //edit
    @malE


    Sowas kannst du mit #assert mache siehe dazu das
    https://wiki.sa-mp.com/wiki/Keywords:Directives

    Ich wurde als Gewinner der Weihnachtverlosung gezogen und hatte die Möglichkeit HK-Hosting kostenlos zu testen.
    Es gab zwar kleine Probleme mit dem Gutscheincode jedoch musste ich keine 2 Stunden auf eine Antwort des Supportteams warten und das Problem war im Handumdrehen gelöst. Auf mich hinterlässt das Hostingunternehmen einen recht guten Eindruck und ich bin am überlegen ob ich meine Webanwendung über diese Swite laufen lassen werde.

    Damit initalisierst du Map_Andreas bedeutet die SAFull.hmap Datei wird in den Speicher geladen.


    Hier ist das native die 1, 2 gibt den mode an und die findest du in der Include, damit kannst du angeben ob die heighmap ganz geladen wird oder nur ein minimaler Teil.


    MAP_ANDREAS_MODE_FULL: Original mode, uses about 70MB RAM, requires SAfull.hmap in the scriptfiles directory, 1x1 squares
    MAP_ANDREAS_MODE_MINIMAL: Uses only 3x3 squares, and so it just needs ~9MB RAM, but is less precise. Requires SAmin.hmap.
    MAP_ANDREAS_MODE_NOBUFFER: Reads the data directly from the file
    without buffering, and so eats no additional RAM, but therefore it is
    WAY slower. Requires SAfull.hmap

    Code
    #define MAP_ANDREAS_MODE_NONE			0
    #define MAP_ANDREAS_MODE_MINIMAL		1
    #define MAP_ANDREAS_MODE_MEDIUM			2	// currently unused
    #define MAP_ANDREAS_MODE_FULL			3
    #define MAP_ANDREAS_MODE_NOBUFFER		4



    Code
    native MapAndreas_Init(mode, name[]="");

    Man könnte sich zusammen setzen, einige Regeln aufsetzen, das Grundgerüst gemeinsam zusammen schustern und einen Plan aufstellen, was alles gemacht werden muss bzw. was alles an Möglichkeiten das Script bieten sollte. Steht dieser Plan, so wird jedem Scripter Aufgaben zugeteilt (die er bewältigen kann). Diese Aufgabe baut er dann bei sich lokal als Include und greift auf die Funktionen des GameModes (inkl. der gemeinsam erstellten Funktionen, wie bei meinem Script die Include _roleplay.inc). Muss er auf Callbacks zugreifen, so Hooked er dieses. Hat er ein Include fertig und haben alle Scripter (oder ein Prüfteam) einen Qualitätscheck gemacht, so kommt es ins Hauptprojekt rein!


    Ich könnte jetzt noch weiter in Details gehen, dies würde aber die festgelegte Zeichenzahl definitiv sprengen.


    Ich hoffe, jemand versteht, worauf ich hinaus möchte.


    Das Problem dabei ist das du Leute benötigst auf die du dich verlassen kannst , wenn du da Leute mit Halbwissen hast kannst du die ganze Zeit die Arbeit überprüfen und dich um seine Bugs kümmern die er nicht gebacken bekommt, diese Erfahrung musste ich bereits machen.



    mir ist aufgefallen, dass auch hier im Forum so gut wie nichts mehr Released oder Gepostet wird (bezieht sich auf die SAMP Ecke).

    Was sollen die Leute den releasen es gibt ja bereits fast alles ?

    Du liesst den Namen nicht aus, GetPLayerName fehlt dir.
    Hier paar Tipps


    • via fexist [wiki]https://wiki.sa-mp.com/wiki/Fexist[/wiki] kannst du überprüfen ob ein File existiert oder nicht das hätte dir aufschluss darüber gegeben das die Datei nicht existiert ^^
    • Beachte das die Files den Wert 0 haben werden, wenn der Server abschmiert da GetPlayerPos in dem Moment nix mehr zurück liefert aus 0, daher speicher die position des Spielers regelmäßig zwischen , das kann man gut mit einem Anticheat verknüpfen Bsp: Antiteleporthack

    Das Code hat paar Probleme, welche ich ebenfalls beseitigt habe, beachte dabei folgende Dinge

    • Wenn du 1 Variable nutzst für die TimerID und zwei Leute tanken , so wird der zweite Timer stehts beendet und der erste läuft weiter
    • Wenn du an einer Tankstelle bist, welche nicht den Index 0 in deinem Array tInfo hat so wird dir immer die Fehlermeldung ausgegen das du dich nicht an der Tankstelle befindest
    • Bei Timern musst du aufpassen diese sind zwar inakurat, jedoch solltest du nicht 2 Timer zur selben Zeit aufrufen dies kann zu Lags führen



    Die Funktion wird alle 3 Sekunden ausgeführt., solang musst du schon warten.


    um den Timer 1 mal auzuführen



    Timer soll sich alle 3 Sekunden wiederholen


    Probier das mal so



    Code
    0 0,6,12,18 * * * /home/run/epochserver/restart.sh >/dev/null 2>&1

    startet genau um 06:00, .. einmal



    bei einem Stern wäre es 06:01 , 06:02 ...


    siehe dazu auch


    https://www.stetic.com/develop…l-und-crontab-syntax.html




    Zitat

    Ein Stern * bedeutet Ausführung wird immer erfolgen, also zu jeder Minute, jeder Stunde, jedem Tag, jedem Monat oder jedem Wochentag. Um die einzelnen Stellen auseinander zu halten, hilft folgendes Diagram:

    Danke Copyright , jedes Design ist mit liebe gecodet und sind responsive gehalten, die Designs werden ohne mein Copyright verkauft dennoch habt ihr jederzeit anrecht darauf das ich Fehler behebe ich werde auch selbst auf euch zukommen falls mir etwas auffallen sollte, ebenfalls bin ich behilflich beim einrichten des Designs und auch für weiter Fragen offen.


    //push 14.10.2015
    //push 21.10.2015
    //push 25.10.2015
    //push 30.10.2015
    //push 25.12.2015


    Preis beträgt nur noch 20 Euro

    Darf ich dir 2 gute Tipps geben ?


    1. strlen(inputtext) > 6 kann man auch easy optimieren inputtext[0] != EOS


    2. Wenn ich sowas sehe bekomme ich das kotzen VORSICHT Memoryleak, leider kennt das MySQL Plugin sowas wie ein garbagecollector nicht.



    Code
    mysql_format(Handle, strQuery, 256, "SELECT * FROM users WHERE username='%e' LIMIT 1", Playername(playerid));
    			mysql_query(Handle, strQuery); //Wir holen uns die Spalten des Users in der Datenbank
       			cache_get_field_content(0, "password", Password, Handle, 128); //Lesen das Gesaltete Passwort aus
    			cache_get_field_content(0, "salt", Salt, Handle, 64); //Lesen unseren Salt aus

    zu



    Code
    mysql_format(Handle, strQuery, 256, "SELECT * FROM users WHERE username='%e' LIMIT 1", Playername(playerid));
    			new Cache:result = mysql_query(Handle, strQuery); //Wir holen uns die Spalten des Users in der Datenbank
       			cache_get_field_content(0, "password", Password, Handle, 128); //Lesen das Gesaltete Passwort aus
    			cache_get_field_content(0, "salt", Salt, Handle, 64); //Lesen unseren Salt aus+
    cache_delete(result);


    siehe auch


    http://wiki.sa-mp.com/wiki/MySQL/R33#mysql_query