Kill Geld für Premium

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
  • Sers Community,
    ich möchte das Premium User mehr Geld bekommen wenn sie killen als normale User.
    Genauso, wenn sie sterben sollen sie weniger bekommen. Hab da jetzt etwas gemacht,
    aber wenn ich z.B für Premium User einstelle das sie pro kill 4500 kriegen und normale user nur 2500
    bekommt der Premium User 7000$. Aber wenn ich von ihm Premium weg nehme bekommt er nur 2500.

    if(isPlayerNotPremium(playerid))
    {
    SendClientMessage(playerid,BAIGE,"Du bist gestorben. Deine Behandlung kostet 600$.");
    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);
    }


    if(isPlayerPremium(playerid))
    {
    PayPlayerMoney(killerid, 4500);
    }

    :) SWAGETTI & YOLONAISE!

  • Was ich verstehe dein Problem und deine Abfragen nicht :D


    Wieso fragst du 2x ab, ob der User Premium ist, erkläre das mal genauer ^^


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • PayPlayerMoney(killerid, 4500);


    Poste bitte mal den Code davon.


    Außerdem, warum erstellst du dafür 2 Funktionen?


    if(isPlayerNotPremium(playerid))
    {
    }
    else
    {
    }


    Das würde auch reichen und für weniger Verwirrung sorgen.

  • Also:


    Ein Premium User sollte pro Kill 4500$ kriegen. | Ein normaler User der kein Premium ist bekommt nur 2500$
    Aber am Ende bekommt der Premium User 7000$



    stock isPlayerNotPremium(playerid)
    {
    if(GetPVarInt(playerid,"Premium")>=0)return 1;
    return 0;
    }

    :) SWAGETTI & YOLONAISE!

  • stock isPlayerNotPremium(playerid)
    {
    if(GetPVarInt(playerid,"Premium")>=0)return 1;
    return 0;
    }


    ersetzen durch


    stock isPlayerPremium(playerid)
    {
    if(GetPVarInt(playerid,"Premium") == 1)return 1;
    else if(GetPVarInt(playerid,"Premium") == 0) return 0;
    }


    Dann baust du das einfach in eine Abfrage ein, 1 = Premiumstatus und 0 = kein Premium.

  • Bekomme

    C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(5383) : warning 209: function "isPlayerPremium" should return a value
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Warning.

    :) SWAGETTI & YOLONAISE!

  • if(isPlayerNotPremium(playerid))
    {
    SendClientMessage(playerid,BAIGE,"Du bist gestorben. Deine Behandlung kostet 600$.");
    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);
    }


    if(isPlayerPremium(killerid)) //immerhin willst du ja das der Killer Premium hat ;)
    {
    PayPlayerMoney(killerid, 4500);
    }


  • Da fehlt noch ein return 0 von mir, falls keiner der beiden Fälle eintreffen sollte. (d.h. default = kein Premium)

  • stock isPlayerPremium(playerid)
    {
    if(GetPVarInt(playerid,"Premium") == 1)return 1;
    else if(GetPVarInt(playerid,"Premium") == 0) return 0;
    }


    Es muss so aussehen:


    stock isPlayerPremium(playerid)
    {
    if(GetPVarInt(playerid,"Premium") == 1)return 1;
    return 0;
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • if(isPlayerPremium(playerid) == 0)
    {
    SendClientMessage(playerid,BAIGE,"Du bist gestorben. Deine Behandlung kostet 600$.");
    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)
    {
    PayPlayerMoney(killerid, 4500);
    }


    So dürfte es passen.

  • Hab da noch ne Frage, also beim Login sollte bei einem Premium User in Grün stehen:
    .:: Premium Account


    und bei normalen User sollte da das ganz normale stehen hab jetzt was versucht hier:



    if(isPlayerPremium(playerid) == 0)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Spieler/%s.txt",name);
    if(dini_Exists(Spielerdatei))
    {
    new IP[512],iptext[512];
    GetPlayerIp(playerid,IP,512);
    format(iptext,sizeof(iptext),"{FFFF00}Willkommen zurück,{FFFFFF}\ndein Account wurde gefunden. Bitte gebe dein Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.",IP);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{FAFAFA}Login",iptext,"Login","Abbrechen");
    }
    else
    {
    new IP[512],iptext[512];
    GetPlayerIp(playerid,IP,512);
    format(iptext,sizeof(iptext),"{FFFFFF}Willkommen auf dem {FFFF00}[GER] {FFFFFF}Team • Gangwar Server.\nDein Account wurde nicht gefunden. Gebe das gewünschte Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.",IP);
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{FAFAFA}Registrieren",iptext,"Anmelden","Abbrechen");
    }
    else if(isPlayerPremium(playerid) == 1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Spieler/%s.txt",name);
    if(dini_Exists(Spielerdatei))
    {
    new IP[512],iptext[512];
    GetPlayerIp(playerid,IP,512);
    format(iptext,sizeof(iptext),"{FFFF00}Willkommen zurück,{FFFFFF}\ndein Account wurde gefunden. Bitte gebe dein Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.\n{00AD68}.:: Premium Account",IP);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{FAFAFA}Login",iptext,"Login","Abbrechen");
    }
    else
    {
    new IP[512],iptext[512];
    GetPlayerIp(playerid,IP,512);
    format(iptext,sizeof(iptext),"{FFFFFF}Willkommen auf dem {FFFF00}[GER] {FFFFFF}Team • Gangwar Server.\nDein Account wurde nicht gefunden. Gebe das gewünschte Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.\n{00AD68}.:: Premium Account",IP);
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{FAFAFA}Registrieren",iptext,"Anmelden","Abbrechen");
    }
    }


    Bekomme leider Errors.
    Kaliber
    Du Genie vllt weisst du es :D

    :) SWAGETTI & YOLONAISE!

    2 Mal editiert, zuletzt von John_Sanclear ()


  • C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(1973) : error 029: invalid expression, assumed zero
    C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(1973) : warning 215: expression has no effect
    C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(1973) : error 001: expected token: ";", but found "if"
    C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(1975) : warning 219: local variable "Spielerdatei" shadows a variable at a preceding level
    C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(1976) : warning 219: local variable "name" shadows a variable at a preceding level
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.



    if(isPlayerPremium(playerid) == 0)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Spieler/%s.txt",name);
    if(dini_Exists(Spielerdatei))
    {
    new IP[16],iptext[256];
    GetPlayerIp(playerid,IP,16);
    format(iptext,sizeof(iptext),"{FFFF00}Willkommen zurück,{FFFFFF}\ndein Account wurde gefunden. Bitte gebe dein Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.",IP);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{FAFAFA}Login",iptext,"Login","Abbrechen");
    }
    else
    {
    new IP[16],iptext[256];
    GetPlayerIp(playerid,IP,16);
    format(iptext,sizeof(iptext),"{FFFFFF}Willkommen auf dem {FFFF00}[GER] {FFFFFF}Team • Gangwar Server.\nDein Account wurde nicht gefunden. Gebe das gewünschte Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.",IP);
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{FAFAFA}Registrieren",iptext,"Anmelden","Abbrechen");
    }
    else if(isPlayerPremium(playerid) == 1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Spieler/%s.txt",name);
    if(dini_Exists(Spielerdatei))
    {
    new IP[16],iptext[256];
    GetPlayerIp(playerid,IP,16);
    format(iptext,sizeof(iptext),"{FFFF00}Willkommen zurück,{FFFFFF}\ndein Account wurde gefunden. Bitte gebe dein Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.\n{00AD68}.:: Premium Account",IP);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{FAFAFA}Login",iptext,"Login","Abbrechen");
    }
    else
    {
    new IP[16],iptext[256];
    GetPlayerIp(playerid,IP,16);
    format(iptext,sizeof(iptext),"{FFFFFF}Willkommen auf dem {FFFF00}[GER] {FFFFFF}Team • Gangwar Server.\nDein Account wurde nicht gefunden. Gebe das gewünschte Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.\n{00AD68}.:: Premium Account",IP);
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{FAFAFA}Registrieren",iptext,"Anmelden","Abbrechen");
    }
    }
    }


    So siehts aus.

    :) SWAGETTI & YOLONAISE!

  • Schreibe das alles mal einfach so:


    if(!isPlayerPremium(playerid))
    {
    new Spielerdatei[64],name[25],IP[16],iptext[256];
    GetPlayerName(playerid,name,25),GetPlayerIp(playerid,IP,16);
    format(Spielerdatei,sizeof(Spielerdatei),"/Spieler/%s.txt",name);
    if(dini_Exists(Spielerdatei)) format(iptext,sizeof(iptext),"{FFFF00}Willkommen zurück,{FFFFFF}\ndein Account wurde gefunden. Bitte gebe dein Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.",IP),ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{FAFAFA}Login",iptext,"Login","Abbrechen");
    else format(iptext,sizeof(iptext),"{FFFFFF}Willkommen auf dem {FFFF00}[GER] {FFFFFF}Team • Gangwar Server.\nDein Account wurde nicht gefunden. Gebe das gewünschte Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.",IP),ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{FAFAFA}Registrieren",iptext,"Anmelden","Abbrechen");
    }
    else if(isPlayerPremium(playerid) == 1)
    {
    new Spielerdatei[64],name[25],IP[16],iptext[256];
    GetPlayerName(playerid,name,25),GetPlayerIp(playerid,IP,16);
    format(Spielerdatei,sizeof(Spielerdatei),"/Spieler/%s.txt",name);
    if(dini_Exists(Spielerdatei)) format(iptext,sizeof(iptext),"{FFFF00}Willkommen zurück,{FFFFFF}\ndein Account wurde gefunden. Bitte gebe dein Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.\n{00AD68}.:: Premium Account",IP),ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{FAFAFA}Login",iptext,"Login","Abbrechen");
    else format(iptext,sizeof(iptext),"{FFFFFF}Willkommen auf dem {FFFF00}[GER] {FFFFFF}Team • Gangwar Server.\nDein Account wurde nicht gefunden. Gebe das gewünschte Passwort ein.\n{E74F68}Cheater werden automatisch gebannt.\n{00AD68}.:: Premium Account",IP),ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{FAFAFA}Registrieren",iptext,"Anmelden","Abbrechen");
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S