SA-MP Forums Archive
Comando deja de funcionar. - 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: Comando deja de funcionar. (/showthread.php?tid=628712)



Comando deja de funcionar. - Fagrinht - 13.02.2017

buenas, cuando le indico todos los parбmetros al comando ejm /crearcasa 1 1 200000 sale que es incorrecto el comando, no funciona, si no completo los parбmetros sale que le indique los parбmetros.

Код:
CMD:crearcasa(playerid, params[]){
	if(!EsDueno(playerid)) return 0;
	new Interior_, Tipo_, Precio_;
	if(sscanf(params, "ddd", Interior_, Tipo_, Precio_)) return SendInfoMessage(playerid, 0, "/crearcasa [Interior][Tipo(1 Dinero/2 Moneda)][Precio]");
	if(!(0 <= Interior_ <= sizeof(Interiores@Casas_)-1)){
		Mensaje(playerid, COL_PIEL, "Interiores:");
		Loop(i, sizeof(Interiores@Casas_)){
 	        new string[128];
			format(string, sizeof(string), "Interior ID: %d | Nombre: %s.", i, Interiores@Casas_[i][cInt2Nombre]);
			Mensaje(playerid, COL_BLANCO, string);
		}
		return 1;
	}
	if(!(1 <= Tipo_ <= 2)) return SendInfoMessage(playerid, 3, "El tipo de propiedad debe ser entre 1 = Dinero / 2 = Moneda.");
	if(Tipo_ == 1 && !(80000 <= Precio_ <= 1600000)) return SendInfoMessage(playerid, 3, "El precio debe ser superior a 80.000$ e inferior a 1.600.000$.");
	if(Tipo_ == 2 && !(16 <= Precio_ <= 120)) return SendInfoMessage(playerid, 3, "El precio debe ser superior a 16 Coins e inferior a 120 Coins.");
	//
	Loop(i, sizeof(InfoCasa_)){
		if(InfoCasa_[i][cPosiciones][0] == -1 || InfoCasa_[i][cPosiciones][0] == 0.0){
			GetPlayerPos(playerid, InfoCasa_[i][cPosiciones][0], InfoCasa_[i][cPosiciones][1], InfoCasa_[i][cPosiciones][2]);
			GetPlayerFacingAngle(playerid, InfoCasa_[i][cPosiciones][3]);
			format(InfoCasa_[i][cIntNombre], 32, Interiores@Casas_[params[0]][cInt2Nombre]);
			InfoCasa_[i][cInterior] = Interiores@Casas_[params[0]][cInt@Interior];
			InfoCasa_[i][cMundoVirtual] = i;
			InfoCasa_[i][cPrecio] = Precio_;
			InfoCasa_[i][cTipo] = Interior_;
			InfoCasa_[i][cCoins] = Tipo_;
			InfoCasa_[i][cEstado] = -1;
			InfoCasa_[i][cPosiciones][4] = Interiores@Casas_[params[0]][cIntPosiciones][0];
			InfoCasa_[i][cPosiciones][5] = Interiores@Casas_[params[0]][cIntPosiciones][1];
			InfoCasa_[i][cPosiciones][6] = Interiores@Casas_[params[0]][cIntPosiciones][2];
			InfoCasa_[i][cPosiciones][7] = Interiores@Casas_[params[0]][cIntPosiciones][3];
			Loop(x, 12){
				InfoCasa_[i][gPosiciones][x + 4] = Interiores@Casas_[params[0]][cIntPosiciones2][x];
			}
			casaText3D(i, 0);
			GuardarCasa_(i);
			return 1;
		}
	}
	return 1;
}



Re: Comando deja de funcionar. - BrianFaria - 13.02.2017

Prueba asi.
Код:
CMD:crearcasa(playerid, params[]){
	if(!EsDueno(playerid)) return 0;
	new Interior_, Tipo_, Precio_;
	if(sscanf(params, "ddd", Interior_, Tipo_, Precio_)) return SendInfoMessage(playerid, 0, "/crearcasa [Interior][Tipo(1 Dinero/2 Moneda)][Precio]");
	if(!(0 <= Interior_ <= sizeof(Interiores@Casas_)-1)){
		Mensaje(playerid, COL_PIEL, "Interiores:");
		Loop(i, sizeof(Interiores@Casas_)){
 	        new string[128];
			format(string, sizeof(string), "Interior ID: %d | Nombre: %s.", i, Interiores@Casas_[i][cInt2Nombre]);
			Mensaje(playerid, COL_BLANCO, string);
		}
		return 1;
	}
	if(!(1 <= Tipo_ <= 2)) return SendInfoMessage(playerid, 3, "El tipo de propiedad debe ser entre 1 = Dinero / 2 = Moneda.");
	if(Tipo_ == 1 && !(80000 <= Precio_ <= 1600000)) return SendInfoMessage(playerid, 3, "El precio debe ser superior a 80.000$ e inferior a 1.600.000$.");
	if(Tipo_ == 2 && !(16 <= Precio_ <= 120)) return SendInfoMessage(playerid, 3, "El precio debe ser superior a 16 Coins e inferior a 120 Coins.");
	//
	Loop(i, sizeof(InfoCasa_)){
		if(InfoCasa_[i][cPosiciones][0] == -1 || InfoCasa_[i][cPosiciones][0] == 0.0){
			GetPlayerPos(playerid, InfoCasa_[i][cPosiciones][0], InfoCasa_[i][cPosiciones][1], InfoCasa_[i][cPosiciones][2]);
			GetPlayerFacingAngle(playerid, InfoCasa_[i][cPosiciones][3]);
			format(InfoCasa_[i][cIntNombre], 32, Interiores@Casas_[params[0]][cInt2Nombre]);
			InfoCasa_[i][cInterior] = Interiores@Casas_[params[0]][cInt@Interior];
			InfoCasa_[i][cMundoVirtual] = i;
			InfoCasa_[i][cPrecio] = Precio_;
			InfoCasa_[i][cTipo] = Interior_;
			InfoCasa_[i][cCoins] = Tipo_;
			InfoCasa_[i][cEstado] = -1;
			InfoCasa_[i][cPosiciones][4] = Interiores@Casas_[params[0]][cIntPosiciones][0];
			InfoCasa_[i][cPosiciones][5] = Interiores@Casas_[params[0]][cIntPosiciones][1];
			InfoCasa_[i][cPosiciones][6] = Interiores@Casas_[params[0]][cIntPosiciones][2];
			InfoCasa_[i][cPosiciones][7] = Interiores@Casas_[params[0]][cIntPosiciones][3];
			Loop(x, 12){
				InfoCasa_[i][gPosiciones][x + 4] = Interiores@Casas_[params[0]][cIntPosiciones2][x];
			}
			casaText3D(i, 0);
			GuardarCasa_(i);
			return 0;
		}
	}
	return 1;
}



Respuesta: Re: Comando deja de funcionar. - Fagrinht - 14.02.2017

Quote:
Originally Posted by BrianFaria
Посмотреть сообщение
Prueba asi.
Код:
CMD:crearcasa(playerid, params[]){
	if(!EsDueno(playerid)) return 0;
	new Interior_, Tipo_, Precio_;
	if(sscanf(params, "ddd", Interior_, Tipo_, Precio_)) return SendInfoMessage(playerid, 0, "/crearcasa [Interior][Tipo(1 Dinero/2 Moneda)][Precio]");
	if(!(0 <= Interior_ <= sizeof(Interiores@Casas_)-1)){
		Mensaje(playerid, COL_PIEL, "Interiores:");
		Loop(i, sizeof(Interiores@Casas_)){
 	        new string[128];
			format(string, sizeof(string), "Interior ID: %d | Nombre: %s.", i, Interiores@Casas_[i][cInt2Nombre]);
			Mensaje(playerid, COL_BLANCO, string);
		}
		return 1;
	}
	if(!(1 <= Tipo_ <= 2)) return SendInfoMessage(playerid, 3, "El tipo de propiedad debe ser entre 1 = Dinero / 2 = Moneda.");
	if(Tipo_ == 1 && !(80000 <= Precio_ <= 1600000)) return SendInfoMessage(playerid, 3, "El precio debe ser superior a 80.000$ e inferior a 1.600.000$.");
	if(Tipo_ == 2 && !(16 <= Precio_ <= 120)) return SendInfoMessage(playerid, 3, "El precio debe ser superior a 16 Coins e inferior a 120 Coins.");
	//
	Loop(i, sizeof(InfoCasa_)){
		if(InfoCasa_[i][cPosiciones][0] == -1 || InfoCasa_[i][cPosiciones][0] == 0.0){
			GetPlayerPos(playerid, InfoCasa_[i][cPosiciones][0], InfoCasa_[i][cPosiciones][1], InfoCasa_[i][cPosiciones][2]);
			GetPlayerFacingAngle(playerid, InfoCasa_[i][cPosiciones][3]);
			format(InfoCasa_[i][cIntNombre], 32, Interiores@Casas_[params[0]][cInt2Nombre]);
			InfoCasa_[i][cInterior] = Interiores@Casas_[params[0]][cInt@Interior];
			InfoCasa_[i][cMundoVirtual] = i;
			InfoCasa_[i][cPrecio] = Precio_;
			InfoCasa_[i][cTipo] = Interior_;
			InfoCasa_[i][cCoins] = Tipo_;
			InfoCasa_[i][cEstado] = -1;
			InfoCasa_[i][cPosiciones][4] = Interiores@Casas_[params[0]][cIntPosiciones][0];
			InfoCasa_[i][cPosiciones][5] = Interiores@Casas_[params[0]][cIntPosiciones][1];
			InfoCasa_[i][cPosiciones][6] = Interiores@Casas_[params[0]][cIntPosiciones][2];
			InfoCasa_[i][cPosiciones][7] = Interiores@Casas_[params[0]][cIntPosiciones][3];
			Loop(x, 12){
				InfoCasa_[i][gPosiciones][x + 4] = Interiores@Casas_[params[0]][cIntPosiciones2][x];
			}
			casaText3D(i, 0);
			GuardarCasa_(i);
			return 0;
		}
	}
	return 1;
}
Sigue sin funcionar, el comando estб bien? serб otra cosa que le afecte al comando? es que no le veo sentido.


Respuesta: Comando deja de funcionar. - Fagrinht - 17.02.2017

Por favor...


Respuesta: Comando deja de funcionar. - Eloy - 17.02.2017

Revisa si estбs recorriendo los arrays correctamente y segъn tengo entendido que el sscanf2 te retorna 0 si se cumplen los parametros

Edit:

Tenia un problema similar y me dijeron esto

http://forum.sa-mp.com/showpost.php?...91&postcount=2


Respuesta: Comando deja de funcionar. - Fagrinht - 18.02.2017

No me solucionу el problema, dios que dolor de cabeza.


Respuesta: Comando deja de funcionar. - jhgr16 - 18.02.2017

Quote:
Originally Posted by Fagrinht
Посмотреть сообщение
No me solucionу el problema, dios que dolor de cabeza.
PHP код:
if(!EsDueno(playerid)) return 0
їcumples esa condiciуn?


Respuesta: Comando deja de funcionar. - Fagrinht - 18.02.2017

Vi una pelнcula llamada "Rescate a Marte" o algo asн, entonces, el tipo tras sobrevivir meses en parte solo y ser rescatado dijo en la tierra a unos alumnos, si quieres sobrevivir, resuelve problema tras problema, nunca te rindas! LO SOLUCIONЙ, FIN.


Respuesta: Comando deja de funcionar. - ErickV - 18.02.2017

Intenta con este y al usar el comando fнjate en la consola que nъmero sale.

PHP код:
CMD:crearcasa(playeridparams[])
{
    if(
IsPlayerConnected(playerid))
    {
        print(
"1");
        if(!
EsDueno(playerid))
        {
            print(
"2");
            return 
0;
        }
        new 
Interior_Tipo_Precio_;
        if(
sscanf(params"ddd"Interior_Tipo_Precio_))
        {
            print(
"3");
            
SendInfoMessage(playerid0"/crearcasa [Interior][Tipo(1 Dinero/2 Moneda)][Precio]");
            return 
1;
        }
        else
        {
            print(
"4");
            if(!(
<= Interior_ <= sizeof(Interiores@Casas_)-1))
            {
                
Mensaje(playeridCOL_PIEL"Interiores:");
                
Loop(isizeof(Interiores@Casas_))
                {
                     new 
string[128];
                    
format(stringsizeof(string), "Interior ID: %d | Nombre: %s."iInteriores@Casas_[i][cInt2Nombre]);
                    
Mensaje(playeridCOL_BLANCOstring);
                }
                return 
1;
            }
            print(
"5");
            if(!(
<= Tipo_ <= 2)) return SendInfoMessage(playerid3"El tipo de propiedad debe ser entre 1 = Dinero / 2 = Moneda.");
            if(
Tipo_ == && !(80000 <= Precio_ <= 1600000)) return SendInfoMessage(playerid3"El precio debe ser superior a 80.000$ e inferior a 1.600.000$.");
            if(
Tipo_ == && !(16 <= Precio_ <= 120)) return SendInfoMessage(playerid3"El precio debe ser superior a 16 Coins e inferior a 120 Coins.");
            
//
            
print("6");
            
Loop(isizeof(InfoCasa_)){
                if(
InfoCasa_[i][cPosiciones][0] == -|| InfoCasa_[i][cPosiciones][0] == 0.0){
                    
GetPlayerPos(playeridInfoCasa_[i][cPosiciones][0], InfoCasa_[i][cPosiciones][1], InfoCasa_[i][cPosiciones][2]);
                    
GetPlayerFacingAngle(playeridInfoCasa_[i][cPosiciones][3]);
                    
format(InfoCasa_[i][cIntNombre], 32Interiores@Casas_[params[0]][cInt2Nombre]);
                    
InfoCasa_[i][cInterior] = Interiores@Casas_[params[0]][cInt@Interior];
                    
InfoCasa_[i][cMundoVirtual] = i;
                    
InfoCasa_[i][cPrecio] = Precio_;
                    
InfoCasa_[i][cTipo] = Interior_;
                    
InfoCasa_[i][cCoins] = Tipo_;
                    
InfoCasa_[i][cEstado] = -1;
                    
InfoCasa_[i][cPosiciones][4] = Interiores@Casas_[params[0]][cIntPosiciones][0];
                    
InfoCasa_[i][cPosiciones][5] = Interiores@Casas_[params[0]][cIntPosiciones][1];
                    
InfoCasa_[i][cPosiciones][6] = Interiores@Casas_[params[0]][cIntPosiciones][2];
                    
InfoCasa_[i][cPosiciones][7] = Interiores@Casas_[params[0]][cIntPosiciones][3];
                    
Loop(x12){
                        
InfoCasa_[i][gPosiciones][4] = Interiores@Casas_[params[0]][cIntPosiciones2][x];
                    }
                    
casaText3D(i0);
                    
GuardarCasa_(i);
                    return 
1;
                }
            }
            print(
"7");
        }
    }
    return 
1;




Respuesta: Comando deja de funcionar. - ErickV - 18.02.2017

Parece que demore en responder, jaja.