GetPlayerKeys

From SA-MP Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 09:28, 30 November 2010
Simon (Talk | contribs)

← Previous diff
Revision as of 18:34, 19 October 2011
Garsino (Talk | contribs)

Next diff →
Line 35: Line 35:
=== Special Keys === === Special Keys ===
-OnPlayerKeyStateChange will be called each time a key state is changed. It will never be called for up, down, left and right.+OnPlayerKeyStateChange will be called each time a key state is changed. It will never be called for up, down, left, right, KEY_YES (Y), KEY_NO (N) and KEY_CTRL_BACK (H).
{{Key|'''Define'''|'''Value'''|'''Gametext-Key on Foot'''|'''Gametext-Key in Vehicle'''}} {{Key|'''Define'''|'''Value'''|'''Gametext-Key on Foot'''|'''Gametext-Key in Vehicle'''}}
Line 58: Line 58:
[*] Key not defined in SA:MP includes. You must define this yourself. [*] Key not defined in SA:MP includes. You must define this yourself.
 +[**] Support for this key was added in 0.3d. It will not be detectable in earlier versions.
Line 69: Line 70:
{{Key|KEY_LEFT|-128|~k~~GO_LEFT~|~k~~VEHICLE_STEERLEFT~}} {{Key|KEY_LEFT|-128|~k~~GO_LEFT~|~k~~VEHICLE_STEERLEFT~}}
{{Key|KEY_RIGHT|128|~k~~GO_RIGHT~|~k~~VEHICLE_STEERRIGHT~}} {{Key|KEY_RIGHT|128|~k~~GO_RIGHT~|~k~~VEHICLE_STEERRIGHT~}}
 +
 +=== Keys Since 0.3d ===
 +{{Key|'''Define'''|'''Value'''|'''Gametext-Key on Foot'''|'''Gametext-Key in Vehicle'''}}
 +{{Key|KEY_YES**|65536||}}
 +{{Key|KEY_NO**|131072||}}
 +{{Key|KEY_CTRL_BACK**|262144||}}
 +
== Links == == Links ==

Revision as of 18:34, 19 October 2011


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, right, KEY_YES (Y), KEY_NO (N) and KEY_CTRL_BACK (H).

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. [**] Support for this key was added in 0.3d. It will not be detectable in earlier versions.


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~

Keys Since 0.3d

Define
Value
Gametext-Key on Foot
Gametext-Key in Vehicle
KEY_YES**
65536
KEY_NO**
131072
KEY_CTRL_BACK**
262144


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