[Ajuda] Por que esse Dialogo da crash no compilador?
#1

Aqui o cуdigo resolvido para quem estiver procurando possa achar com mais facilidade.


em destaque como Principal ajuda de: matheus_alcapone

Fiz alguns comentбrios, sobre o que acrescentei no cуdigo para ficar como quero realmente. Se comentei besteira vale lembrar que estou iniciando e sem muito tempo para estudar, tento como posso.
pawn Код:
if(strcmp(cmd, "/orgs", true) == 0 || strcmp(cmd, "/organizacoes", true) == 0)
    {
     new orgs[1000];// Aqui eu acrescentei 1000 pois o 256 nгo mostrava todas as 23 orgs. logo abaixo as restrinзхes pois no meu GM somente os Admin terгo esse cmd.
        if(IsPlayerConnected(playerid))
        {
            if (PlayerInfo[playerid][pAdmin] >= 1) // Ao meu entender: Checa se o player й admin maior ou igual a cargo de staff lvl 1
                {
                    if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1342)// Sendo maior ou diferente de 1342 ele exige que faзa o comando abaixo /trabalhar. Diferente de 1342 porque esse lvl й para o Dono e ele sendo dono nгo precisa trabalhar =D
                {
                    SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
                    return 1;
                }
                format(string, 128, " {9999ff}01 - 18єBPM \n");
                strcat(orgs,string);
                format(string, 128, " {666699}02 - ROTA\n");
                strcat(orgs,string);
                format(string, 128, " {00660c}03 - Exercito\n");
                strcat(orgs,string);
                format(string, 128, " {cc6666}04 - Medico\n");
                strcat(orgs,string);
                format(string, 128, " {0000cc}05 - Terceiro Comando Puro\n");
                strcat(orgs,string);
                format(string, 128, " {000000}06 - Gaviхes da Fiel\n");
                strcat(orgs,string);
                format(string, 128, " {00a5f6}07 - Prefeito\n");
                strcat(orgs,string);
                format(string, 128, " {a9a9a9}08 - Hitmans\n");
                strcat(orgs,string);
                format(string, 128, " {EDD893}09 - Reportes\n");
                strcat(orgs,string);
                format(string, 128, " {f68e00}10 - Taxista\n");
                strcat(orgs,string);
                format(string, 128, " {9999ff}11 - 1°CIA\n");
                strcat(orgs,string);
                format(string, 128, " {66ffff}12 - Mбfia Cosa Nostra\n");
                strcat(orgs,string);
                format(string, 128, " {006698}13 - Mбfia Yakuza\n");
                strcat(orgs,string);
                format(string, 128, " {33ff00}14 - Groove Street\n");
                strcat(orgs,string);
                format(string, 128, " {33aa33}15 - Mancha Verde\n");
                strcat(orgs,string);
                format(string, 128, " {9999ff}16 - 2°CIA\n");
                strcat(orgs,string);
                format(string, 128, " {9900cc}17 - Ballas\n");
                strcat(orgs,string);
                format(string, 128, " {ffff33}18 - Los Vagos\n");
                strcat(orgs,string);
                format(string, 128, " {e10000}19 - Comando vermelho\n");
                strcat(orgs,string);
                format(string, 128, " {ccff99}20 - Tugas\n");
                strcat(orgs,string);
                format(string, 128, " {7b0000}21 - Sons Of Anarchy\n");
                strcat(orgs,string);
                format(string, 128, " {ff6600}22 - Bombeiros\n");
                strcat(orgs,string);
                format(string, 128, " {6666ff}23 - Mayans\n");
                strcat(orgs,string);
                ShowPlayerDialog(playerid, 8723, DIALOG_STYLE_MSGBOX, "      [BNO] Organizaзхes", orgs, "Ok", "");
                }
            }
        return true;
    }
==================================== Minha Dъvida Era a Seguinte =========================================
Oi,

Estou querendo colocar meu /orgs || /organizacoes em Dialog, porem estб dando crash no compilador quando vou tentar colorir. Eu tbm nunca fui bom em colorir.

Dessa forma compila normal.
pawn Код:
if(strcmp(cmd, "/orgs", true) == 0 || strcmp(cmd, "/organizacoes", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if (PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1342)
                {
                    SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
                    return 1;
                }
            TogglePlayerControllable(playerid, 0);
            ShowPlayerDialog(playerid, 10, DIALOG_STYLE_MSGBOX, "       ORGANIZACOES   ", "18єBPM - 1\nROTA - 2\nExercito - 3\nMedico - 4\nTerceiro Comando Puro - 5\nGaviхes da Fiel - 6\nPrefeito - 7\nHitmans - 8\nReporter - 9\
            Taxista - 10\n1°CIA - 11\nMбfia Cosa Nostra - 12\nMбfia Yakuza - 13\nGroove Street - 14\nMancha Verde - 15\n2°CIA - 16\nBallas - 17\nLos Vagos - 18\nComando Vermelho - 19\nTugas - 20\
            Sons Of Anarchy - 21\nBombeiros - 22\nMayans - 23"
, "Fechar","Fehcar");
        }
        }
        return 1;
    }
Jб desta outra da crash no Pawno. OBS: a cor {9999ff} coloquei aqui somente para mostrar meu problema.
pawn Код:
if(strcmp(cmd, "/orgs", true) == 0 || strcmp(cmd, "/organizacoes", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if (PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1342)
                {
                    SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
                    return 1;
                }
            TogglePlayerControllable(playerid, 0);
            ShowPlayerDialog(playerid, 10, DIALOG_STYLE_MSGBOX, "       ORGANIZACOES   ", "{9999ff}18єBPM - 1\n{9999ff}ROTA - 2\n{9999ff}Exercito - 3\n{9999ff}Medico - 4\n{9999ff}Terceiro Comando Puro - 5\n{9999ff}Gaviхes da Fiel - 6\n{9999ff}Prefeito - 7\n{9999ff}Hitmans - 8\n{9999ff}Reporter - 9\
            {9999ff}Taxista - 10\n{9999ff}1°CIA - 11\n{9999ff}Mбfia Cosa Nostra - 12\n{9999ff}Mбfia Yakuza - 13\n{9999ff}Groove Street - 14\nMancha Verde - 15\n2°CIA - 16\nBallas - 17\nLos Vagos - 18\nComando Vermelho - 19\nTugas - 20\
            {9999ff}Sons Of Anarchy - 21\n{9999ff}Bombeiros - 22\n{9999ff}Mayans - 23"
, "Fechar","Fehcar");
        }
        }
        return 1;
    }
O que estou fazendo errado?

Se eu puder aproveitar o tуpico, gostaria de saber como retiro um dos argumentos do final. Mostra dois botхes Fechar, jб deletei um mas dai mostra um botгo preto.

Obrigado.
Reply
#2

ShowPlayerDialog muito grande...
Reply
#3

Sergio, como faria para mostrar com cores sem que de crash?
eu vi em um servidor pois o meu era no chat e ficava ruim de identificar quando havia muita conversa.
Reply
#4

Quote:
Originally Posted by loganout
Посмотреть сообщение
Sergio, como faria para mostrar com cores sem que de crash?
eu vi em um servidor pois o meu era no chat e ficava ruim de identificar quando havia muita conversa.
eu nun so o sergio mas vo ti mostra como pode fazer


PHP код:
   new Orgs[1000];
strins(Orgs,"{FF0000}ak por exemplo vc pode fazerndo assim \n e pode usar como se fosse um normau\n",strlen(ajuda));
strins(Orgs,"{FF0000}ak vc pode continuar e se nescessario pode por mas linhas iguais a essas\n",strlen(ajuda));
ShowPlayerDialog(playerid,8433DIALOG_STYLE_MSGBOX" AK vc pode mudar ",ajuda"Fechar"""); 
Reply
#5

Tenta assim...

PHP код:
if(strcmp(cmd"/orgs"true) == || strcmp(cmd"/organizacoes"true) == 0)
{
     new 
string[256];
     
format(stringsizeof(srting), "{9999ff}18єBPM-1\nROTA-2\nExercito-3\nMedico-4\nTerceiro Comando Puro-5\nGaviхes da Fiel-6\nPrefeito-7\nHitmans-8\nReporter-9\nTaxista-10\n1°CIA-11\nMбfia Cosa Nostra-12\nMбfia Yakuza-13\nGroove Street-14\nMancha Verde-15\n2°CIA-16\nBallas-17\nLos Vagos-18\nComando Vermelho -19\nTugas-20\nSons Of Anarchy-21\nBombeiros-22\nMayans-23");
     if(
IsPlayerConnected(playerid))
     {
          if (
PlayerInfo[playerid][pAdmin] >= 1)
          {
               if(
admtrampando[playerid] < && PlayerInfo[playerid][pAdmin] != 1342)
               {
                    
SendClientMessage(playeridCOLOR_GRAD1"Vocк nгo estб trabalhando! (/trabalhar)");
                    return 
1;
               }
               
TogglePlayerControllable(playerid0);
               
ShowPlayerDialog(playerid10DIALOG_STYLE_MSGBOX"ORGANIZACOES"string"Fechar""";
           }
     }
     return 
1;

Reply
#6

@edit
Reply
#7

Quote:
Originally Posted by jilead
Посмотреть сообщение
eu nun so o sergio mas vo ti mostra como pode fazer


PHP код:
   new Orgs[1000];
strins(Orgs,"{FF0000}ak por exemplo vc pode fazerndo assim \n e pode usar como se fosse um normau\n",strlen(ajuda));
strins(Orgs,"{FF0000}ak vc pode continuar e se nescessario pode por mas linhas iguais a essas\n",strlen(ajuda));
ShowPlayerDialog(playerid,8433DIALOG_STYLE_MSGBOX" AK vc pode mudar ",ajuda"Fechar"""); 
Eu fiz, porem quando vc coloca /orgs aparece certinho, mas digamos que vc fez o comando /orgs e fechou e "ops esqueci o ID da org" vai e faz /orgs novamente para rever o ID. Ele duplica hehe quanto mais /orgs vc fizer vai duplicando o dialog e ficando imenso hehehehe
pawn Код:
if(strcmp(cmdtext,"/orgs",true)==0)
    {
       new orgs[1000];
       strins(orgs,"{9999ff} 18єBPM - 1\n",strlen(orgs));
       strins(orgs,"{666699} ROTA - 2\n",strlen(orgs));
       strins(orgs,"{00660c} Exercito - 3\n",strlen(orgs));
       strins(orgs,"{cc6666} Medico - 4\n",strlen(orgs));
       strins(orgs,"{0000cc} Terceiro Comando Puro - 5\n",strlen(orgs));
       strins(orgs,"{000000} Gaviхes da Fiel - 6\n",strlen(orgs));
       strins(orgs,"{00a5f6} Prefeito - 7\n",strlen(orgs));
       strins(orgs,"{a9a9a9} Hitmans - 8\n",strlen(orgs));
       strins(orgs,"{ffc1c1} Reporter - 9\n",strlen(orgs));
       strins(orgs,"{f68e00} Taxista - 10\n",strlen(orgs));
       strins(orgs,"{9999ff} 1°CIA - 11\n",strlen(orgs));
       strins(orgs,"{66ffff} Mбfia Cosa Nostra - 12\n",strlen(orgs));
       strins(orgs,"{006698} Mбfia Yakuza - 13\n",strlen(orgs));
       strins(orgs,"{33ff00} Groove Street - 14\n",strlen(orgs));
       strins(orgs,"{33aa33} Mancha Verde - 15\n",strlen(orgs));
       strins(orgs,"{9999ff} 2°CIA - 16\n",strlen(orgs));
       strins(orgs,"{9900cc} Ballas - 17\n",strlen(orgs));
       strins(orgs,"{ffff33} Los Vagos - 18\n",strlen(orgs));
       strins(orgs,"{e10000} Comando Vermelho - 19\n",strlen(orgs));
       strins(orgs,"{ccff99} Tugas - 20\n",strlen(orgs));
       strins(orgs,"{7b0000} Sons Of Anarchy - 21\n",strlen(orgs));
       strins(orgs,"{ff6600} Bombeiros - 22\n",strlen(orgs));
       strins(orgs,"{6666ff} Mayans - 23\n",strlen(orgs));
       ShowPlayerDialog(playerid,8436, DIALOG_STYLE_MSGBOX, "{F60000}           ORGANIZAЗХES  ",orgs, "Fechar", "");
       return 1;
    }

Quote:
Originally Posted by UkTaKe
Посмотреть сообщение
Tenta assim...

PHP код:
if(strcmp(cmd"/orgs"true) == || strcmp(cmd"/organizacoes"true) == 0)
{
     new 
string[256];
     
format(stringsizeof(srting), "{9999ff}18єBPM-1\nROTA-2\nExercito-3\nMedico-4\nTerceiro Comando Puro-5\nGaviхes da Fiel-6\nPrefeito-7\nHitmans-8\nReporter-9\nTaxista-10\n1°CIA-11\nMбfia Cosa Nostra-12\nMбfia Yakuza-13\nGroove Street-14\nMancha Verde-15\n2°CIA-16\nBallas-17\nLos Vagos-18\nComando Vermelho -19\nTugas-20\nSons Of Anarchy-21\nBombeiros-22\nMayans-23");
     if(
IsPlayerConnected(playerid))
     {
          if (
PlayerInfo[playerid][pAdmin] >= 1)
          {
               if(
admtrampando[playerid] < && PlayerInfo[playerid][pAdmin] != 1342)
               {
                    
SendClientMessage(playeridCOLOR_GRAD1"Vocк nгo estб trabalhando! (/trabalhar)");
                    return 
1;
               }
               
TogglePlayerControllable(playerid0);
               
ShowPlayerDialog(playerid10DIALOG_STYLE_MSGBOX"ORGANIZACOES"string"Fechar""";
           }
     }
     return 
1;

deu uns erros e creio que vб dar crash na maneira que quero, pq ai vc colocou somente uma cor e no meu estou tentando fazer cada nome uma cor diferente.

=(
Reply
#8

pawn Код:
if(strcmp(cmdtext,"/orgs",true)==0)
 {
new string[128];
   strcat(string,"{00BFFF}18°BPM-1\nROTA-2");
   ShowPlayerDialog,(playerid, MEU_DIALOG,DIALOG_STYLE_LIST,"{FF0000}[ORGS]{FFFFFF} -Orgs do servidor",string,"Fechar","Sair");
no MEU_DIALOG vc pode muda define um no topo do seu gm tipo DIALOG_ORGS 1 (se vc tiver usando o 1 usa outro) ai vc adiciona o resto das orgs
Reply
#9

pawn Код:
if(strcmp(cmdtext,"/orgs",true)==0)
    {
       new orgs[1000]; /// Pra que tanta celulas? reduz para uns 128
       strins(orgs,"{9999ff} 18єBPM - 1\n",strlen(orgs));
       strins(orgs,"{666699} ROTA - 2\n",strlen(orgs));
       strins(orgs,"{00660c} Exercito - 3\n",strlen(orgs));
       strins(orgs,"{cc6666} Medico - 4\n",strlen(orgs));
       strins(orgs,"{0000cc} Terceiro Comando Puro - 5\n",strlen(orgs));
       strins(orgs,"{000000} Gaviхes da Fiel - 6\n",strlen(orgs));
       strins(orgs,"{00a5f6} Prefeito - 7\n",strlen(orgs));
       strins(orgs,"{a9a9a9} Hitmans - 8\n",strlen(orgs));
       strins(orgs,"{ffc1c1} Reporter - 9\n",strlen(orgs));
       strins(orgs,"{f68e00} Taxista - 10\n",strlen(orgs));
       strins(orgs,"{9999ff} 1°CIA - 11\n",strlen(orgs));
       strins(orgs,"{66ffff} Mбfia Cosa Nostra - 12\n",strlen(orgs));
       strins(orgs,"{006698} Mбfia Yakuza - 13\n",strlen(orgs));
       strins(orgs,"{33ff00} Groove Street - 14\n",strlen(orgs));
       strins(orgs,"{33aa33} Mancha Verde - 15\n",strlen(orgs));
       strins(orgs,"{9999ff} 2°CIA - 16\n",strlen(orgs));
       strins(orgs,"{9900cc} Ballas - 17\n",strlen(orgs));
       strins(orgs,"{ffff33} Los Vagos - 18\n",strlen(orgs));
       strins(orgs,"{e10000} Comando Vermelho - 19\n",strlen(orgs));
       strins(orgs,"{ccff99} Tugas - 20\n",strlen(orgs));
       strins(orgs,"{7b0000} Sons Of Anarchy - 21\n",strlen(orgs));
       strins(orgs,"{ff6600} Bombeiros - 22\n",strlen(orgs));
       strins(orgs,"{6666ff} Mayans - 23\n",strlen(orgs));
       ShowPlayerDialog(playerid,8436, DIALOG_STYLE_MSGBOX, "{F60000}           ORGANIZAЗХES  ",orgs, "Fechar", "");
       return 1;
    }
Reply
#10

Quote:
Originally Posted by Math3us
Посмотреть сообщение
pawn Код:
if(strcmp(cmdtext,"/orgs",true)==0)
 {
new string[128];
   strcat(string,"{00BFFF}18°BPM-1\nROTA-2");
   ShowPlayerDialog,(playerid, MEU_DIALOG,DIALOG_STYLE_LIST,"{FF0000}[ORGS]{FFFFFF} -Orgs do servidor",string,"Fechar","Sair");
no MEU_DIALOG vc pode muda define um no topo do seu gm tipo DIALOG_ORGS 1 (se vc tiver usando o 1 usa outro) ai vc adiciona o resto das orgs
Dessa forma й parecido com o que estou usando e da crash do jeito que eu quero (Cada nome de uma cor)

Quote:
Originally Posted by matheus_alcapone
Посмотреть сообщение
pawn Код:
if(strcmp(cmdtext,"/orgs",true)==0)
    {
       new orgs[1000]; /// Pra que tanta celulas? reduz para uns 128
       strins(orgs,"{9999ff} 18єBPM - 1\n",strlen(orgs));
       strins(orgs,"{666699} ROTA - 2\n",strlen(orgs));
       strins(orgs,"{00660c} Exercito - 3\n",strlen(orgs));
       strins(orgs,"{cc6666} Medico - 4\n",strlen(orgs));
       strins(orgs,"{0000cc} Terceiro Comando Puro - 5\n",strlen(orgs));
       strins(orgs,"{000000} Gaviхes da Fiel - 6\n",strlen(orgs));
       strins(orgs,"{00a5f6} Prefeito - 7\n",strlen(orgs));
       strins(orgs,"{a9a9a9} Hitmans - 8\n",strlen(orgs));
       strins(orgs,"{ffc1c1} Reporter - 9\n",strlen(orgs));
       strins(orgs,"{f68e00} Taxista - 10\n",strlen(orgs));
       strins(orgs,"{9999ff} 1°CIA - 11\n",strlen(orgs));
       strins(orgs,"{66ffff} Mбfia Cosa Nostra - 12\n",strlen(orgs));
       strins(orgs,"{006698} Mбfia Yakuza - 13\n",strlen(orgs));
       strins(orgs,"{33ff00} Groove Street - 14\n",strlen(orgs));
       strins(orgs,"{33aa33} Mancha Verde - 15\n",strlen(orgs));
       strins(orgs,"{9999ff} 2°CIA - 16\n",strlen(orgs));
       strins(orgs,"{9900cc} Ballas - 17\n",strlen(orgs));
       strins(orgs,"{ffff33} Los Vagos - 18\n",strlen(orgs));
       strins(orgs,"{e10000} Comando Vermelho - 19\n",strlen(orgs));
       strins(orgs,"{ccff99} Tugas - 20\n",strlen(orgs));
       strins(orgs,"{7b0000} Sons Of Anarchy - 21\n",strlen(orgs));
       strins(orgs,"{ff6600} Bombeiros - 22\n",strlen(orgs));
       strins(orgs,"{6666ff} Mayans - 23\n",strlen(orgs));
       ShowPlayerDialog(playerid,8436, DIALOG_STYLE_MSGBOX, "{F60000}           ORGANIZAЗХES  ",orgs, "Fechar", "");
       return 1;
    }
Com 1000 ou 128 ambas as formas o erro persiste.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)