SA-MP Forums Archive
[Ajuda] Comandos - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Comandos (/showthread.php?tid=480569)



Comandos - GReeN_WOoD - 11.12.2013

A maioria dos meus meus comandos executam normalmente, outros exeutam mas aparece logo depois "COMANDO INVБLIDO".

PHP код:
public OnPlayerCommandPerformed(playeridcmdtext[], success){
    if(!
success) return @M_Thiago(playerid, @BARRO"COMANDO INVБLIDO.");
    return 
true;

PHP код:
public OnPlayerCommandReceived(playeridcmdtext[]){
    if(
Th_JogadorLogado[playerid] <= 1) return @M_Thiago(playerid, @BARRO"(Virtual Street) • Vocк nгo estб logado e nгo pode usar comandos.");
    return 
true;



Um exemplo de comando que executa normalmente:


PHP код:
CMD:comprimentar(playeridparams[]){
    new 
animidfdp;
    if(
sscanf(params"i"animidfdp)) return @M_Thiago(playerid, @CINZA,"(CMD) • /comprimentar [1 а 3]");
    if(
animidfdp || animidfdp ) return @M_Thiago(playerid, @CINZA"(INFO) • Comprimentos de 1 а 3.");
    switch(
animidfdp){
        case 
1ApplyAnimation(playerid,"GANGS","hndshkba",4.0,0,0,0,0,0);
           case 
2ApplyAnimation(playerid,"GANGS","hndshkda",4.0,0,0,0,0,0);
           case 
3ApplyAnimation(playerid,"GANGS","hndshkfa_swt",4.0,0,0,0,0,0);
    }
    return 
true;

Exemplo de comando que executa, mas logo apуs da COMANDO INVБLIDO.

PHP код:
CMD:comprarcarro(playerid){
    if(
ThiagoStreet[playerid][Th_Vip] == 0) return @M_Thiago(playerid, @CINZA"(Virtual Street) • Vocк nгo й um jogador VIP."), RemovePlayerFromVehicle(playerid), @C_Thiago(playerid1);
    if(
ThiagoStreet[playerid][Th_ChaveCarro] != && ThiagoStreet[playerid][Th_Vip] == 1) return @M_Thiago(playerid, @CINZA"(Virtual Street) • Vocк jб possui um carro VIP."), RemovePlayerFromVehicle(playerid), @C_Thiago(playerid1);
    if(
ThiagoStreet[playerid][Th_Level] < 1) return @M_Thiago(playerid, @CINZA"Vocк Precisa ter nivel 2 para comprar o veiculo"), RemovePlayerFromVehicle(playerid), @C_Thiago(playerid1);
    new 
vehid GetPlayerVehicleID(playerid);
    for(new 
0sizeof(CarInfo); i++){
        if(
CarInfo[i][ownedvehicle] == vehid){
            if(
CarInfo[i][cOwned] == 1) return @M_Thiago(playerid, @CINZA"(Virtual Street) • Este carro VIP jб tem dono.");
            if(
ThiagoStreet[playerid][Th_ChaveCarro] == 0){
                if(
GetPlayerMoneyEx(playerid) < CarInfo[i][cValue]) return @M_Thiago(playerid, @CINZA"(Virtual Street) • Vocк nгo tem dinheiro suficiente."), RemovePlayerFromVehicle(playerid), @C_Thiago(playerid1);
                
ThiagoStreet[playerid][Th_ChaveCarro] = i;
                
ThiagoStreet[playerid][Th_Veiculo] = i;
                
CarInfo[i][cOwned] = 1;
                
CarOffered[playerid]= 0;
                
strmid(CarInfo[i][cOwner], Nome(playerid), 0strlen(Nome(playerid)), 24);
                
GivePlayerMoneyEx(playerid, -CarInfo[i][cValue]);
                
GameTextForPlayer(playerid"~y~Voce comprou um carro ~b~~h~~h~Vip!"50003);
                
PlayerPlaySound(playerid11470.00.00.0);
                @
M_Thiago(playerid, @CINZA"Parabйns, vocк agora tem um lindo carro!");
                @
M_Thiago(playerid, @CINZA"Em caso de dъvidas, use o comando /ajuda");
                @
C_Thiago(playerid1);
                
Atualizar3Dtexts();
                
SalvarCarros();
                return 
true;
            }
        }
    }
    return 
true;

Agradeзo а quem ajudar =)


Re: Comandos - Input - 11.12.2013

Nгo sei se pode ser.. mas:
pawn Код:
CMD:comprarcarro(playerid){
    if(ThiagoStreet[playerid][Th_Vip] == 0) return @M_Thiago(playerid, @CINZA, "(Virtual Street) • Vocк nгo й um jogador VIP."), RemovePlayerFromVehicle(playerid), @C_Thiago(playerid, 1);
    if(ThiagoStreet[playerid][Th_ChaveCarro] != 0 && ThiagoStreet[playerid][Th_Vip] == 1) return @M_Thiago(playerid, @CINZA, "(Virtual Street) • Vocк jб possui um carro VIP."), RemovePlayerFromVehicle(playerid), @C_Thiago(playerid, 1);
    if(ThiagoStreet[playerid][Th_Level] < 1) return @M_Thiago(playerid, @CINZA, "Vocк Precisa ter nivel 2 para comprar o veiculo"), RemovePlayerFromVehicle(playerid), @C_Thiago(playerid, 1);
    new vehid = GetPlayerVehicleID(playerid);
    for(new i = 0; i < sizeof(CarInfo); i++){
        if(CarInfo[i][ownedvehicle] == vehid){
            if(CarInfo[i][cOwned] == 1) return @M_Thiago(playerid, @CINZA, "(Virtual Street) • Este carro VIP jб tem dono.");
            if(ThiagoStreet[playerid][Th_ChaveCarro] == 0){
                if(GetPlayerMoneyEx(playerid) < CarInfo[i][cValue]) return @M_Thiago(playerid, @CINZA, "(Virtual Street) • Vocк nгo tem dinheiro suficiente."), RemovePlayerFromVehicle(playerid), @C_Thiago(playerid, 1);
                ThiagoStreet[playerid][Th_ChaveCarro] = i;
                ThiagoStreet[playerid][Th_Veiculo] = i;
                CarInfo[i][cOwned] = 1;
                CarOffered[playerid]= 0;
                strmid(CarInfo[i][cOwner], Nome(playerid), 0, strlen(Nome(playerid)), 24);
                GivePlayerMoneyEx(playerid, -CarInfo[i][cValue]);
                GameTextForPlayer(playerid, "~y~Voce comprou um carro ~b~~h~~h~Vip!", 5000, 3);
                PlayerPlaySound(playerid, 1147, 0.0, 0.0, 0.0);
                @M_Thiago(playerid, @CINZA, "Parabйns, vocк agora tem um lindo carro!");
                @M_Thiago(playerid, @CINZA, "Em caso de dъvidas, use o comando /ajuda");
                @C_Thiago(playerid, 1);
                Atualizar3Dtexts();
                SalvarCarros();
            }
        }
    }
    return true;
}



Re: Comandos - GReeN_WOoD - 11.12.2013

Jб fiz assim tambйm amigo, continua a mesma coisa..
E nгo й sу este comando, tem alguns outros tambйm.



Re: Comandos - GReeN_WOoD - 11.12.2013

Up. =)


Re: Comandos - zG - 12.12.2013

UP. alguem ajuda ele :]


Re: Comandos - Kuddy - 12.12.2013

Use o crashdetect, provavelmente seu codigo esta crashando em algum ponto.


Re: Comandos - GReeN_WOoD - 12.12.2013

Olha o que deu:





@Deu um de SSCANF tambйm, sу que troquei a include de sscanf2 para sscanf e resolveu o problema, agora falta esses aн. Alguйm ? Grato.


Re: Comandos - Kuddy - 12.12.2013

Stack overflow.

Isso acontece quando й acessado um valor inexistente de uma array. Exemplo:

pawn Код:
new array[10];
new x = 11;
new y = array[x];
print("teste"); // este cуdigo nгo serб exibido pois o cуdigo acima crashou
Pra saber aonde estб o crash, faзa debug.

pawn Код:
print("1");
new array[10];
print("2");
new x = 11;
print("3");
new y = array[x];
print("4");
Ele irб executar os prints atй o ponto de crashar, no caso acima irб printar atй o 3.


Re: Comandos - GReeN_WOoD - 12.12.2013

Fiz todos os passos, debug e etc.. Problema resolvido, era um loop no ongamemodeinit, vlw Kuddy.. +REP.