Beiträge von Trooper[Y]

    HD-Video:

    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.





    Filterscript: (siehe Video)

    • Sende, Empfange und Antworte ingame direkt auf EMails
    • Alles Dialoggesteuert


    Include

    • MailSend(msgid,host[],logname[],logpass[],sendto[],betreff[],nachricht[])
    • MailRecv(reqid,host[],logname[],logpass[])


    • OnMailSend(msgid, result[])
    • OnMailRecv(reqid, result[])


    Credits:

    • Grex => Webspace


    Download:
    PHP-API: http://solidfiles.com/d/f192/
    Include & Filterscript: http://solidfiles.com/d/0fd1/
    pastebinmischmasch: http://pastebin.com/raw.php?i=9Je0dx0p

    Zitat

    Wäre auch ziemlich dreist gewesen von dem Piloten mitten im Wohngebiet mit dem Teil abzustürzen wo Menschen leben.



    Im Ernst, kann der doch nix für ?!
    Anstatt darüber zu diskutieren,
    sollte man einfach dankbar sein,
    dass da gerade nichts schlimems passiert ist...


    Laut den Amis war lediglich Trainingsmunition an Bord,
    also auch nicht die Welt...

    Zitat

    Wie verwarnt wird liegt im Ermessen des Teammitglieds.


    Wahre Worte, wahre Worte... ;)


    Eine Immunität für Neulinge ist aber schwachsinn
    bei so nem Hafen für verblödete Spammer...

    Da es doch tatsächlich noch eine Menge Skripter gibt,
    die "OnPlayerUpdate" nutzen, möchte ich euch mal erklären,
    warum die berühmte Aussage

    Verbrauchen tut es trotz OnPlayerUpdate Benützung wenig an Leistung, was ich vom Wissen her kenne.


    nicht richtig sein kann.


    Nehmen ich mal beispielsweise folgende Funktion,
    welche das Auto eines Spielers unverwundbar machen soll:

    forward checkfunc(playerid);
    public checkfunc(playerid)
    {
    if(IsPlayerInAnyVehicle(playerid)) SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
    }


    So sähe der Aufruf bei OnPlayerUpdate aus:

    public OnPlayerUpdate(playerid)
    {
    checkfunc(playerid);
    return 1;
    }


    Und so bei einem Timer:

    public OnPlayerStateChange(playerid,newstate,oldstate)
    {
    if(newstate == 2)
    {
    KillTimer(GetPVarInt(playerid,"healtimer"));
    SetPVarInt(playerid,"healtimer",SetTimerEx("healfunc",250,0,"i",playerid));
    }
    else KillTimer(GetPVarInt(playerid,"healtimer"));
    return 1;
    }


    forward healfunc(playerid);
    public healfunc(playerid)
    {
    if(!IsPlayerConnected(playerid) || !IsPlayerInAnyVehicle(playerid)) return 0;
    SetPVarInt(playerid,"healtimer",SetTimerEx("healfunc",250,0,"i",playerid));
    checkfunc(playerid);
    return 1;
    }


    Das Ergebnis:
    OnPlayerUpdate ist zwar der einfachere Weg,führt aber in minimalen und unregelmäßigen Abständen für JEDEN Spieler die Funktion aus.
    SetTimerEx dagegen führt nur für Spieler, die Fahrer eines Autos sind, in größeren und regelmäßigen Abständen durch.


    Fazit:
    OnPlayerUpdate frisst enorm Ressourcen,
    obwohl der Code der Funktion minimal ist.
    SetTimerEx dagegen ruft nur spezifisch und seltener
    den Code auf => weitaus weniger Belastung.



    Dies war durchaus einleichtend, nicht wahr ?
    Für all die Zweifler, nehmen wir doch mal die ausführliche Erklärung
    eines erfahrenem und bekannterem Skripter, der diese Methode mag: Templer !
    Hier ist seine Erklärung, mein Kommentar steht in Grün dahinter:

    Erklärung zur Benützung von OnPlayerUpdate:
    Da manche denken "Oh mein Gott er benützt OnPlayerUpdate" will ich für andere kurz Erläutern warum ich diese Variante ausgesucht habe. OnPlayerUpdate wird ja stehts ausgeführt, wenn Spieler InGame ist (und nicht am Desktop oder GTA Menu) und es dann ca alle 0,5 Sekunden aufgerufen wird (wenn nicht kürzer). (Um EINIGES kürzer) Anstatt das ich die Timerfunktionen SetTimer und SetTimerEx verwende, nütze ich gleich OnPlayerUpdate mit einer Variable die überprüft ob so und soviele Sekunden vergangen sind (was wiederum den Server belastet) und erst dann die Überprüfung für diesen Spieler startet.(man nimmt also eine Funktion, die alle paar MS aufgerufen wird, und prüft da, ob eine Sekunde rum ist, anstatt einen Timer zu erstellen, der direkt jede Sekunde startet ? Sinn ?) Somit erspart man sich an Leistung und keine Geschwindigskeitsverluste wegen der mageren Abfrage(Im Gegenteil). Da ich leider schwer zeigen kann wieviel Leistung dieses Script vom Server verbraucht,(print wäre ein Anfang) da ich nicht wisse wie die Leistung abgemessen wird, müsst ihr es leider selber austesten wenn es unbedingt notwendig ist. Verbrauchen tut es trotz OnPlayerUpdate Benützung wenig an Leistung, was ich vom Wissen her kenne. (Der epischste Grund ;) )


    Noch Fragen ?

    Kann vill. wer einen Befehl bauen wie im Video?
    Habe grad zu wenig Zeit...


    Danke im Voraus


    mfg.
    Opa


    dcmd_icq(playerid,params[])
    {
    new targuid[5000],targmsg[5000];
    if(sscanf(params, "ss",targuid,targmsg)) return SendClientMessage(playerid,COLOR_RED,"/icq [nr] [msg]");
    ICQSend"([sendericqnr]","[senderpw]",targuid,targmsg);
    return 1;
    }
    [sendericqnr] und [senderpw] musste allerdings entsprechend ausfüllen...

    Befehle:

    Code
    *ICQSend(loginname[],loginpw[],targetuid[],targettext[])


    (targetuid können auch mehrere Empfänger, aneinandergereiht durch |,
    bspw "uid1|uid2|uid3" sein)


    HD-Video:

    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.


    Credits:

    • Grex => Webspace


    Download:
    Mirror 1
    Mirror 2
    Mirror 3
    Mirror 4


    Webfiles:
    http://solidfiles.com/d/0ee8a/

    Als Forenbetreiber haftet ihr dafür,
    wenn ihr davon wisst (/wusstet),
    und nichts dagegen unternommen habt.


    Und auch (bzw. vor allem) Texte sind im Urheberrecht inbegriffen,
    und sind am leichtesten abzuklagen,
    da man da den Diebstahl am leichtesten nachweisen kann...


    Ich lege dir die Seite http://www.recht.de ans Herz,
    die helfen dir ein wenig fachlicher,
    und das soll hier ja nicht alllzusehr ins OT gehen ;)

    Zitat

    Alles was im Internet steht, ist freigegeben. Das heißt, ich kann alles kopieren was ich will und verändern!


    Für so n Mist meld selbst ich mich zu Wort:
    Das glaubst du doch nicht echt, oder ?
    Kennst du das Wort "Urheberrecht" ?
    Google mal lieber danach,
    das schreit ja nach "verklag mich".
    Viel Spaß aber noch mit der Klage,
    du hast es nun wirklich verdient...


    @Topic(/walker):
    Hatte mich anfangs dafür interessiert und mitgemacht,
    als dann aber Forenspiele gespielt wurden,
    wurds mir dann aber zu bunt...


    Es sollte also in eurem Interesse sein,
    dass ich dort nicht "Mein Vater ist gestorben" und
    "Einer sagt was, und der Nachposter muss es schlechtmachen."
    in einem Forum finde...