Difference between revisions of "love.keypressed"

m (Examples)
(Updated for 0.10.0)
Line 1: Line 1:
 
Callback function triggered when a key is pressed.
 
Callback function triggered when a key is pressed.
 +
 +
== Function ==
 +
{{newin|[[0.10.0]]|100|type=variant}}
 +
=== Synopsis ===
 +
<source lang="lua">
 +
love.keypressed( key, scancode, isrepeat )
 +
</source>
 +
=== Arguments ===
 +
{{param|KeyConstant|key|Character of the key pressed.}}
 +
{{param|Scancode|scancode|The scancode representing the key that was pressed.}}
 +
{{param|boolean|isrepeat|Whether this keypress event is a repeat. The delay between key repeats depends on the user's system settings.}}
 +
=== Returns ===
 +
Nothing.
 +
=== Notes ===
 +
[[Scancode]]s are keyboard layout-independent, so the scancode "w" will be generated if the key in the same place as the "w" key on an [https://en.wikipedia.org/wiki/British_and_American_keyboards#/media/File:KB_United_States-NoAltGr.svg American keyboard] is pressed, no matter what the key is labelled or what the user's operating system settings are.
 +
 +
Key repeat needs to be enabled with [[love.keyboard.setKeyRepeat]] for repeat keypress events to be received. This does not affect [[love.textinput]].
 +
 
== Function ==
 
== Function ==
 
{{newin|[[0.9.0]]|090|type=variant}}
 
{{newin|[[0.9.0]]|090|type=variant}}
 +
{{oldin|[[0.10.0]]|100|type=variant}}
 
=== Synopsis ===
 
=== Synopsis ===
 
<source lang="lua">
 
<source lang="lua">
Line 13: Line 32:
 
=== Notes ===
 
=== Notes ===
 
Key repeat needs to be enabled with [[love.keyboard.setKeyRepeat]] for repeat keypress events to be received.
 
Key repeat needs to be enabled with [[love.keyboard.setKeyRepeat]] for repeat keypress events to be received.
 +
 
== Function ==
 
== Function ==
 
{{oldin|[[0.9.0]]|090|type=variant|text=Unicode text input is now handled separately via [[love.textinput]]}}
 
{{oldin|[[0.9.0]]|090|type=variant|text=Unicode text input is now handled separately via [[love.textinput]]}}

Revision as of 02:14, 17 December 2015

Callback function triggered when a key is pressed.

Function

Available since LÖVE 0.10.0
This variant is not supported in earlier versions.

Synopsis

love.keypressed( key, scancode, isrepeat )

Arguments

KeyConstant key
Character of the key pressed.
Scancode scancode
The scancode representing the key that was pressed.
boolean isrepeat
Whether this keypress event is a repeat. The delay between key repeats depends on the user's system settings.

Returns

Nothing.

Notes

Scancodes are keyboard layout-independent, so the scancode "w" will be generated if the key in the same place as the "w" key on an American keyboard is pressed, no matter what the key is labelled or what the user's operating system settings are.

Key repeat needs to be enabled with love.keyboard.setKeyRepeat for repeat keypress events to be received. This does not affect love.textinput.

Function

Available since LÖVE 0.9.0
This variant is not supported in earlier versions.
Removed in LÖVE 0.10.0
This variant is not supported in that and later versions.

Synopsis

love.keypressed( key, isrepeat )

Arguments

KeyConstant key
Character of the key pressed.
boolean isrepeat
Whether this keypress event is a repeat. The delay between key repeats depends on the user's system settings.

Returns

Nothing.

Notes

Key repeat needs to be enabled with love.keyboard.setKeyRepeat for repeat keypress events to be received.

Function

Removed in LÖVE 0.9.0
Unicode text input is now handled separately via love.textinput.

Synopsis

love.keypressed( key, unicode )

Arguments

KeyConstant key
Character of the key pressed.
number unicode
The unicode number of the key pressed.

Returns

Nothing.

Examples

Exit the game when the player presses the Escape key, using love.event.quit.

function love.keypressed(key)
   if key == "escape" then
      love.event.quit()
   end
end

Removed in LÖVE 0.9.0
Text input is now handled separately via love.textinput..

Record and print text the user writes (0.8.0 and below.)

function love.load()
    text = "Type away! -- "
end

function love.keypressed(key, unicode)
    -- ignore non-printable characters (see http://www.ascii-code.com/)
    if unicode > 31 and unicode < 127 then
        text = text .. string.char(unicode)
    end
end

function love.draw()
    love.graphics.printf(text, 0, 0, 800)
end

See Also


Other Languages