SA-MP Forums Archive
[Error] goto - 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: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: [Error] goto (/showthread.php?tid=458229)



[Error] goto - oOFotherOo - 15.08.2013

Buenas amigos SA-MP, quisiera saber si hay un limite de la funciуn "goto".

Bueno digo esto porque he creado un script el cuбl emplea la funciуn goto y al aplicarse se paraliza todo el script del servidor, teste el cуdigo sin la funciуn "goto" y funciona perfectamente.

PD: Es algo rara mi pregunta pero la verdad que he puesto el cуdigo de mil maneras y no funciona pero cuando lo aplico sin el "goto" si funciona perfectamente.

Un saludo.


Respuesta: [Error] goto - DesingMyCry - 15.08.2013

Muestra el cуdigo, recuerda que esta funciуn no tiene fronteras en cuanto a las llaves, solo las llaves de los callbacks, stocks y demбs.


Respuesta: [Error] goto - oOFotherOo - 15.08.2013

pawn Код:
if(NegocioInfo[nid][nSeguro] == true)
              {
                 NegocioInfo[nid][nSeguro] = false;
                 TEXTS:format(MyString, sizeof(MyString),"Nombre: {FFFFFF}%s\n"SERVER_COLORD"Tipo: {FFFFFF}%s\n"SERVER_COLORD"Estado: {FFFFFF}%s\n"SERVER_COLORD"ID: {FFFFFF}%i", NegocioInfo[nid][nNombre], GetNegocioType(NegocioInfo[nid][nTipo]), NegocioInfo[nid][nSeguro]?("Cerrado"):("Abierto"), NegocioInfo[nid][nSQLID][0]);
                 UpdateDynamic3DTextLabelText(NegocioLabel[nid][0], SERVER_COLORT, MyString);
               }
               else NegocioInfo[nid][nSeguro] = true; goto TEXTS;
PD: Asi lo tengo, pero tambien probй con llaves y nada.

Un saludo y muchas gracias por su ayuda.


Respuesta: [Error] goto - DesingMyCry - 15.08.2013

En que callback esta ese cуdigo.


Respuesta: [Error] goto - oOFotherOo - 15.08.2013

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
En que callback esta ese cуdigo.
En un comando, utilizo YCMD:

pawn Код:
YCMD:seguro(playerid, params[], help)
{
    switch(YHash(params))
    {
         case _H<negocio>:
         {
               if(NegocioInfo[nid][nSeguro] == true)
              {
                 NegocioInfo[nid][nSeguro] = false;
                 TEXTS:format(MyString, sizeof(MyString),"Nombre: {FFFFFF}%s\n"SERVER_COLORD"Tipo: {FFFFFF}%s\n"SERVER_COLORD"Estado: {FFFFFF}%s\n"SERVER_COLORD"ID: {FFFFFF}%i", NegocioInfo[nid][nNombre], GetNegocioType(NegocioInfo[nid][nTipo]), NegocioInfo[nid][nSeguro]?("Cerrado"):("Abierto"), NegocioInfo[nid][nSQLID][0]);
                 UpdateDynamic3DTextLabelText(NegocioLabel[nid][0], SERVER_COLORT, MyString);
               }
               else NegocioInfo[nid][nSeguro] = true; goto TEXTS;
         }
         default: SendClienteMessage(playerid, -1, #Uso: /seguro [negocio]);
    }
    return 1;
}
Un saludo.


Respuesta: [Error] goto - DesingMyCry - 15.08.2013

Estas usando mal la estructura "else", recuerda que cuando la usas sin llaves la tomarб hasta el primer punto y coma. En otras palabras, tu cуdigo es lo mismo que escribir.

pawn Код:
YCMD:seguro(playerid, params[], help)
{
    switch(YHash(params))
    {
         case _H<negocio>:
         {
               if(NegocioInfo[nid][nSeguro] == true)
              {
                 NegocioInfo[nid][nSeguro] = false;
                 TEXTS:format(MyString, sizeof(MyString),"Nombre: {FFFFFF}%s\n"SERVER_COLORD"Tipo: {FFFFFF}%s\n"SERVER_COLORD"Estado: {FFFFFF}%s\n"SERVER_COLORD"ID: {FFFFFF}%i", NegocioInfo[nid][nNombre], GetNegocioType(NegocioInfo[nid][nTipo]), NegocioInfo[nid][nSeguro]?("Cerrado"):("Abierto"), NegocioInfo[nid][nSQLID][0]);
                 UpdateDynamic3DTextLabelText(NegocioLabel[nid][0], SERVER_COLORT, MyString);
               }
               else{ NegocioInfo[nid][nSeguro] = true; } goto TEXTS;
         }
         default: SendClienteMessage(playerid, -1, #Uso: /seguro [negocio]);
    }
    return 1;
}
Por lo que se repetirб infinitamente.


Respuesta: [Error] goto - oOFotherOo - 15.08.2013

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
Estas usando mal la estructura "else", recuerda que cuando la usas sin llaves la tomarб hasta el primer punto y coma. En otras palabras, tu cуdigo es lo mismo que escribir.

pawn Код:
YCMD:seguro(playerid, params[], help)
{
    switch(YHash(params))
    {
         case _H<negocio>:
         {
               if(NegocioInfo[nid][nSeguro] == true)
              {
                 NegocioInfo[nid][nSeguro] = false;
                 TEXTS:format(MyString, sizeof(MyString),"Nombre: {FFFFFF}%s\n"SERVER_COLORD"Tipo: {FFFFFF}%s\n"SERVER_COLORD"Estado: {FFFFFF}%s\n"SERVER_COLORD"ID: {FFFFFF}%i", NegocioInfo[nid][nNombre], GetNegocioType(NegocioInfo[nid][nTipo]), NegocioInfo[nid][nSeguro]?("Cerrado"):("Abierto"), NegocioInfo[nid][nSQLID][0]);
                 UpdateDynamic3DTextLabelText(NegocioLabel[nid][0], SERVER_COLORT, MyString);
               }
               else{ NegocioInfo[nid][nSeguro] = true; } goto TEXTS;
         }
         default: SendClienteMessage(playerid, -1, #Uso: /seguro [negocio]);
    }
    return 1;
}
Por lo que se repetirб infinitamente.
Muchisimas gracias seсor, no se que pasу pero ahorita use llaves y me hacia lo mismo y ahora no.

PD: Me ha salvado de repetir cуdigos se lo agradezco mucho.

Un saludo, que pase buen dia.