[Ajuda] Converter um comando zcmd para strcmp
#1

Bem Galera. Eu Tou com ese problema como o topico ja diz.quero converte ese CMD: para strcmp.

pawn Код:
CMD:irpresente(playerid, params[])
{
    new LePresente;
    new Float:OP1[3], Float:OP2[3], Float:OP3[3], Float:OP4[3], Float:OP5[3];
    GetObjectPos(Presentes[0], OP1[0], OP1[1], OP1[2]);
    GetObjectPos(Presentes[1], OP2[0], OP2[1], OP2[2]);
    GetObjectPos(Presentes[2], OP3[0], OP3[1], OP3[2]);
    GetObjectPos(Presentes[3], OP4[0], OP4[1], OP4[2]);
    GetObjectPos(Presentes[4], OP5[0], OP5[1], OP5[2]);
    if(!IsPlayerAdmin(playerid)) return Msg(playerid, -1, "[FaiL] Vocк nгo й um Admin!");
    if(sscanf(params, "d", LePresente)) return Msg(playerid, -1, "Use: /irpresente [1-5]");
    if(LePresente < 1 || LePresente > 5) return Msg(playerid, -1, "Use: /irpresente [1-5]");
    if(PresentesON == false) return Msg(playerid, -1, "[FaiL] Desculpe, mas nгo foram dados presentes ainda");
    if(LePresente == 1)
    {
        if(Presente1 == true) return Msg(playerid, -1, "[FaiL] Este presente jб foi pego");
        SetPlayerPos(playerid, OP1[0], OP1[1], OP1[2]);
    }
    else if(LePresente == 2)
    {
        if(Presente2 == true) return Msg(playerid, -1, "[FaiL] Este presente jб foi pego");
        SetPlayerPos(playerid, OP2[0], OP2[1], OP2[2]);
    }
    else if(LePresente == 3)
    {
        if(Presente3 == true) return Msg(playerid, -1, "[FaiL] Este presente jб foi pego");
        SetPlayerPos(playerid, OP3[0], OP3[1], OP3[2]);
    }
    else if(LePresente == 4)
    {
        if(Presente4 == true) return Msg(playerid, -1, "[FaiL] Este presente jб foi pego");
        SetPlayerPos(playerid, OP4[0], OP4[1], OP4[2]);
    }
    else if(LePresente == 5)
    {
        if(Presente5 == true) return Msg(playerid, -1, "[FaiL] Este presente jб foi pego");
        SetPlayerPos(playerid, OP5[0], OP5[1], OP5[2]);
    }
    return 1;
}
Dese ja Agradeзo
Reply
#2

Isso que vocк quer ?

PHP код:
public OnPlayerCommandText(playeridcmdtext[])
{
    if(
strcmp("/irpresente"cmdtexttrue10) == 0)
    {    
        new 
LePresente;
        new 
Float:OP1[3], Float:OP2[3], Float:OP3[3], Float:OP4[3], Float:OP5[3];
        
GetObjectPos(Presentes[0], OP1[0], OP1[1], OP1[2]);
        
GetObjectPos(Presentes[1], OP2[0], OP2[1], OP2[2]);
        
GetObjectPos(Presentes[2], OP3[0], OP3[1], OP3[2]);
        
GetObjectPos(Presentes[3], OP4[0], OP4[1], OP4[2]);
        
GetObjectPos(Presentes[4], OP5[0], OP5[1], OP5[2]);
        if(!
IsPlayerAdmin(playerid)) return Msg(playerid, -1"[FaiL] Vocк nгo й um Admin!");
        if(
sscanf(params"d"LePresente)) return Msg(playerid, -1"Use: /irpresente [1-5]");
        if(
LePresente || LePresente 5) return Msg(playerid, -1"Use: /irpresente [1-5]");
        if(
PresentesON == false) return Msg(playerid, -1"[FaiL] Desculpe, mas nгo foram dados presentes ainda");
        if(
LePresente == 1)
        {
            if(
Presente1 == true) return Msg(playerid, -1"[FaiL] Este presente jб foi pego");
            
SetPlayerPos(playeridOP1[0], OP1[1], OP1[2]);
        }
        else if(
LePresente == 2)
        {
            if(
Presente2 == true) return Msg(playerid, -1"[FaiL] Este presente jб foi pego");
            
SetPlayerPos(playeridOP2[0], OP2[1], OP2[2]);
        }
        else if(
LePresente == 3)
        {
            if(
Presente3 == true) return Msg(playerid, -1"[FaiL] Este presente jб foi pego");
            
SetPlayerPos(playeridOP3[0], OP3[1], OP3[2]);
        }
        else if(
LePresente == 4)
        {
            if(
Presente4 == true) return Msg(playerid, -1"[FaiL] Este presente jб foi pego");
            
SetPlayerPos(playeridOP4[0], OP4[1], OP4[2]);
        }
        else if(
LePresente == 5)
        {
            if(
Presente5 == true) return Msg(playerid, -1"[FaiL] Este presente jб foi pego");
            
SetPlayerPos(playeridOP5[0], OP5[1], OP5[2]);
        }
        return 
1;
    }
    return 
0;

Reply
#3

nao sei se vai da certo mais ha uma forma de usar sscanf com strcmp eu tentei fazer isso tenta ae!

pawn Код:
if (strcmp(cmdtext,"/irpresente",true, 11) == 0){
    new LePresente;
    new Float:OP1[3],
        Float:OP2[3],
        Float:OP3[3],
        Float:OP4[3],
        Float:OP5[3];
    GetObjectPos(Presentes[0], OP1[0], OP1[1], OP1[2]);
    GetObjectPos(Presentes[1], OP2[0], OP2[1], OP2[2]);
    GetObjectPos(Presentes[2], OP3[0], OP3[1], OP3[2]);
    GetObjectPos(Presentes[3], OP4[0], OP4[1], OP4[2]);
    GetObjectPos(Presentes[4], OP5[0], OP5[1], OP5[2]);
    if(IsPlayerAdmin(playerid)){
        if(!sscanf(cmdtext, "d", LePresente)) {
            if(LePresente < 1 || LePresente > 5){
                if(PresentesON == false) {
                    if(LePresente == 1){
                    if(Presente1 == true) return SendClientMessage(playerid, -1, "[FaiL] Este presente jб foi pego");
                    SetPlayerPos(playerid, OP1[0], OP1[1], OP1[2]);
                    }
                    else if(LePresente == 2){
                    if(Presente2 == true) return SendClientMessage(playerid, -1, "[FaiL] Este presente jб foi pego");
                    SetPlayerPos(playerid, OP2[0], OP2[1], OP2[2]);
                    }
                    else if(LePresente == 3){
                    if(Presente3 == true) return SendClientMessage(playerid, -1, "[FaiL] Este presente jб foi pego");
                    SetPlayerPos(playerid, OP3[0], OP3[1], OP3[2]);
                    }
                    else if(LePresente == 4){
                    if(Presente4 == true) return SendClientMessage(playerid, -1, "[FaiL] Este presente jб foi pego");
                    SetPlayerPos(playerid, OP4[0], OP4[1], OP4[2]);
                    }
                    else if(LePresente == 5){
                    if(Presente5 == true) return SendClientMessage(playerid, -1, "[FaiL] Este presente jб foi pego");
                    SetPlayerPos(playerid, OP5[0], OP5[1], OP5[2]);
                }
                else
                SendClientMessage(playerid, -1, "[FaiL] Desculpe, mas nгo foram dados presentes ainda");
               
            }
            else
            SendClientMessage(playerid, -1, "Use: /irpresente [1-5]");
        }
        else
        SendClientMessage(playerid, -1, "Use: /irpresente [1-5]");
    }
    else
    SendClientMessage(playerid, -1, "[FaiL] Vocк nгo й um Admin!");
    return 1;
}
Reply
#4

vlw a todos. agradeзo mermo de coraзao todos ganharao rep
Reply
#5

mais funciono qual dos comandos funciono ?
Reply
#6

na verdade. ta dando error
Reply
#7

Vocк tera que usar uma strock pois o sscanf nгo vai funcionar creio eu
Reply
#8

zcmd e sscanf sгo totalmente diferentes e funcionam separadamente, qual o problema?
Reply
#9

Por que cargas d'бgua vocк quer transformar para strcmp? Continua com o ZCMD, mano. Й bem mais fбcil.

Nada de strcmp ou strtok. Continua no ZCMD e sscanf. Fica a dica.
Reply
#10

Quote:
Originally Posted by Rodney_Francalim
Посмотреть сообщение
Por que cargas d'бgua vocк quer transformar para strcmp? Continua com o ZCMD, mano. Й bem mais fбcil.

Nada de strcmp ou strtok. Continua no ZCMD e sscanf. Fica a dica.
Meu GM Contem: 71131 Linhas Todos os Comandos em strcmp. vai dmr seculos para troca para zcmd
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)