SA-MP Forums Archive
Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - 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: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O (/showthread.php?tid=478926)



Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - xDarkuzSx - 01.12.2013

Hola. necesito ayuda, estoy haciendo un filterscripts de "cleo cheats" por asi decirlo, todo funciona bien pero solo me falta una cosa:

saber cuando el usuario deja precionada la tecla de disparar o cualquier otra, y cuando la deja de precionar...

intente con HOLDING(KEY_FIRE) pero solo detecta cuando la preciono y si la deja precionada no hace la funcion..

alguien sabe? :c
Gracias!


Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - CrossOv3r - 01.12.2013

https://sampwiki.blast.hk/wiki/OnPlayerKeyStateChange

Leй la parte que dice:

Detecting Releasing key

Creo que es eso, lo que buscas.


Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - xDarkuzSx - 01.12.2013

Para el released me funciono, pero para detectar cuando la dejo precionada y seguir haciendo la funcion? :C


Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - OTACON - 01.12.2013

pawn Код:
//cuando presionas la tecla
#define pressed(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
pawn Код:
//cuando dejas de presionar la tecla
#define released(%0) (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))



Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - byNer0x - 01.12.2013

pawn Код:
if(newkeys == KEY_FIRE) // Cuando la presione
{
// Cуdigo
}

if(oldkeys == KEY_FIRE) // Cuando la deje de presionar
{
// Cуdigo
}



Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - xDarkuzSx - 01.12.2013

Quote:
Originally Posted by OTACON
Посмотреть сообщение
pawn Код:
//cuando presionas la tecla
#define pressed(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
pawn Код:
//cuando dejas de presionar la tecla
#define released(%0) (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
Quote:
Originally Posted by byNer0x
Посмотреть сообщение
pawn Код:
if(newkeys == KEY_FIRE) // Cuando la presione
{
// Cуdigo
}

if(oldkeys == KEY_FIRE) // Cuando la deje de presionar
{
// Cуdigo
}
no para nada ocupo eso D: pero ya lo solucione amigos, gracias por su ayuda, pero al final lo desifre yo mismo xD,
GRACIAS!!


Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - OTACON - 01.12.2013

dinos cual fue la solucion, la solucion le puede servir a otro usuario en un futuro.
saludos.



Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - xDarkuzSx - 02.12.2013

Utilize GetPlayerKeys con un timer, saludos


Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - Adoniiz - 02.12.2013

Quote:
Originally Posted by xDarkuzSx
Посмотреть сообщение
Utilize GetPlayerKeys con un timer, saludos
їPorque con un timer?

con PRESSED y RELEASED esta bien..

pawn Код:
if (PRESSED(tecla)) // cuando se esta presionando.
{
// codigo
}
else if (RELEASED(tecla)) // cuando se deja de presionar
{
// codigo
}



Respuesta: Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O - xDarkuzSx - 04.12.2013

Porque OnPlayerKeyStateChange solo ejecuta la funciуn 1 vez y no todas las veces, ejemplo dejo precionada la tecla y hay una funcion en el if de PRESSED, solo se ejecutara 1 vez y cuando la suelte se ejecutara la otra funciуn...