Como bloquear esto en OnPlayerKeyStateChange ...
#1

Buenas a Todos, Quisiera saber como podria blokear una tecla en OnPlayerKeyStateChange

lo kek iero hacer es ke una tecle , Ejemplo KEY_FIRE lo puedan usar pero cada vez ke lo usen se le vaya restando una variable, y al llegar al tope osea 0 ke no funcione mas la tecla.

no kiero ke me tire algun mensaje ni nada ke no funcione.

el metodo se como hacerlo, pero estoy medio confuso como ubicarlo, seria con un return 0 .

Ojalame entiendan y me puedan ayudar.

Desde ya muchas Gracias.
Reply
#2

pawn Код:
#define PRESSED(%0) \
    (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
   
new DISPARO[MAX_PLAYERS];

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{

    if( PRESSED(KEY_FIRE) ) {DISPARO[playerid]++;}
    if( DISPARO[playerid] >= 3 ) return false;


    SendClientMessage(playerid, -1, "Llamo la CallBack 'OnPlayerKeyStateChange' ");

    return 1;
}
bueno probe de esta manera y funciona.

PD: SendClientMessage lo coloque para saber si la llamaba desues de tener la variable en 3, no lo hace.
Reply
#3

No, no sirve eso por ke hay estas blokeando la funcino de la tecla no la tecla.

lo ke kiero hacer es blokear la tecla de la bocina de los vehciulos.
Yo hice esto pero no funciona :S

pawn Код:
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) {
        if(variable[vehicleid]<=0)
            if(pressed(KEY_CROUCH)) return false;
        }
    }
    if(pressed(KEY_CROUCH)) {
        if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) {
            if(variable[vehicleid]>=1) {
                variable[vehicleid]--;
            }
        }
    }
Reply
#4

Si lo que quieres es que no suene la bocina tienes un grave problema debido a que en pawn no puedes desactivar las funciones nativas de gta asi que es inutil que tanto le intentes poner en esa callback, lo mejor seria la creacion de un plugin aver si edte puede resolver tu problema
Reply
#5

Esa callback es llamada despuйs de haber pulsado la tecla, no puedes hacer que no funcione el claxon.
Reply
#6

Quote:
Originally Posted by [DOG]irinel1996
Посмотреть сообщение
Esa callback es llamada despuйs de haber pulsado la tecla, no puedes hacer que no funcione el claxon.
This callback is called when the state of any key except the movement keys (up, down, left, right) changes (i.e. are pressed or released).

Este callback es llamado cuando el estado de cualquier tecla, excepto las teclas de movimiento (arriba, abajo, izquierda, derecha) cambios (es decir, se presiona o se suelta).
Reply
#7

Quote:
Originally Posted by bytytus
Посмотреть сообщение
This callback is called when the state of any key except the movement keys (up, down, left, right) changes (i.e. are pressed or released).

Este callback es llamado cuando el estado de cualquier tecla, excepto las teclas de movimiento (arriba, abajo, izquierda, derecha) cambios (es decir, se presiona o se suelta).
Lo que te intento decir es que primero ejecuta su funciуn y luego llama la callback. Primero hace lo que le indica el San Andreas.
Reply
#8

Quote:
Originally Posted by [DOG]irinel1996
Посмотреть сообщение
Lo que te intento decir es que primero ejecuta su funciуn y luego llama la callback. Primero hace lo que le indica el San Andreas.
Maldita bocina .

Bueno, Gracias a todos .
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)