[Ayuda] Problema de lуgica en cуdigo -
Shura - 03.07.2014
Hola gente , bueno yo lo que quiero hacer es 1 botуn para que la puerta se abra, es decir al apretar una tecla se abra 1 porton, pero que se quede abierto, y al apretarla de nuevo cuando yo quiera que se cierre dicha puerta... Intentй hacerlo pero solo se abre y no se cierra xD
PD: Las cordenadas estбn bien, me parece qe la lуgica usada mia estб muy mal, espero que me ayuden, ademбs cabe destacar que NO uso timmers en esta funciуn.
Код:
if(buttonid == BotonPuertaMecanicos == true)
{
if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado.");
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 17.35023, 5.0); //Abriendo Puerta (Mecanicos) << Entrada
}
else if (buttonid == BotonPuertaMecanicos == false)
{
if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado.");
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 24.55900, 5.0); //Cerrando Puerta (Mecanicos) << Entrada
}
Espero que me puedan ayudar, digamos que para el mismo boton que se abra cuando apriete la tecla, (Eso ya lo tengo echo) y que si vuelve a apretar el mismo boton qe capte qe este abierto y lo cierre! Y biseversa.
PD: doy +rep a la ayuda ya lo saben
Re: [Ayuda] Problema de lуgica en cуdigo -
Manuel_Franco - 03.07.2014
Prueba asi
if(buttonid == BotonPuertaMecanicos == true)
{
if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado.");
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 17.35023, 5.0); //Abriendo Puerta (Mecanicos) << Entrada
}
else
{
if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado.");
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 24.55900, 5.0); //Cerrando Puerta (Mecanicos) << Entrada
}
Y recuerda que en esta coordenada MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 24.55900, 5.0) debe ir exactamente la misma que llevas donde estas definiendo PuertaMecanicos
Respuesta: [Ayuda] Problema de lуgica en cуdigo -
Shura - 03.07.2014
Se ve que no leнste mi post

Nada que ver a la ayuda que pedн xD
Respuesta: [Ayuda] Problema de lуgica en cуdigo -
Juance - 03.07.2014
pawn Код:
if(buttonid == BotonPuertaMecanicos == true)
{
if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado.");
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 17.35023, 5.0); //Abriendo Puerta (Mecanicos) << Entrada
}
else
{
if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado.");
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 24.55900, 5.0); //Cerrando Puerta (Mecanicos) << Entrada
}
Arriba colocas que si es true que se abra, pero abajo no hace falta colocar eso. Colocбndole el "else" estбs diciendo que si la variable es contraria (false) se ejecute esa funciуn.
Respuesta: [Ayuda] Problema de lуgica en cуdigo -
Shura - 03.07.2014
Quote:
Originally Posted by Juance
pawn Код:
if(buttonid == BotonPuertaMecanicos == true) { if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado."); MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 17.35023, 5.0); //Abriendo Puerta (Mecanicos) << Entrada } else { if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado."); MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 24.55900, 5.0); //Cerrando Puerta (Mecanicos) << Entrada }
Arriba colocas que si es true que se abra, pero abajo no hace falta colocar eso. Colocбndole el "else" estбs diciendo que si la variable es contraria (false) se ejecute esa funciуn.
|
--------------------------
Gracias ahora lo pruebo! Para mi esta mal lo que hize en el sentido de que en una linea no se si se puede utilizar esto:
Код:
if(buttonid == BotonPuertaMecanicos == true)
osea dos veces el "==" entendes?
Respuesta: [Ayuda] Problema de lуgica en cуdigo -
Shura - 03.07.2014
No me sirviу tampoco
Respuesta: [Ayuda] Problema de lуgica en cуdigo -
Juance - 03.07.2014
pawn Код:
if(buttonid)
{
switch(BotonPuertaMecanicos)
{
case true:
{
if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado.");
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 17.35023, 5.0); //Abriendo Puerta (Mecanicos) << Entrada
}
default:
{
if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado.");
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 24.55900, 5.0); //Cerrando Puerta (Mecanicos) << Entrada
}
}
}
Re: [Ayuda] Problema de lуgica en cуdigo -
Cristian_Guerra - 03.07.2014
Buenas, eso es sencillo y solo es en un callback que es este: OnPlayerKeyStateChange(playerid, newkeys, oldkeys);
y te dejare aquн un codigo de como seria eso:
Код:
new PuertaMecanicosLA = 0; // En los news 0: Cerrada 1: Abierta
if(OnPlayerKeyStateChange(playerid, newkeys, oldkeys))
{
if(newkeys == KEY_YES)
{
if(IsPlayerInRangeOfPoint(playerid, 30.0, 2260.96704, -1342.05200, 24.55900)) // Remueve esto si la quieres abrir/cerrar donde quieras
{
if(!Team_Mecanicos(playerid)) return SendClientMessage(playerid, COLOR_GREY, "* Acceso Denegado.");
if(PuertaMecanicosLA == 0)
{
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 17.35023, 5.0);
}
else if(PuertaMecanicosLA == 1)
{
MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 24.55900, 5.0);
}
}
}
return 1;
}
Responde si tienes algъn problema, saludos.
NOTA: Se abre con la tecla 'Y'
Respuesta: [Ayuda] Problema de lуgica en cуdigo -
Shura - 03.07.2014
Cristian yo los tengo creados de otra forma, recuerda que uso el if(buttonid == BotonPuertaMecanicos para que despuйs se vean como objetos y aga la animaciуn
Respuesta: [Ayuda] Problema de lуgica en cуdigo -
Juance - 03.07.2014
Quote:
Originally Posted by Juance
pawn Код:
if(buttonid) { switch(BotonPuertaMecanicos) { case true: { if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado."); MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 17.35023, 5.0); //Abriendo Puerta (Mecanicos) << Entrada } default: { if(!Team_Mecanicos(playerid)) return SendClientMessageEx(playerid,COLOR_GREY,"* Acceso Denegado."); MoveDynamicObject(PuertaMecanicos,2260.96704, -1342.05200, 24.55900, 5.0); //Cerrando Puerta (Mecanicos) << Entrada } } }
|
Ahн te deje un cуdigo. їTe sirvio?.