Detectar cuando una tecla esta siendo precionada y cuando se despreciona? o.O
#1

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!
Reply
#2

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

Leй la parte que dice:

Detecting Releasing key

Creo que es eso, lo que buscas.
Reply
#3

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

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)))
Reply
#5

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

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

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!!
Reply
#7

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

Utilize GetPlayerKeys con un timer, saludos
Reply
#9

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
}
Reply
#10

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...
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)