if (PRESSED(KEY_ACTION)) gRampaGrande[playerid] = false;
else if (PRESSED(KEY_SECONDARY_ATTACK)) gRampaGrande[playerid] = true;
if (!gRampaGrande[playerid])
{
gIDRampa[playerid] = CreateDynamicObject(ID_RAMPA, ......);
gEnRampa[playerid] = true;
gTimerDestRampa[playerid] = SetTimerEx("DestruirRampa", TIEMPO_EN_DEST_RAMPA, false, "d", playerid);
}
else if (gRampaGrande[playerid])
{
gIDRampa[playerid] = CreateDynamicObject(ID_RAMPA_GRANDE, .....);
gEnRampa[playerid] = true;
gTimerDestRampa[playerid] = SetTimerEx("DestruirRampa", TIEMPO_EN_DEST_RAMPA, false, "d", playerid);
}
if (PRESSED(KEY_ACTION)) gRampaGrande[playerid] = false;
else if (PRESSED(KEY_SECONDARY_ATTACK)) gRampaGrande[playerid] = true;
if (!gRampaGrande[playerid])
{
gIDRampa[playerid] = CreateDynamicObject(ID_RAMPA, ......);
gEnRampa[playerid] = true;
gRampaGrande[playerid] = true;//activada
gTimerDestRampa[playerid] = SetTimerEx("DestruirRampa", TIEMPO_EN_DEST_RAMPA, false, "d", playerid);
}else
{
gIDRampa[playerid] = CreateDynamicObject(ID_RAMPA_GRANDE, .....);
gEnRampa[playerid] = true;
gRampaGrande[playerid] = false;//desactivada
gTimerDestRampa[playerid] = SetTimerEx("DestruirRampa", TIEMPO_EN_DEST_RAMPA, false, "d", playerid);
}
|
en DestruirRampa tienes el gRampaGrande[playerid] = false; ?
pawn Код:
|
public DestruirRampa(playerid)
{
if (gRampaActivada[playerid] && gEnRampa[playerid] == true)
{
DestroyDynamicObject(gIDRampa[playerid]);
KillTimer(gTimerDestRampa[playerid]);
gRampaGrande[playerid] = false;
}
return 1;
}
|
Hola, queria ver si me ayudan con un pequeсo bug que tengo. aver les cuento
mira cree el sistema de rampas bien, /rampa se activa etc, al apretar ctrl sale la rampa chiquita y al apretar otra tecla tendria que salir una mas grande. Pero al apretar la tecla W o otras salen y cada ves que aprieto sale otra y otra y no para esta bug. El problema cree que es al asignarle el valor a la variable gRampaGrande cuando teclea una tecla Код:
if (PRESSED(KEY_ACTION)) gRampaGrande[playerid] = false;
else if (PRESSED(KEY_SECONDARY_ATTACK)) gRampaGrande[playerid] = true;
if (!gRampaGrande[playerid])
{
gIDRampa[playerid] = CreateDynamicObject(ID_RAMPA, ......);
gEnRampa[playerid] = true;
gTimerDestRampa[playerid] = SetTimerEx("DestruirRampa", TIEMPO_EN_DEST_RAMPA, false, "d", playerid);
}
else if (gRampaGrande[playerid])
{
gIDRampa[playerid] = CreateDynamicObject(ID_RAMPA_GRANDE, .....);
gEnRampa[playerid] = true;
gTimerDestRampa[playerid] = SetTimerEx("DestruirRampa", TIEMPO_EN_DEST_RAMPA, false, "d", playerid);
}
por que la cosa es activar las rampas y si quieres rampa grande / chiquita aprietes la tecla que vos quieras. Saludos |
if (PRESSED(KEY_SUBMISSION) && gRampaActivada[playerid] == true)
{
if(gRampaGrande[playerid] == false)
{
gRampaGrande[playerid] = true;
// Rampas grandes activadas
}
else gRampaGrande[playerid] = false;
// Rampas grandes desactivadas
return 1;
}
if(PRESSED(KEY_FIRE) && gRampaActivada[playerid] == true && gEnRampa[playerid] == false)
{
if(gRampaGrande[playerid] == true) // Si rampa grande activada
{
gIDRampa[playerid] = CreateDynamicObject(ID_RAMPA_GRANDE, ......);
gEnRampa[playerid] = true;
gTimerDestRampa[playerid] = SetTimerEx("DestruirRampa", TIEMPO_EN_DEST_RAMPA, false, "d", playerid);
return 1;
}
else // Si no esta activada
{
gIDRampa[playerid] = CreateDynamicObject(ID_RAMPA, ......);
gEnRampa[playerid] = true;
gTimerDestRampa[playerid] = SetTimerEx("DestruirRampa", TIEMPO_EN_DEST_RAMPA, false, "d", playerid);
return 1;
}
}
public DestruirRampa(playerid)
{
if (gRampaActivada[playerid] && gEnRampa[playerid] == true)
{
DestroyDynamicObject(gIDRampa[playerid]);
KillTimer(gTimerDestRampa[playerid]);
gEnRampa[playerid] = false;
}
return 1;
}
if (PRESSED(KEY_ACTION)) // Si esta apretу KEY_ACTION la rampa grande se desabilitarб (false)
gRampaGrande[playerid] = false;
else if (PRESSED(KEY_SECONDARY_ATTACK)) // Si esta apretу KEY_SECONDARY_ATTACKla rampa grande se habilitarб (true)
gRampaGrande[playerid] = true;
else
return 1; // De lo contrario termina el callback