їEn quй me estoy equivocando?
#1

Cуmo dice el tнtulo

Comando:

Код:
CMD:forzar(playerid, params[])
{
	new forzar[32];
	if(sscanf(params, "s[32]", forzar))
	{
	SendClientMessage(playerid, COLOR_BLUED, "Info: {FFFFFF}/Forzar puerta.");
	return 1;
	}

	else if(strcmp(forzar, "puerta", true) == 0)
	{
	new string[128];
	if(IsACop(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"ЎNo puedes hacer esto!");
    if(RobarBanco == 0) return SendClientMessageEx(playerid, COLOR_WHITE, "ERROR: El sistema esta actualmente bloqueado!");
	if(Info[playerid][pMaskuse] == 0) return SendClientMessageEx(playerid, COLOR_WHITE, "No te has puesto una mascara!");
	if(Info[playerid][pPalanca] == 0) return SendClientMessageEx(playerid, COLOR_WHITE, "Necesitas una palanca para hacer esto!");
	if(ForzarTimer[playerid] > 0)
	{
	    format(string, sizeof(string), "Debes esperar %d segundos para volver a forzar una puerta.", ForzarTimer[playerid]);
	    SendClientMessageEx(playerid, COLOR_GREY, string);
    	return 1;
    }
    if(PlayerToPoint(4, playerid,1438.0670, -992.9431, 995.1141))
	{
        format(string, sizeof(string), "Administraciуn:{FFFFFF} %s esta robando el banco, observar rol.", GetPlayerNameEx(playerid));
        SendAdminMessage(COLOR_BLUED, string);
        format(string, sizeof(string), "%s toma su palanca y comienza a forzar la puerta.", GetPlayerNameEx(playerid));
		ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
	 	TogglePlayerControllable(playerid, 0);
		SetPVarInt(playerid, "IsFrozen", 1);
 		ForzandoPuerta[playerid] = CreateProgressBar(258.00, 137.00, 131.50, 3.19, COLOR_GREEN, 100.0);
 		SetProgressBarValue(ForzandoPuerta[playerid], 100.0);
		ShowProgressBarForPlayer(playerid, ForzandoPuerta[playerid]);
		SetTimerEx("ForzarPuerta", 1500, 0, "dd", playerid);
    }
    if(PlayerToPoint(4, playerid,1438.1071, -1002.6318, 995.1141))
	{
		SendFamilyMessage(5, COLOR_GREEN, "CNN: Tenemos una noticia de ultimo momento, el BANCO DE SAN ANDREAS esta siendo robado.");
     	format(string, sizeof(string), "%s toma su palanca y comienza a forzar la puerta.", GetPlayerNameEx(playerid));
	    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
        SendClientMessageEx(playerid, COLOR_TWRED, "Atenciуn: {FFFFFF}Un empleado del banco ha sonado las alarmas, la policia esta en camino!");
    	format(string, sizeof(string), "*Central: Estan intentando robar el BANCO CENTRAL, sospechoso identificado como: %s (Info en GPS).", GetPlayerNameEx(playerid));
	    SendRadioMessage(1, 0x8D8DFFFF, string);
        TogglePlayerControllable(playerid, 0);
    	SetPVarInt(playerid, "IsFrozen", 1);
        ForzandoPuerta[playerid] = CreateProgressBar(258.00, 137.00, 131.50, 3.19, COLOR_GREEN, 100.0);
    	SetProgressBarValue(ForzandoPuerta[playerid], 100.0);
    	ShowProgressBarForPlayer(playerid, ForzandoPuerta[playerid]);
    	SetTimerEx("ForzarPuerta", 1500, 0, "dd", playerid);
     }
	return 1;
}
function ForzarPuerta(playerid)
{
    new string[128];
 	ForzandoPuertaTiempo[playerid]--;
	SetProgressBarValue(ForzandoPuerta[playerid], GetProgressBarValue(ForzandoPuerta[playerid])-20.0);
	UpdateProgressBar(ForzandoPuerta[playerid], playerid);
	if(GetProgressBarValue(ForzandoPuerta[playerid]) > 10) SetTimerEx("ForzarPuerta", 1500, 0, "d", playerid);

	if(GetProgressBarValue(ForzandoPuerta[playerid]) == 50.0)
	{
 		SetProgressBarColor(ForzandoPuerta[playerid], COLOR_GRAD1);
   		UpdateProgressBar(ForzandoPuerta[playerid], playerid);
	}
	else if(GetProgressBarValue(ForzandoPuerta[playerid]) == 20.0)
	{
 		SetProgressBarColor(ForzandoPuerta[playerid], COLOR_RED);
		UpdateProgressBar(ForzandoPuerta[playerid], playerid);
	}
	else if(GetProgressBarValue(ForzandoPuerta[playerid]) <= 10.0)
	{
		DeletePVar(playerid, "IsFrozen");
		TogglePlayerControllable(playerid, 1);
  		DestroyProgressBar(ForzandoPuerta[playerid]);
    	ForzandoPuerta[playerid] = INVALID_BAR_ID;
        format(string, sizeof(string), "* %s logra abrir la puerta a la fuerza", GetPlayerNameEx(playerid));
		ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
        if(PlayerToPoint(2, playerid,1438.0670, -992.9431, 995.1141))
        {
		    MoveDynamicObject(puertasbanco1[0],1436.7870, -993.0631, 995.1141, 4.0);
      	    SetTimer("CerrarP1Banco1", 300000, 0);
      	    ForzarTimer[playerid] = 12;
      	    SendClientMessageEx(playerid, COLOR_WHITE, "** Esta puerta se cerrara automaticamente en 5 minutos, es mejor que te apures.");
      	}
        else if(PlayerToPoint(2, playerid,1438.1071, -1002.6318, 995.1141))
        {
		    MoveDynamicObject(puertasbanco1[1],1436.8470, -1002.6318, 995.1141, 4.0);
      	    SetTimer("CerrarP2Banco1", 300000, 0);
      	    ForzarTimer[playerid] = 12;
      	    SendClientMessageEx(playerid, COLOR_WHITE, "** Esta puerta se cerrara automaticamente en 5 minutos, es mejor que te apures.");
      	}
 	}
	return 1;
}
return 1;
}
Errores:

Код:
C:\Users\win7\Desktop\Test\gamemodes\Test.pwn(23193) : error 029: invalid expression, assumed zero
C:\Users\win7\Desktop\Test\gamemodes\Test.pwn(23193) : error 017: undefined symbol "ForzarPuerta"
C:\Users\win7\Desktop\Test\gamemodes\Test.pwn(23193) : error 029: invalid expression, assumed zero
C:\Users\win7\Desktop\Test\gamemodes\Test.pwn(23193) : fatal error 107: too many error messages on one line
Reply
#2

Imagino, que el "Function" estб creando automбticamente el "forward... Si es asн no deberнa haber problema
Reply
#3

Elimina la palabra "function", no se puede declarar una funciуn de esa manera. Lo que haces es declarar la funciуn "function" y despuйs aparece la palabra ForzarPuerta, que no se sabe lo que es. Por lo tanto para declarar funciones o usas la palabra reservada "stock" o no usas ninguna, pones le nombre directamente.

Si la estas usando un timer tienes que hacerlo de esta manera:
Код:
forward ForzarPuerta(playerid);
public ForzarPuerta(played){
    //Contenido
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)