GetPlayerKeys

From SA-MP Wiki

Revision as of 09:28, 30 November 2010; view current revision
←Older revision | Newer revision→
Jump to: navigation, search


Check what keys a player is pressing


Parameters:
(playerid, &keys, &updown, &leftright)
playeridThe ID of the player to detect the keys of
keysA set of bits containing the player's key/button states
updownUp or Down analog value
leftrightLeft or Right analog value


ReturnsThis function doesn't return a specific value


The following example shows how you can regularly check the analog up/down/left/right values using OnPlayerUpdate.

public OnPlayerUpdate(playerid)
{
    new Keys,ud,lr;
    GetPlayerKeys(playerid,Keys,ud,lr);
 
    if(ud > 0) SendClientMessage(playerid, 0xFFFFFFFF, "DOWN");
    else if(ud < 0) SendClientMessage(playerid, 0xFFFFFFFF, "UP");
 
    if(lr > 0) SendClientMessage(playerid, 0xFFFFFFFF, "RIGHT");
    else if(lr < 0) SendClientMessage(playerid, 0xFFFFFFFF, "LEFT");
 
    return 1;
}

Key List

The reference below lists the defines gametext codes for the keys. Gametext codes can be used in text draws and the GameText* functions. The codes will appear as the key configured by the player.

Special Keys

OnPlayerKeyStateChange will be called each time a key state is changed. It will never be called for up, down, left and right.

Define
Value
Gametext-Key on Foot
Gametext-Key in Vehicle
KEY_ACTION
1
~k~~PED_ANSWER_PHONE~
~k~~VEHICLE_FIREWEAPON~-
KEY_CROUCH
2
~k~~PED_DUCK~
~k~~VEHICLE_HORN~
KEY_FIRE
4
~k~~PED_FIREWEAPON~
~k~~PED_FIREWEAPON_ALT~
~k~~VEHICLE_FIREWEAPON~
~k~~VEHICLE_FIREWEAPON_ALT~

KEY_SPRINT
8
~k~~PED_SPRINT~
~k~~VEHICLE_ACCELERATE~
KEY_SECONDARY_ATTACK
16
~k~~VEHICLE_ENTER_EXIT~
~k~~VEHICLE_FIREWEAPON_ALT~
KEY_JUMP
32
~k~~PED_JUMPING~
~k~~VEHICLE_BRAKE~
KEY_LOOK_RIGHT
64
-
~k~~VEHICLE_LOOKRIGHT~
KEY_HANDBRAKE
128
~k~~PED_LOCK_TARGET~
~k~~VEHICLE_HANDBRAKE~
KEY_LOOK_LEFT
256
-
~k~~VEHICLE_LOOKLEFT~
KEY_SUBMISSION
512
-
~k~~TOGGLE_SUBMISSIONS~
KEY_LOOK_BEHIND
512
~k~~PED_LOOKBEHIND~
~k~~VEHICLE_LOOKBEHIND~
KEY_WALK
1024
~k~~SNEAK_ABOUT~
-
KEY_AIM*
128
-
-
KEY_ANALOG_UP
2048
-
~k~~VEHICLE_TURRETUP~
KEY_ANALOG_DOWN
4096
-
~k~~VEHICLE_TURRETDOWN~
KEY_ANALOG_LEFT
8192
~k~~VEHICLE_LOOKLEFT~
~k~~VEHICLE_TURRETLEFT~
KEY_ANALOG_RIGHT
16384
~k~~VEHICLE_LOOKRIGHT~
~k~~VEHICLE_TURRETRIGHT~


[*] Key not defined in SA:MP includes. You must define this yourself.


Up/Down-Keys

Define
Value
Gametext-Key on Foot
Gametext-Key in Vehicle
KEY_UP
-128
~k~~GO_FORWARD~
~k~~VEHICLE_STEERUP~
KEY_DOWN
128
~k~~GO_BACK~
~k~~VEHICLE_STEERDOWN~

Left/Right-Keys

Define
Value
Gametext-Key on Foot
Gametext-Key in Vehicle
KEY_LEFT
-128
~k~~GO_LEFT~
~k~~VEHICLE_STEERLEFT~
KEY_RIGHT
128
~k~~GO_RIGHT~
~k~~VEHICLE_STEERRIGHT~

Links


Related Callbacks

The following callbacks might be useful as well, as they're related to this callback in one way or another.

Personal tools