Engine:CCMD bind: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
Line 13: Line 13:
A 'bind' acts like a custom command for a key. It runs the assigned text as a script, which can contain a single-word command, statement, or script.
A 'bind' acts like a custom command for a key. It runs the assigned text as a script, which can contain a single-word command, statement, or script.


By default, binds do not work while input is in console or in text mode.
By default, binds do not work while input focus is in console or in text mode.


Binds have a special relationship with commands and aliases, where specially named commands will get run during special key or device states. For example, if an alias is named '+bob' and is bound to a key, it will only get called when that key is pressed down, and if named '-bob' will get called when the key goes up.
Binds have a special relationship with commands and aliases, where specially named commands will get run during special key or device states. For example, if an alias is named '+bob' and is bound to a key, it will only get called when that key is pressed down, and if named '-bob' will get called when the key goes up.

Revision as of 01:27, 15 October 2023

Console commands

Creates a new key binding, replacing existing key binding if any.

bind Z "echo fred"

Arguments

  • name - name of binding, which corresponds to a particular key, button, or other device.
  • value (optional) - script string or command to run. If not supplied, then prints the script or command value, if the binding exists.

Associations

  • Key bindings are global, and not a part of any context.

Details

A 'bind' acts like a custom command for a key. It runs the assigned text as a script, which can contain a single-word command, statement, or script.

By default, binds do not work while input focus is in console or in text mode.

Binds have a special relationship with commands and aliases, where specially named commands will get run during special key or device states. For example, if an alias is named '+bob' and is bound to a key, it will only get called when that key is pressed down, and if named '-bob' will get called when the key goes up.

Examples

Default values

  • Check bind 'Z' for script value. No bind exists for key 'Z'.
> bind Z
Unknown: Z
  • Create a bind for the 'Z' key.
> bind Z "echo fred"
  • Close console and press 'Z' key. Prints 'fred'.
fred
  • Same as the first example, but now bind 'Z' exists and shows the value.
> alias bob
'bob' is 'echo fred'

Key states

  • 'bob' called without a value. No command, variable or alias named 'bob' exist.
> bob
Unknown: bob
  • Create an alias 'bob' and set to 'fred'.
> alias bob fred
  • Same as the first example, but now alias 'bob' exists. The 'fred' command in the 'bob' alias script runs, and 'fred' doesn't exist.
> bob
Unknown: fred
  • Create variable 'fred'.
> var fred james
  • Run 'bob'
> bob
'fred' is 'james'
  • Try to set 'fred' through 'bob'. Value remains the same because 'bob' is only the statement "fred".
> bob alan
> bob
'fred' is 'james'

Notes