Beiträge von BloodyEric

    Genau eine Änderung ist für den Map Editor, und die find ich durchaus praktisch. Soo schlecht find dich die Bedienung davon auch gar nicht, zwar natürlich nicht so einfach wie bei MTA, aber trotzdem hat sich da in letzter Zeit sehr viel getan.


    Die neuen Objekte sind gut, sehr gut sogar nutzbar...insbesondere bei RP-Servern. :)

    Du kannst das so nicht machen, bei GetVehicleParamsEx werden die Werte in Variablen gespeichert, du kannst die so nicht einfach auslesen.


    Richtig wäre:

    new engine, lights, alarm, doors, bonnet, boot, objective;
    GetVehicleParamsEx(engine, lights, alarm, doors, bonnet, boot, objective);


    if((engine==1) && (lights==1))
    return SendClientMessage(playerid,ROT,"Das Fahrzeug ist bereits eingeschaltet!");

    public OnPlayerDeath(playerid, killerid, reason)
    {
    print("Punkt 1");
    SpielerInfo[playerid][Death]++;
    SpielerInfo[killerid][Kills]++;
    if(duelstate[playerid]==1)
    {
    print("Punkt 2");
    SpielerInfo[killerid][duelkills]++;
    SpielerInfo[playerid][dueldeaths]++;
    SendClientMessage(playerid,ROT,"Sie sind gestorben!");
    SendClientMessage(killerid,ROT,"Sie haben getötet!");
    }
    print("Punkt 3");
    return 1;
    }


    Einmal bitte den Code ausführen und sagen, was geprintet wird. :)

    Glückwunsch an alle 5! Hätte sehr sehr viel schlimmer kommen können :)



    Insbesondere für Atrox, Julian und NR freuts mich, die hätt ich auch gewählt! 8) Natürlich trotzdem viel Glück an Portgas und Haublitze, ihr macht das bestimmt auch super! :)

    Ich hab grad so ne Idee für ein kleines Forenspiel gehabt...


    Regeln:


    Ich fang an mit einem Stück (falschem) Code. Der erste, der den Fehler findet, ihn kurz erklärt und richtig postet, darf dann ebenfalls einen kleinen Code schreiben und dort einen Fehler einbauen...und immer so weiter.




    EDIT: Noch eine Regel - wenns nach 12 Stunden keiner rausgefunden hat, soll aufgelöst werden/darf jemand anders weiter machen. :)
    EDIT2: Nächste Regel: Nur EIN Fehler pro Code, wenn 2 User zeitgleich die Lösung posten macht der weiter, der "weiter oben steht".


    Ich hoffe, das ist fürs Smalltalk Forum okay ^^


    Ich fang mal an:


    stock printmypos(playerid)
    {
    new float:x;
    new float:y;
    new float:z;
    GetPlayerPos(playerid,x,y,z);
    printf("%f %f %f",x,y,z);
    }

    Ich mach mal den Anfang:


    Zum ersten: Du willst also wissen, ob 2 Personen eine gewisse Distanz voneinander entfernt sind oder weiter weg? Dann ist GetPlayerPos in Verbindung mit IsPlayerInRangeOfPoint wirklich das einfachste und schnellste, du musst ja nur die Position des Ziels auslesen und die SpielerID des anderen Spielers kennen.


    Zum dritten: OnPlayerText ist hier dein Stichwort. Wenn der Spieler in diesem Telefonstatus ist, werden alle Nachrichten von ihm nur an Leute in 10m Entfernung versendet



    new Float:fx;
    new Float:fy;
    new Float:fz;
    GetPlayerPos(playerid,fx,fy,fz


    for (new i;i!=MAX_PLAYERS;i++)
    (
    if(IsPlayerInRangeOfPoint(i,10,fx,fy,fz)
    //Nachricht versenden...format etc
    }


    Danach musst du es noch an die Person, mit der er telefoniert versenden. Ich würd das so machen, dass du die telefon[playerid] Variable (erstmal in ne PVar umwandelst) so behandelst, dass die Variable gleich angibt, mit wem der Spieler telefoniert (mit welcher SpielerID). Dann hast du 2 Fliegen mit einer Klappe geschlagen. Wenn er mit niemandem telefoniert schreib ber -1 in die Variable und nicht 0. ;)

    Das kann auch nicht funktionieren, da OnPlayerEnterVehicle ausgeführt wird, bevor der Spieler im Fahrzeug ist, aber RemovePlayerFromVehicle geht nur, wenn der Spieler bereits drin sitzt.


    DuDa hat mir mal erzählt, es funktioniert, wenn du dem Spieler einfach die Animation beendest. (Klick mich dafür)


    Eine Alternative wäre, wenn das nicht geht, den Code unter OnPlayerStateChange zu packen. Dann musst du überprüfen, ob newstate = PLAYER_STATE_DRIVER ist.