GetBoundKeys: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
 
(2 intermediate revisions by one other user not shown)
Line 12: Line 12:


===Returns===
===Returns===
If one or more keys are bound to the specified control or console command, a table is returned containing the names of all the bound keys. If no keys are bound or an invalid name was passed, returns ''false''.
If one or more keys are bound to the specified control or console command, a table is returned indexed by the names of the keys and containing key states as values. If no keys are bound or an invalid name was passed, returns ''false''.


==Example==
==Example==
Line 28: Line 28:
     end
     end
     outputChatBox ( "Keys bound to " .. controlName .. ":", 0, 255, 0 )
     outputChatBox ( "Keys bound to " .. controlName .. ":", 0, 255, 0 )
     for i,keyName in ipairs(keys) do
     for keyName, state in pairs(keys) do
         outputChatBox ( keyName, 0, 255, 0 )
         outputChatBox ( keyName, 0, 255, 0 )
     end
     end

Latest revision as of 16:43, 19 February 2015

Returns a list of key names that are bound to the specified game control or console command.

Syntax

table getBoundKeys ( string command/control )

Required Arguments

  • command/control: the name of a game control or a console command. See the control names page for valid controls.

Returns

If one or more keys are bound to the specified control or console command, a table is returned indexed by the names of the keys and containing key states as values. If no keys are bound or an invalid name was passed, returns false.

Example

This code adds a command handler with which you can check out the keybinds for any game control. As an example, typing "/keys forwards" would list all the keys which you can press to make the player walk forward.

function keysCommand ( command, controlName )
    if not controlName then                     -- make sure they specified a control name
        outputChatBox ( "No control name specified", 255, 0, 0 )
        return
    end
    local keys = getBoundKeys ( controlName )   -- get the keys bound to this control
    if not keys then                            -- make sure the control name is valid and any keys are bound to it
        outputChatBox ( "No keys bound to " .. controlName, 255, 0, 0 )
        return
    end
    outputChatBox ( "Keys bound to " .. controlName .. ":", 0, 255, 0 )
    for keyName, state in pairs(keys) do
        outputChatBox ( keyName, 0, 255, 0 )
    end
end

addCommandHandler ( "keys", keysCommand )

See Also