Problem mit /buygun

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
  • Hey ihr,


    sorry dass ich nochmal etwas fragen muss aber ich hba ein Bug herausgefunden dass man bei dem Ammunation naha Krankenhaus keine Waffen kaufen kann aber bei dem Ammu in der nähe vom glen park geht alles einwandfrei kann mir da jemand helfen hier ist der /buygun befehl


    if (strcmp(cmd, "/buygun", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(GetPlayerMoney(playerid) < 1)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du hast nicht genug Geld!");
    return 1;
    }
    if(PlayerInfo[playerid][pGunLic] == 0)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du besitzt keinen Waffenschein, und kannst dir somit keine Waffen kaufen!");
    return 1;
    }
    /*
    Ahhhhh meine Lieblingsstelle! xD Hier ist definiert das man ohne schein keine waffen kaufen kann


    <=0 bedeuted wenn du kein schein hast
    */
    new gun;
    new gunid[16];
    new gunstring1[256];
    new gunstring2[256];
    new gunstring3[256];
    new gunstring4[256];
    new gunstring5[256];
    new infostring[256];
    new guncharge;
    new ammocharge;
    new location = PlayerInfo[playerid][pLocal];
    if(location == 99 || location == 100 || location == 101 || location == 102)
    {
    if(BizzInfo[location-99][bProducts] <= 0)
    {
    GameTextForPlayer(playerid, "~r~Ausverkauft", 5000, 1);
    return 1;
    }
    new cmod = 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) Schlagstock ($%d) Baseballschläger ($%d) Schaufel ($%d) PoolCue ($%d)",
    GunPrice[0][0]/100*cmod,GunPrice[1][0]/100*cmod,GunPrice[2][0]/100*cmod,GunPrice[3][0]/100*cmod,GunPrice[4][0]/100*cmod,GunPrice[5][0]/100*cmod,GunPrice[6][0]/100*cmod);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring1);
    format(gunstring2, 256, "Waffen: Violetter Dildo ($%d) Weißer Dildo ($%d) LangerweißerDildo ($%d) WeißerDildo2 ($%d) Blumen ($%d)",
    GunPrice[7][0]/100*cmod,GunPrice[8][0]/100*cmod,GunPrice[9][0]/100*cmod,GunPrice[10][0]/100*cmod,GunPrice[11][0]/100*cmod,GunPrice[12][0]/100*cmod);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring2);
    format(gunstring3, 256, "Waffen: SD-Pistole ($%d) Deagle ($%d) MP5 ($%d)",
    GunPrice[13][0]/100*cmod,GunPrice[14][0]/100*cmod,GunPrice[15][0]/100*cmod,GunPrice[16][0]/100*cmod,GunPrice[17][0]/100*cmod,GunPrice[18][0]/100*cmod);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring3);
    format(gunstring4, 256, "Waffen: Shotgun ($1850) AK47 ($3000) M4 ($3000) Sniper ($250000) Messer ($15000 - Ab Level 15)",
    GunPrice[19][0]/100*cmod,GunPrice[20][0]/100*cmod,GunPrice[21][0]/100*cmod,GunPrice[22][0]/100*cmod,GunPrice[23][0]/100*cmod,GunPrice[24][0]/100*cmod,GunPrice[3][0]/100*cmod);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring4);
    format(gunstring5, 256, "Waffen: Pistolen Munition ($%d) Shotgun Munition ($%d) MP5 Munition ($%d) AK47/M4 Munition ($%d) Sniper Munition ($%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 [Waffe] [Munition]");
    return 1;
    }
    new ammo = strval(tmp);
    if(ammo < 1 || ammo > 999) { SendClientMessage(playerid, COLOR_GREY, "Die Munition deiner Waffe muss zwischen 1 und 999 liegen!"); return 1; }
    if (strcmp(gunid, "Fallschirm", true, strlen(gunid)) == 0)
    {
    gun = 46;
    guncharge = GunPrice[0][0]/100*cmod;
    ammocharge = 0;
    }
    else if (strcmp(gunid, "Golfschläger", true, strlen(gunid)) == 0)
    {
    gun = 2; guncharge = GunPrice[1][0]/100*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 2; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Schlagstock", true, strlen(gunid)) == 0)
    {
    gun = 3; guncharge = GunPrice[2][0]/100*cmod; 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*cmod; 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*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 6; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "poolcue", true, strlen(gunid)) == 0)
    {
    gun = 7; guncharge = GunPrice[6][0]/100*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 7; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Violetter Dildo", true, strlen(gunid)) == 0)
    {
    gun = 10; guncharge = GunPrice[7][0]/100*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 10; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Weißer Dildo", true, strlen(gunid)) == 0)
    {
    gun = 11; guncharge = GunPrice[8][0]/100*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 11; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "langerweißerdildo", true, strlen(gunid)) == 0)
    {
    gun = 12; guncharge = GunPrice[9][0]/100*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 12; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "weißerdildo2", true, strlen(gunid)) == 0)
    {
    gun = 13; guncharge = GunPrice[10][0]/100*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 13; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Blumen", true, strlen(gunid)) == 0)
    {
    gun = 14; guncharge = GunPrice[11][0]/100*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 14; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "cane", true, strlen(gunid)) == 0)
    {
    gun = 15; guncharge = GunPrice[12][0]/100*cmod; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 15; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "SD-Pistole", true, strlen(gunid)) == 0)
    {
    gun = 23; guncharge = GunPrice[13][0]/100*cmod; ammocharge = GunPrice[25][0]*ammo;
    PlayerInfo[playerid][pGun2] = 23; PlayerInfo[playerid][pAmmo2] = ammo;
    }
    else if (strcmp(gunid, "Deagle", true, strlen(gunid)) == 0)
    {
    gun = 24; guncharge = GunPrice[15][0]/100*cmod; 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*cmod; ammocharge = GunPrice[27][0]*ammo;
    PlayerInfo[playerid][pGun3] = 29; PlayerInfo[playerid][pAmmo3] = ammo;
    }
    else if (strcmp(gunid, "Shotgun", true, strlen(gunid)) == 0)
    {
    gun = 25; guncharge = GunPrice[19][0]/100*cmod; 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*cmod; 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*cmod; ammocharge = GunPrice[28][0]*ammo;
    PlayerInfo[playerid][pGun4] = 31; PlayerInfo[playerid][pAmmo4] = ammo;
    }
    else if (strcmp(gunid, "Sniper", true, strlen(gunid)) == 0)
    {
    gun = 34; guncharge = GunPrice[24][0]/100*cmod; ammocharge = GunPrice[29][0]*ammo;
    PlayerInfo[playerid][pGun4] = 34; PlayerInfo[playerid][pAmmo4] = ammo;
    }
    else if(strcmp(gunid,"Messer",true,strlen(gunid)) == 0)
    {
    if(PlayerInfo[playerid][pLevel] == 15) //autoban
    {
    gun = 34; guncharge = GunPrice[3][0]/100*cmod; ammocharge = GunPrice[29][0]*ammo;
    PlayerInfo[playerid][pGun4] = 3; PlayerInfo[playerid][pAmmo4] = ammo;
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD6,"Du benötigst mindestens Level 15, um dir ein Messer zu kaufen!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD6, "Ladenbesitzer: Ich habe noch nie von dieser Waffe gehört.");
    return 1;
    }
    if((guncharge+ammocharge) > GetPlayerMoney(playerid))
    {
    format(infostring, 256, "Dir fehlen $%d!",guncharge+ammocharge);
    SendClientMessage(playerid, COLOR_GRAD3, infostring);
    return 1;
    }
    if(GetPlayerMoney(playerid) < (guncharge+ammocharge))
    {
    SendClientMessage(playerid, COLOR_GREY, "Das funktioniert nicht!");
    return 1;
    }
    new payout = guncharge + ammocharge;
    format(infostring, 256, "Du hast eine %s mit %d Munition für $%d erworben.",gunid,ammo,payout);
    SendClientMessage(playerid, COLOR_GRAD3, infostring);
    if(location == 102 && IsACop(playerid)) { }
    else
    {
    SendClientMessage(playerid, COLOR_WHITE,"Vielen Dank für deinen Einkauf!");
    GivePlayerMoney(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 eingekauft Am BIZ: %d", sendername, payout, location-99);
    PayLog(string);
    }
    else
    {
    SendClientMessage(playerid, COLOR_WHITE,"Du bist in keinem Laden.");
    return 1;
    }
    }
    return 1;
    }