[Ajuda] Poblema com Comando
#1

Olб pessoa, eu estou com um poblema com esse comando:

pawn Код:
if(strcmp(cmd,"/venderarmas",true)==0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pJob] != 9)
            {
                SendClientMessage(playerid,COLOR_GREY,"   Vocк nгo й um vendedor de armas !");
                return 1;
            }
            if(PlayerToPoint(40.0, playerid, 245.9469,75.8629,1003.6406))
            {
            SendClientMessage(playerid, COLOR_GREY, " Vocк nгo pode vender armas na DP! ");
            return 1;
            }
            new x_weapon[256],weapon[MAX_PLAYERS],ammo[MAX_PLAYERS],price[MAX_PLAYERS];
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD1, "USO: /venderarmas [playerid/Parte-do-Nick] [nome da arma]");
                SendClientMessage(playerid, COLOR_GREY, "Armas: flores(25) sdpistol(100) eagle(150) mp5(200) escopeta(200)");
                SendClientMessage(playerid, COLOR_GREY, "Armas: ak47(600) m4(600) rifle (600) paraquedas (100)");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            if (IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    x_weapon = strtok(cmdtext, idx);
                    if(!strlen(x_weapon))
                    {
                        SendClientMessage(playerid, COLOR_GREEN, "________________________________________________");
                        SendClientMessage(playerid, COLOR_WHITE, "*** Vender de armas ***");
                        SendClientMessage(playerid, COLOR_GREY, "USO: /venderarmas [playerid/Parte-do-Nick] [nome da arma]");
                        SendClientMessage(playerid, COLOR_GREY, "Armas: flores(25) sdpistol(100) eagle(200) mp5(200) escopeta(200)");
                        SendClientMessage(playerid, COLOR_GREY, "Armas: ak47(600) m4(600) rifle(600) paraquedas (100)");
                        SendClientMessage(playerid, COLOR_GREEN, "________________________________________________");
                        return 1;
                    }
                }
                if(strcmp(x_weapon,"sdpistol",true) == 0) { if(PlayerInfo[playerid][pMats] > 99) { weapon[playerid] = 23; price[playerid] = 100; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 23; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else if(strcmp(x_weapon,"flores",true) == 0) { if(PlayerInfo[playerid][pMats] > 24) { weapon[playerid] = 14; price[playerid] = 25; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 14; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else if(strcmp(x_weapon,"eagle",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 24; price[playerid] = 150; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 24; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else if(strcmp(x_weapon,"mp5",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 29; price[playerid] = 200; ammo[playerid] = 200; PlayerInfo[giveplayerid][pGun2] = 29; PlayerInfo[giveplayerid][pAmmo2] = 200; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else if(strcmp(x_weapon,"escopeta",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 25; price[playerid] = 200; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 25; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else if(strcmp(x_weapon,"ak47",true) == 0) { if(PlayerInfo[playerid][pMats] > 599) { weapon[playerid] = 30; price[playerid] = 600; ammo[playerid] = 250; PlayerInfo[giveplayerid][pGun2] = 30; PlayerInfo[giveplayerid][pAmmo2] = 250; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else if(strcmp(x_weapon,"m4",true) == 0) { if(PlayerInfo[playerid][pMats] > 599) { weapon[playerid] = 31; price[playerid] = 600; ammo[playerid] = 250; PlayerInfo[giveplayerid][pGun2] = 31; PlayerInfo[giveplayerid][pAmmo2] = 250; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else if(strcmp(x_weapon,"rifle",true) == 0) { if(PlayerInfo[playerid][pMats] > 599) { weapon[playerid] = 33; price[playerid] = 600; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 33; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else if(strcmp(x_weapon,"paraquedas",true) == 0) { if(PlayerInfo[playerid][pMats] > 99) { weapon[playerid] = 46; price[playerid] = 100; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun2] = 46; PlayerInfo[giveplayerid][pAmmo2] = 1; } else { SendClientMessage(playerid,COLOR_GREY,"   Materiais insuficientes para esta arma."); return 1; } }
                else { SendClientMessage(playerid,COLOR_GREY,"   Nome inexistente."); return 1; }
                if (ProxDetectorS(5.0, playerid, giveplayerid))
                {
                    if(giveplayerid == playerid)
                    {
                        SendClientMessage(playerid, COLOR_GRAD1, "   Vocк nгo pode vender armas a vocк mesmo");
                        return 1;
                    }
                    if(PlayerInfo[playerid][pMiserPerk] > 0)
                    {
                        new skill = 2 * PlayerInfo[playerid][pMiserPerk];
                        new mats = price[playerid] / 100;
                        price[playerid] -= (mats)*(skill);
                    }
                    ConsumingMoney[playerid] = 1;
                    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "   Vocк deu a %s uma %s com %d municхes usando %d materiais.", giveplayer,x_weapon, ammo[playerid], price[playerid]);
                    PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
                    SendClientMessage(playerid, COLOR_GRAD1, string);
                    format(string, sizeof(string), "   Vocк recebeu uma %s com %d de %s.", x_weapon, ammo[playerid], sendername);
                    SendClientMessage(giveplayerid, COLOR_GRAD1, string);
                    PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
                    format(string, sizeof(string), "%s recebeu armas de %s.", giveplayer, sendername);
                    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                    new gunname[100];
                    GetWeaponName(weapon[playerid], gunname, sizeof(gunname));
                    format(string, sizeof(string), "%s vendeu uma %s para %s.", sendername, gunname,giveplayer);
                    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                    GivePlayerWeapon(giveplayerid,weapon[playerid],ammo[playerid]);
                    PlayerInfo[playerid][pMats] -= price[playerid];
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GRAD1, "   Aproxime-se.");
                    return 1;
                }
            }
            else
            {
                format(string, sizeof(string), "   %d Invбlido", giveplayerid);
                SendClientMessage(playerid, COLOR_GRAD1, string);
            }
        }
        return 1;
    }
Oque acontece? Quando o player й Vendedor de Armas e digita /venderarmas o servidor INTEIRO buga, todos ficam num chat sу como se nгo houvesse mais gm no host e nenhum comando mais passa a pegar...
Oq seria isso?
Reply
#2

Vб ao seu gamemode, aperte Ctrl + F e procure por:
pawn Код:
x_weapon
Logo apуs, copie o cуdigo inteiro atй ele returnar e poste aqui.
Poste seu serverlog tambйm, faзa o seguinte:

Delete o serverlog.txt da pasta do seu servidor, ligue o servidor, logue no game e digite o comando.
Apуs isso poste aqui ele.

Abraзos
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)