Ammunation - Bist im keinem Laden

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 liebe breadfish User ich habe immer noch das Problem mit dem Ammunation das da kommt "du bist in keinem Laden". Ich hab jetzt öfters gelesen das es mit der location zu tun hat aber ich hab noch nicht kapiert, wie ich das machen muss.
    Ich hoffe es kann mir einer helfen.


    Hier einmal der pwncode:

    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][pLevel] <= 2)
    {
    SendClientMessage(playerid, COLOR_GRAD2," Du kannst dir erst ab Level 2 Waffen und mit einen Waffenschein kaufen!");
    return 1;
    }
    if(PlayerInfo[playerid][pGunLic] == 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du hast kein Waffenschein !");
    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 gunstring[256];
    new infostring[256];
    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~Ausverkauft", 5000, 1);
    return 1;
    }
    new modsss = 100;
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    format(string, sizeof(string), " /buygun [waffenname] [munition]");
    SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
    SendClientMessage(playerid, COLOR_WHITE,"*** Waffen & Munition ***");
    SendClientMessage(playerid, COLOR_GRAD2,string);
    format(gunstring, 256, "Waffen: Fallschirm ($%d) Golfschläger ($%d) Schlagstock ($%d) Baseballschläger ($%d) Schaufel ($%d) PoolCue ($%d)",
    GunPrice[0][0]/100*modsss,GunPrice[1][0]/100*modsss,GunPrice[2][0]/100*modsss,GunPrice[3][0]/100*modsss,GunPrice[4][0]/100*modsss,GunPrice[5][0]/100*modsss,GunPrice[6][0]/100*modsss);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring);
    format(gunstring, 256, "Waffen: VioletterDildo ($%d) WeißerDildo ($%d) LangerweißerDildo ($%d) WeißerDildo2 ($%d) Blumen ($%d) cane",
    GunPrice[7][0]/100*modsss,GunPrice[8][0]/100*modsss,GunPrice[9][0]/100*modsss,GunPrice[10][0]/100*modsss,GunPrice[11][0]/100*modsss,GunPrice[12][0]/100*modsss);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring);
    format(gunstring, 256, "Waffen: SD-Pistole ($%d) DesertEagle ($%d) MP5 ($%d)",
    GunPrice[13][0]/100*modsss,GunPrice[14][0]/100*modsss,GunPrice[15][0]/100*modsss,GunPrice[16][0]/100*modsss,GunPrice[17][0]/100*modsss,GunPrice[18][0]/100*modsss);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring);
    format(gunstring, 256, "Waffen: Shotgun ($%d) AK47 ($%d) M4 ($%d) Rifle ($%d)",
    GunPrice[19][0]/100*modsss,GunPrice[20][0]/100*modsss,GunPrice[21][0]/100*modsss,GunPrice[22][0]/100*modsss,GunPrice[23][0]/100*modsss,GunPrice[24][0]/100*modsss);
    SendClientMessage(playerid, COLOR_GRAD3, gunstring);
    format(gunstring, 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, gunstring);
    SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
    return 1;
    }
    strmid(gunid, tmp, 0, strlen(cmdtext), 255);
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    format(string, sizeof(string), " /buygun [Waffe] [Munition]");
    return 1;
    }
    new ammo = strval(tmp);
    if(ammo < 1 || ammo > 999) { SendClientMessage(playerid, COLOR_GREY, " Die Munition muss zwischen 1 und 999 sein !"); return 1; }
    if (strcmp(gunid, "Fallschirm", true, strlen(gunid)) == 0)
    {
    gun = 46;
    guncharge = GunPrice[0][0]/100*modsss;
    ammocharge = 0;
    }
    else if (strcmp(gunid, "Golfschläger", true, strlen(gunid)) == 0)
    {
    gun = 2; guncharge = GunPrice[1][0]/100*modsss; 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*modsss; 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*modsss; 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*modsss; 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*modsss; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 7; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "VioletterDildo", true, strlen(gunid)) == 0)
    {
    gun = 10; guncharge = GunPrice[7][0]/100*modsss; ammocharge = 0;
    PlayerInfo[playerid][pGun1] = 10; PlayerInfo[playerid][pAmmo1] = 1;
    }
    else if (strcmp(gunid, "Weißerdildo", true, strlen(gunid)) == 0)
    {
    gun = 11; guncharge = GunPrice[8][0]/100*modsss; 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*modsss; 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*modsss; 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*modsss; 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*modsss; 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*modsss; 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*modsss; 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*modsss; 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*modsss; 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*modsss; 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*modsss; ammocharge = GunPrice[28][0]*ammo;
    PlayerInfo[playerid][pGun4] = 31; PlayerInfo[playerid][pAmmo4] = ammo;
    }
    else if (strcmp(gunid, "Sniper", true, strlen(gunid)) == 0)
    {
    gun = 33; guncharge = GunPrice[24][0]/100*modsss; ammocharge = GunPrice[29][0]*ammo;
    PlayerInfo[playerid][pGun4] = 33; PlayerInfo[playerid][pAmmo4] = ammo;
    }
    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, " Du hast nicht $%d !",guncharge+ammocharge);
    SendClientMessage(playerid, COLOR_GRAD3, infostring);
    return 1;
    }
    if(GetPlayerMoney(playerid) < (guncharge+ammocharge))
    {
    SendClientMessage(playerid, COLOR_GREY, " Du hast zuwenig Geld dabei!");
    return 1;
    }
    new payout;
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pDonateRank] >= 1 || PlayerInfo[playerid][pVIPClub] >= 1)
    {
    payout = (guncharge + ammocharge)/50;
    format(infostring, 256, "Du hast eine %s mit %d Munition für $%d erworben",gunid,ammo,payout);
    SendClientMessage(playerid, COLOR_GRAD3, infostring);
    SendClientMessage(playerid, COLOR_GRAD3,"Du hast eine 50% Waffenvergünstigung bekommen, weil die ein Premium User bist, Danke!");
    GivePlayerMoney(playerid, - payout);
    }
    else
    {
    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);
    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);
    printf("%s", string);
    PayLog(string);
    }
    else
    {
    SendClientMessage(playerid, COLOR_WHITE,"Du bist nicht in einen Laden.");
    return 1;
    }
    }
    return 1;
    }

  • Aber buyarmor geht ja und der sieht so aus.


    if(strcmp(cmd,"/buyarmor",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pLevel] <= 4)
    {
    SendClientMessage(playerid, COLOR_RED, "Du musst mindestens Level 5 sein um hier einzukaufen");
    return 1;
    }
    if(GetPlayerMoney(playerid) < 1000)
    {
    SendClientMessage(playerid, COLOR_GREY, "*Nicht genug Geld,du brauchst 1000$!");
    return 1;
    }
    if(PlayerInfo[playerid][pGunLic] == 0)
    {
    SendClientMessage(playerid, COLOR_GREY, "*Du brauchst einen Waffenschein!");
    return 1;
    }
    //new location = PlayerInfo[playerid][pLocal];
    if(IsPlayerInRangeOfPoint(playerid,3.0,290.2523,-106.7863,1001.5156)||IsPlayerInRangeOfPoint(playerid,3.0,295.4237,-38.1667,1001.5156))//location == 101 || location == 102 || location == 103)
    {
    if(GetPlayerInterior(playerid) == 1 || GetPlayerInterior(playerid) == 6)
    {
    GivePlayerMoney(playerid,-1000);
    SetPlayerArmour(playerid, 100);
    SendClientMessage(playerid, COLOR_GREEN, "Schutzweste für 1000$ gekauft.");
    }
    else SendClientMessage(playerid, COLOR_WHITE, "Du bist in keinem Geschäft.");
    }
    }
    return 1;
    }

  • //new location = PlayerInfo[playerid][pLocal];
    if(IsPlayerInRangeOfPoint(playerid,3.0,290.2523,-106.7863,1001.5156)||IsPlayerInRangeOfPoint(playerid,3.0,295.4237,-38.1667,1001.5156))//location == 101 || location == 102 || location == 103)




    Da is das doch mit dem IsPlayerInRangeOfPoint?


    Denn das hast du bei /buygun nicht

  • Du kaufst ja beides an gleicher stelle oder?


    ]