Beiträge von grauerhase

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums



    Was genau hast du dort umgeändert, ausser das return hinten drangehängt ?
    Ich kann dies nun nicht testen da mein Kollege offline ist ^^


    MfG ReFleX

    Weil du in dem Befehl die Position vom Spieler abfragst, und dann überprüfst ob er selbst in der nähe ist. Das ergibt keinen sinn^^


    Änder mal
    if(IsPlayerInRangeOfPoint(pid,2.0,x,y,z))zuif(IsPlayerInRangeOfPoint(playerid,2.0,x,y,z))


    Habe den fehler vorhin selbst gemerkt, aber funktionieren tut es irgendwie immer noch nicht.


    Gibt es für solche cmd, wo man die Nähe von einen Anderen Spieler abfragt, irgendeine andere Möglichkeit ?

    Warum kann der Polizist jeden Uncuffen egal wie weit er weg ist ?



    ocmd:uncuff(playerid, params[])
    {
    new pid;
    if(IfSpielerInFrak(playerid, 1))
    {
    if(sscanf(params,"u", pid)) return SendClientMessage(playerid, GELB, "Benutzung: /uncuff [ID]");
    {
    if(pid == INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, GELB, "Der Spieler ist nicht Online.");
    }
    else
    {
    printf("1");
    new Float:x, Float:y, Float:z;
    GetPlayerPos(pid,x,y,z);
    printf("Is in range of point");
    if(IsPlayerInRangeOfPoint(playerid,2,x,y,z))
    {
    ClearAnimations(pid);
    TogglePlayerControllable(pid,1);
    new Text3D:uncuff = Create3DTextLabel("", ROT, 30.0,40.0,50.0,40.0,0);
    Attach3DTextLabelToPlayer(uncuff,pid,0.0,0.0,0.0);
    printf("Clear");
    }
    }
    }
    }
    return 1;
    }


    Bitte um Hilfe

    Guten Abend, habe da ein problem, undzwar habe ich ein MySQL Acc system, nur ist das Problem das man mit -1 Doller spawnt wenn man sich das erstemal einloggt. Und wenn man -2 oder mehr geld hat, und es gespeichert wird, wird es beim nächsten login wieder auf -1 gesetzt :/


    2. Geht dieser Tele script ? Kann ihn alleine net testen :D



    dcmd_tele(playerid,params[])
    {
    new pid;
    if(sscanf(params,"u", pid))return SendClientMessage(playerid, GELB, "Benutzung: /tele [ID]");
    {
    if(pid == INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, GELB, "** Der Spieler ist nicht Online.");
    }
    else
    {
    if(SpielerInfo[playerid][pAdminlevel] >= 1)
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(pid,x,y,z);
    SetPlayerPos(playerid, x,y,z);
    SendClientMessage(playerid, GELB, "** Du hast dich erfolgreich teleportiert");
    }
    }
    }
    return 1;
    }


    MfG grauerhase


    //EDIT


    Also ich denke der Tele cmd geht nicht ganz :/


    Jmd. eine Idee wie dies hier funktionieren könnte ?



    SetPlayerPos(GetPlayerPos(pid,x,y,z),playerid,x,y,z);

    Wie die Überschrift schon sagt, dreht sich die Kamera andauernt ums Auto, und man kann den Motor nicht annmachen. Dies kommt seid dem ich gestern in einem anderen Interior ein Autogespawnt habe, das unsichtbar war. Nun kommt es dir ganze Zeit :(


    //EDIT


    Also ich habe mir gestern für BF3 einen Joystick gekauft für den Jet, habe ihn abgeschloßen und nun scheint alles wieder zu funktionieren :)

    Kann mir mal einer bitte erklären warum dies nicht funktioniert ?


    Das soll ein Plant & Defuse TDM werden

    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    new playerstate = GetPlayerState(playerid);
    if(playerstate == PLAYER_STATE_ONFOOT)
    {
    if(newkeys == KEY_NO)
    {
    if(IsPlayerInRangeOfPoint(playerid, 20,1761.4668,-1652.4980,14.8830))
    {
    if(IsPlayerTeam(playerid, 2))
    {
    TogglePlayerControllable(playerid, 1);
    SetTimer("plant1", 5000, false);
    }
    }
    }
    }
    return 1;
    }


    Geht irgendwie nicht :/

    Einer eine Idee, wie man machen kann, dass z.b. wenn ein Spieler jmd. tötet, er dann den killer mit einer Kameraverfolgt ? Sprich eine KillCam ?
    Arbeite immoment an einen DM GM, mit Rush, Conquest, Arena. Soetwas würde nähmlich richtig gut reinpassen


    Wenn mein Bankguthaben 1 ist, bekomme ich beim payday 0 :D ?

    SpielerInfo[playerid][pBank] += getmoney*0.1;
    So würde ich jetzt sagen.


    Kann ich das irgendwie mit new machen ? Damit ich bei "Dein PayDay ist %i" auch die Zahl anzeigen kann, wie viel ich bekommen habe ?



    forward payday(playerid);
    public payday(playerid)
    {
    new paydaytext[64];
    new getmoney = SpielerInfo[playerid][pBank];
    SpielerInfo[playerid][pBank] += getmoney*0.1;
    format(paydaytext, sizeof(paydaytext), "Dein PayDay ist %i $", getmoney);
    SendClientMessage(playerid, GELB, paydaytext);
    UpDateBank(playerid);
    }


    //Edit


    Warum hab ich beim PayDay , irgendwie von 45900 aufeinmal 1195727616 auf der Bank ? :D

    Wie kann ich eine Zahl * rechnen ? Habe ein kleines PayDay System, und ich will halt das von der Bank die Zinsen * 0.1 gerechnet werden.


    Soweit bin ich :D

    public payday(playerid)
    {
    new paydaytext[64];
    new getmoney = SpielerInfo[playerid][pBank];
    format(paydaytext, sizeof(paydaytext), "Dein PayDay ist %i $", getmoney);
    SendClientMessage(playerid, GELB, paydaytext);
    UpDateBank(playerid);
    }



    Bitte um Hilfe


    MfG

    Ich kann dir nicht richtig folgen ? :/


    //EDIT


    Okey habs irgendwie hinbekommen :/
    Kp ob das eine gute Lösung ist .



    format(sms,sizeof(sms),"[SMS][Von %s]: %s",sName(playerid), text);
    format(text,sizeof(text),"%s", text);
    format(fulltext,sizeof(fulltext),sms, text);
    SendClientMessage(pid,GELB,fulltext);
    format(text,sizeof(text),"[SMS][An %s]: %s", sName(pid),text);
    SendClientMessage(playerid, GELB, text);

    Hier mein sms script:


    format(text,sizeof(text),"[SMS][Von %s]: %s",sName(playerid),text);
    SendClientMessage(pid,GELB,text);
    format(text,sizeof(text),"[SMS][An %s]: %s", sName(pid),text);
    SendClientMessage(playerid, GELB, text);


    Mein Problem:


    beim 2ten format sieht dann die SendClientMessage so aus:


    [SMS][An NAME1]: [SMS][Von NAME2] test


    Wie kann ich machen das dort nicht nocheinmal von steht ?


    Hatte es davor schon richtig XD



    nur habe ich hier die zahlen zu niedrig gemacht, da meine hp anzeige bei 1000 beginnt


    falsch:

    if(vicheal < 10) format(heal,sizeof(heal),"HP: ~r~%0.0f", vicheal);
    else if(vicheal < 30) format(heal,sizeof(heal),"HP: ~y~%0.0f", vicheal);
    else if(vicheal <= 100) format(heal,sizeof(heal), "HP: ~g~%0.0f", vicheal);


    richtig:

    if(vicheal < 250) format(heal,sizeof(heal),"HP: ~r~%0.0f", vicheal);
    else if(vicheal < 500) format(heal,sizeof(heal),"HP: ~y~%0.0f", vicheal);
    else if(vicheal <= 1000) format(heal,sizeof(heal), "HP: ~g~%0.0f", vicheal);


    Trotzdem bedanke ich mich für deine Hilfe :)



    ------------------------------------
    Nächste Frage:


    Hier mein sms script:

    format(text,sizeof(text),"[SMS][Von %s]: %s",sName(playerid),text);
    SendClientMessage(pid,GELB,text);
    format(text,sizeof(text),"[SMS][An %s]: %s", sName(pid),text);
    SendClientMessage(playerid, GELB, text);


    Mein Problem:


    beim 2ten format sieht dann die SendClientMessage so aus:


    [SMS][An NAME1]: [SMS][Von NAME2] test


    Wie kann ich machen das dort nicht nocheinmal von steht ?

    Hallo Leute, kann mir mal jemand helfen, also ich habe hier ein Tacho gemacht wo die HP anzeige gezeigt wird, nur irgendwie bleibt die hp anzeige immer auf 1 :/



    new heal[20];
    new Float:vicheal;
    new Vehicleid;
    Vehicleid = GetPlayerVehicleID(i);
    vicheal = GetVehicleHealth(Vehicleid, vicheal);

    if(vicheal < 10) format(heal,sizeof(heal),"HP: ~r~%0.0f", vicheal);
    else if(vicheal < 30) format(heal,sizeof(heal),"HP: ~y~%0.0f", vicheal);
    else if(vicheal <= 100) format(heal,sizeof(heal), "HP: ~g~%0.0f", vicheal);
    TextDrawSetString(SpeedoHeal[i],heal);


    Bitte um Hilfe