/buygun bugg

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
  • if (strcmp(cmd, "/buygun", true) == 0)
    {
    if(PlayerInfo[playerid][pGunLic] == 0) { return SendClientMessage(playerid, COLOR_GRAD2,"Du besitzt noch keinen Waffenschein"); }
    else if(PlayerInfo[playerid][pLevel] < 2) { return SendClientMessage(playerid,COLOR_GRAD2,"Du hast ein zu niedriges Level(mind. 2)"); }
    if(IsPlayerConnected(playerid))
    {
    if(GetPlayerMoney(playerid) < 1)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du hast nicht genug Geld!");
    return 1;
    }
    new gun;
    new gunid[16];
    new gunstring1[128];
    new gunstring3[128];
    new gunstring4[128];
    new gunstring5[128];
    new infostring[128];
    new guncharge;
    new ammocharge;
    new location = PlayerInfo[playerid][pLocal];
    if(location == 99 || location == 100 || location == 102)
    {
    if(BizzInfo[location-99][bProducts] <= 0)
    {
    GameTextForPlayer(playerid, "~r~Außerhalb der Zone", 5000, 1);
    return 1;
    }
    new modd = 100;
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    format(string, sizeof(string), "Benutzung: /buygun [waffenname] [munition]");
    SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
    SendClientMessage(playerid, COLOR_WHITE,"*** Waffen & Munition ***");
    SendClientMessage(playerid, COLOR_GRAD2,string);
    format(gunstring1, 256, "Waffen: Fallschirm (%d$) Golfschläger (%d$) Polizeistock (%d$) Baseballschläger (%d$) Schaufel (%d$) Pool (%d$)",
    GunPrice[0][0]/100*modd,GunPrice[1][0]/100*modd,GunPrice[2][0]/100*modd,GunPrice[3][0]/100*modd,GunPrice[4][0]/100*modd,GunPrice[5][0]/100*modd,GunPrice[6][0]/100*modd);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring1);
    format(gunstring3, 256, "Waffen: Pistole (%d$) DesertEagle (%d$) MP5 (%d$)",
    GunPrice[13][0]/100*modd,GunPrice[14][0]/100*modd,GunPrice[15][0]/100*modd,GunPrice[16][0]/100*modd,GunPrice[17][0]/100*modd,GunPrice[18][0]/100*modd);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring3);
    format(gunstring4, 256, "Waffen: Schrotflinte (%d$) AK47 (%d$) M4 (%d$) Rifle (%d$)",
    GunPrice[19][0]/100*modd,GunPrice[20][0]/100*modd,GunPrice[21][0]/100*modd,GunPrice[22][0]/100*modd,GunPrice[23][0]/100*modd,GunPrice[24][0]/100*modd);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring4);
    format(gunstring5, 256, "Munition: pistolenmunition (%d$) schrotflintenmunition (%d$) smgmunition (%d$) assaultmunition (%d$) riflemunition (%d$)",
    GunPrice[25][0],GunPrice[26][0],GunPrice[27][0],GunPrice[28][0],GunPrice[29][0]);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring5);
    SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
    return 1;
    }
    strmid(gunid, tmp, 0, strlen(cmdtext), 255);
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    format(string, sizeof(string), "Benutzung: /buygun [waffenname] [munition]");
    return 1;
    }
    new ammo = strval(tmp);
    if(ammo < 1 || ammo > 999) { SendClientMessage(playerid, COLOR_GREY, "Munitionsbetrag darf nicht niedriger als 1 und höher als 999 sein!"); return 1; }
    if (strcmp(gunid, "Fallschirm", true, strlen(gunid)) == 0)
    {
    gun = 46;
    guncharge = GunPrice[0][0]/100*modd;
    ammocharge = 0;
    }
    else if (strcmp(gunid, "Golfschläger", true, strlen(gunid)) == 0)
    {
    gun = 2; guncharge = GunPrice[1][0]/100*modd; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 2; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Polizeistock", true, strlen(gunid)) == 0)
    {
    gun = 3; guncharge = GunPrice[2][0]/100*modd; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 3; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Baseballschläger", true, strlen(gunid)) == 0)
    {
    gun = 5; guncharge = GunPrice[4][0]/100*modd; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 5; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Schaufel", true, strlen(gunid)) == 0)
    {
    gun = 6; guncharge = GunPrice[5][0]/100*modd; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 6; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Pool", true, strlen(gunid)) == 0)
    {
    gun = 7; guncharge = GunPrice[6][0]/100*modd; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 7; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Pistole", true, strlen(gunid)) == 0)
    {
    gun = 23; guncharge = GunPrice[13][0]/100*modd; ammocharge = GunPrice[25][0]*ammo;
    PlayerInfo[playerid][pGun2] = 23; PlayerInfo[playerid][pAmmo2] = ammo;
    }
    else if (strcmp(gunid, "DesertEagle", true, strlen(gunid)) == 0)
    {
    gun = 24; guncharge = GunPrice[15][0]/100*modd; ammocharge = GunPrice[25][0]*ammo;
    PlayerInfo[playerid][pGun2] = 24; PlayerInfo[playerid][pAmmo2] = ammo;
    }
    else if (strcmp(gunid, "MP5", true, strlen(gunid)) == 0)
    {
    gun = 29; guncharge = GunPrice[18][0]/100*modd; ammocharge = GunPrice[27][0]*ammo;
    PlayerInfo[playerid][pGun3] = 29; PlayerInfo[playerid][pAmmo3] = ammo;
    }
    else if (strcmp(gunid, "Schrottflinte", true, strlen(gunid)) == 0)
    {
    gun = 25; guncharge = GunPrice[19][0]/100*modd; ammocharge = GunPrice[26][0]*ammo;
    PlayerInfo[playerid][pGun3] = 25; PlayerInfo[playerid][pAmmo3] = ammo;
    }
    else if (strcmp(gunid, "AK47", true, strlen(gunid)) == 0)
    {
    gun = 30; guncharge = GunPrice[22][0]/100*modd; ammocharge = GunPrice[28][0]*ammo;
    PlayerInfo[playerid][pGun4] = 30; PlayerInfo[playerid][pAmmo4] = ammo;
    }
    else if (strcmp(gunid, "M4", true, strlen(gunid)) == 0)
    {
    gun = 31; guncharge = GunPrice[23][0]/100*modd; ammocharge = GunPrice[28][0]*ammo;
    PlayerInfo[playerid][pGun4] = 31; PlayerInfo[playerid][pAmmo4] = ammo;
    }
    else if (strcmp(gunid, "Rifle", true, strlen(gunid)) == 0)
    {
    gun = 33; guncharge = GunPrice[24][0]/100*modd; ammocharge = GunPrice[29][0]*ammo;
    PlayerInfo[playerid][pGun4] = 33; PlayerInfo[playerid][pAmmo4] = ammo;
    }


    else
    {
    SendClientMessage(playerid, COLOR_GRAD6, "Der Verkäufer sagt: Ich habe nie von so einer Waffe gehört!");
    return 1;
    }
    if((guncharge+ammocharge) > GetPlayerMoney(playerid))
    {
    format(infostring, 256, "Du hast keine %d$!",guncharge+ammocharge);
    SendClientMessage(playerid, COLOR_GRAD3, infostring);
    return 1;
    }
    if(GetPlayerMoney(playerid) < (guncharge+ammocharge))
    {
    SendClientMessage(playerid, COLOR_GREY, "Du hast nicht genug Geld!");
    return 1;
    }
    new payout = guncharge + ammocharge;
    format(infostring, 256, "Du hast eine/n %s mit %d Munition für %d$ gekauft!",gunid,ammo,payout);
    SendClientMessage(playerid, COLOR_GRAD3, infostring);
    if(location == 102 && IsACop(playerid)) { }
    else { GivePlayerCash(playerid, - payout); }
    BizzInfo[location-99][bTill] += payout;
    ExtortionBiz(location-99, payout);
    BizzInfo[location-99][bProducts]--;
    PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
    GivePlayerWeapon(playerid, gun, ammo);
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "%s hat Waffen für %d$ gekauft!", sendername, payout);
    printf("%s", string);
    PayLog(string);
    }
    else
    {
    SendClientMessage(playerid, COLOR_WHITE,"Du bist in keinem Shop.");
    return 1;
    }
    }
    return 1;
    }