Beiträge von Zone

    und wie genau?
    (Ich bin neu in der Scripting-Szene)

    Deklariere oben im Script folgendes:
    playersweeppoint[MAX_PLAYER];


    und verwende das dann zum Beispiel so:
    public OnPlayerEnterCheckpoint(playerid){
    DisablePlayerCheckpoint(playerid);
    if(playersweeppoint[playerid] != -1 && playersweeppoint[playerid] < 11) playersweeppoint++;
    SetPlayerCheckPoint(playerid,Reinigerpoints1[playersweeppoint[playerid]][0],Reinigerpoints1[playersweeppoint[playerid]][1],Reinigerpoints1[playersweeppoint[playerid]][2],3.0);
    //...
    return 1;
    }
    Ungetestet. Dürfte aber gehen.


    Edit: Eingerückt...


    Achja. Du musst bei der Stellendeklarierung Float als Tag angeben. Also so:
    new Float:Reinigerpoints1[11][3] = {
    {1534.6433,-1448.8973,13.1538},
    {1431.3346,-1438.5981,13.1542},
    {1317.2488,-1393.7202,13.0857},
    {1139.9426,-1394.3566,13.2893},
    {1060.7434,-1314.5278,13.1559},
    {1089.4274,-1150.9023,23.4292},
    {1299.4103,-1148.7262,23.4292},
    {1439.6110,-1163.1580,23.4315},
    {1451.6865,-1303.5762,13.1561},
    {1478.8530,-1443.5215,13.1559},
    {1532.5496,-1447.3838,13.1526}
    };


    Edit: Ups. Doch noch eine Kleinigkeit falsch! Habe bei SetPlayerCheckPoint bei playersweeppoint das "[playerid]" vergessen.

    Und wo genau liegt jetzt dein Problem? Sollen wir dir helfen, dass die Checkpoints in der richtigen Reihenfolge angezeigt werden?
    Verwende einfach SetPlayerCheckpoint und speichere ab welcher Eintrag gerade verfolgt wird. Zum Beispiel in einer SpielerVariable

    Erstmal eins! ;)
    Wenn du sagst du kannst viele Grundlagen, aber noch nichts richtig, dann mach das: http://easy-scripting.net/inde…read&postID=4973#post4973

    Erinnert mich stark an NIKI. Ganz nützlich solche Lernumgebungen. Lässt sich praktisch schon etwas spielerisch erlernen bzw. einüben.


    Zum Topic: Ich habe damals mit AutoIT angefangen, damit habe ich zum Beispiel einen Editor gebastelt. Hinterher habe ich zu VB gewechselt, anschliessend mich zu c# rangetastet. Ich denke mal, dass es jedem selbst überlassen ist womit man anfangen möchte. Wichtig ist, dass du dich erst einmal auf ein Thema konzentrierst und nicht alles gleichzeitig. Führt nur zur Verwirrung.

    Speicher alle Undercover-Cars in 'nem Array ab und verwende bei OnVehicleSpawn einfach innerhalb einer For-Schleife folgende Funktion:
    ChangeVehicleColor


    Edit: Tipp zur zufälligen Farbe:
    new rColor = random(46); // anstatt 46 einfach die maximale Anzahl der Farben verwenden.
    Aber Achtung: Einige Farben sind nicht in Verwendung (Es werden welche übersprüngen) - Hier zu überprüfen: Colors
    Die vorgeschriebenen Farben kann man ebenfalls als Array deklarieren. Den Rest kannst du dir ja denken.

    Sehr gutes Design, CP, ansonsten nur noch nettes Team das bei jeder Frage sofort einspringt. Mehr fällt mir grad nicht ein.



    LG
    StreetS

    Danke dir !
    Ein Team gibt es schon die haben sich nur noch nicht angemeldet ^^
    Werd den mal in den Ar... treten damit die das tun

    Ich glaube das waren seine Vorschläge und keine Komplenente. :rolleyes:
    Ich denke interessante Themen wären relativ vorteilhaft. Denk dir etwas besonderes aus worüber man reden kann.
    Ein, für mich, sehr interessantes Thema, zum Beispiel, ist das Bauen von eigenen 'Spielzeugwaffen' wie zum Beispiel ein Kugelschreiber der Gummibänder schießt.
    Ich weiss, eigentlich kein geeignetes Thema für ein normales Forum aber das war ja nur ein Beispiel für ein außergewöhnliches Thema.

    Das Problem bei der Sache ist, dass ein Server nebenbei auch noch mit anderen Sachen beschäftigt ist, da ein Server wohl kaum bloß aus einem Ant-Waffencheatsystem besteht.. Wenn du nun einen Server besitzt der gut besucht ist, kann man sich eigentlich ausrechnen wie viel Leistung so etwas ziehen kann. Ich sage bewusst kann, da 'meine' Server-Community nicht so groß und aktiv ist wie bei anderen Servern und ich deshalb nicht so viel Erfahrung damit habe. Desweiteren haben nicht alle Server die besten Vorraussetzungen im Bezug auf Leistung.

    Dieses Anticheat wäre effektver wenn du einfach alle Waffen weg nimmst.


    Dein FS sperrt einfach die Waffen die nicht erlaubt sind und nicht die die ercheatet worden sind.


    @AzkarGames
    Ich wiederhole mich gerne :S
    Ohne OnPlayerUpdate wären effektive Anticheatsystem gar nicht möglich

    Ich denke allerdings, dass ein Anicheatsystem, welches gegen Waffen ausgerichtet ist, durchaus mit einem Timer funktioniert, welcher gerade mal alle 10 Sekunden aufgerufen wird.

    Du bist dir ganz sicher, dass es mehr Sinn ergibt, OnPlayerUpdate anstatt einen Timer zu verwenden? Ich dachte immer, dass OnPlayerUpdate für solche Dinge nicht geeignet ist.
    Ist ziemlich simpel gehalten und wirklich neu ist es auch nicht. Eine richtige Bewertung gebe ich vorerst nicht ab, vielleicht teste ich das Filterscript ja noch.

    Benutzt eigentlich nie jemand das Sa-Mp-Wiki? Da gibt es manchmal ziemlich nützliche Einträge, die die Anwendungsart ziemlich genau beschreiben.
    http://wiki.sa-mp.com/wiki/OnPlayerKeyStateChange - Abfrage ob die Taste gedrückt wurde
    http://wiki.sa-mp.com/wiki/SetVehicleParamsEx - Hiermit lassen sich unter anderem die Lichter an/aus schalten.


    PS: Es lassen sich nicht alle Keys abfragen. Hier eine kurze Liste, welche die Keys betrifft:
    http://wiki.sa-mp.com/wiki/GetPlayerKeys

    Die "Enter"-Abfrage findet in public OnPlayerKeyStateChange statt.
    Speicher die verschiedenen Koordinaten in einem Array ab und erfrage dann mit einer For-Schleife ob der Spieler in der Nähe dieses punktes ist.
    Ich gebe dir mal kurz ein Beispiel wie ich das in meinem Tankstellen-system habe:
    Positiondefinierung:
    #define MAX_TANKEN 15
    new Float:tanken_coords[MAX_TANKEN][4] =
    {
    {1944.8887,-1775.5200,13.5402,450.0},
    {999.9562,-940.3085,41.7331,450.0} //...
    };


    Und die For-Schleife bei dem gewünschten Ereignis:
    for(new t = 0; t < MAX_TANKEN; t++)
    {
    if(IsPlayerInRangeOfPoint(playerid, 5.0,tanken_coords[t][0],tanken_coords[t][1],tanken_coords[t][2]))
    {
    //Was passieren soll...
    }
    }

    So sieht's bei mir immer aus, wenn jemand in der Nähe mit einer Neonröhre am Auto ist. Ist aber irgendwie nur bei Autos so.