OnPlayerDeath spackt

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo,
    ich möchte das normale & Premium User verschiedene Kill's und Geld bekommen.
    D.h das Premium User mehr Vorteile als normale User haben siehe hier:

    if(isPlayerPremium(playerid) == 0) // Wenn er kein Premium ist.
    {
    SendClientMessage(playerid,BAIGE,"Du bist gestorben. Deine Behandlung kostet 500$.");
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 1);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 1);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    PayPlayerMoney(killerid,2500);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    PayPlayerMoney(playerid,-500);
    SetPVarInt(playerid,"Killstreak",0);
    }
    else
    {
    if(isPlayerPremium(playerid) == 1) // Wenn er Premium ist.
    {
    SendClientMessage(playerid,BAIGE,"Durch dein Premium Account kostet dich der Tot 200$.");
    PayPlayerMoney(killerid, 4500);
    PayPlayerMoney(playerid,-200);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 2);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 2);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 2);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    SetPVarInt(playerid,"Killstreak",0);
    }
    }


    So, wenn ich z.B Premium bin und mein Gegner nicht bekomme ich trotzdem 2500$ statt 4500$.
    Wenn beide Spieler Premium sind bekommt der killerid 4500.
    Ich weiß nicht warum hab alles versucht doch kein Erfolg.

    :) SWAGETTI & YOLONAISE!

  • if(isPlayerPremium(playerid) == 1) // Wenn er Premium ist.


    if(isPlayerPremium(playerid) == 1) // Wenn er Premium ist.


    Die Abfrage ist ja wohl der letzte Müll, du prüfst doch mit else schon, ob Premium == 1 bzw != 0 ist..


    Also nimm die Abfrage mal raus. :D


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • So?

    if(isPlayerPremium(playerid) == 0)
    {
    SendClientMessage(playerid,BAIGE,"Du bist gestorben. Deine Behandlung kostet 500$.");
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 1);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 1);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    PayPlayerMoney(killerid,2500);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    PayPlayerMoney(playerid,-500);
    SetPVarInt(playerid,"Killstreak",0);
    }
    else
    {
    SendClientMessage(playerid,BAIGE,"Durch dein Premium Account kostet dich der Tot 200$.");
    PayPlayerMoney(killerid, 4500);
    PayPlayerMoney(playerid,-200);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 2);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 2);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 2);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    SetPVarInt(playerid,"Killstreak",0);
    }

    :) SWAGETTI & YOLONAISE!


  • Ja genau so, da else //Wenn nicht == 0.. prüft {//Codeblock}


    Sollte normalerweiße funktionieren ;)


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • Du musst auch mehrere Abfragen machen ob killerid auch Premium hat.
    if(isPlayerPremium(playerid) == 0) // Wenn er kein Premium ist.
    {
    SendClientMessage(playerid,BAIGE,"Du bist gestorben. Deine Behandlung kostet 500$.");
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    PayPlayerMoney(playerid,-500);
    SetPVarInt(playerid,"Killstreak",0);
    }
    if(isPlayerPremium(killerid) == 0)
    {
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 1);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 1);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    PayPlayerMoney(killerid,2500);
    }
    if(isPlayerPremium(playerid) == 1)
    {
    SendClientMessage(playerid,BAIGE,"Durch dein Premium Account kostet dich der Tot 200$.");
    PayPlayerMoney(playerid,-200);
    SetPVarInt(playerid, "Tode", GetPVarInt(playerid, "Tode") + 1);
    SetPlayerScore(playerid, GetPlayerScore(playerid) -1);
    SetPVarInt(playerid,"Killstreak",0);
    }
    if(isPlayerPremium(killerid) == 1)
    {
    PayPlayerMoney(killerid, 4500);
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 2);
    GameTextForPlayer(killerid,"~r~Gangwar Kill", 3000, 1);
    SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") + 2);
    SetPVarInt(killerid,"Killstreak",GetPVarInt(killerid,"Killstreak") + 2);
    }