Revision Difference
Tool_Information_Display#548652
<cat>Dev.UI</cat>
This page describes how to use **TOOL.Information**.
⤶
⤶
⤶
**CLEAN ME UP**⤶
You can find source code for it [here](https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/sandbox/entities/weapons/gmod_tool/cl_init.lua#L100-L162).
⤶
You cannot have more than two key combinations displayed.⤶
Here's an example:
⤶
⤶
```
if CLIENT then
TOOL.Information = {
{ name = "info", stage = 1 },
{ name = "left" },
{ name = "right" },
{ name = "right_use", icon2 = "gui/e.png" },
{ name = "reload" },
{ name = "reload_use", icon2 = "gui/e.png" },
}
language.Add( "tool.example.1", "See information in the context menu" )
language.Add( "tool.example.left", "Select an object" )
language.Add( "tool.example.right", "Select next mode" )
language.Add( "tool.example.right_use", "Select previous mode" )
language.Add( "tool.example.reload", "Select yourself" )
language.Add( "tool.example.reload_use", "Select your view model" )
end
```
⤶
⤶
For each table inside the TOOL.Information a new line of text is added on HUD. It will display "#tool.<toolclassname>.<namefromthename>" by default.
⤶
* <toolclassname> is the filename of your tool.⤶
⤶
⤶
⤶
⤶
* **icon** key defines a path to the icon
* **icon2** key defines a a second icon path⤶
* certain **name**s have a default fallback icon⤶
* **stage** key makes the text only appear for given stage ( <page>Tool:SetStage</page> )
* **op** key makes the text only appear for given operation ( <page>Tool:SetOperation</page> )⤶
<upload src="70c/8daf9714ccb9e8a.png" size="185026" name="hl2_5Yw8XBsSlc.png" />⤶
⤶
For each table inside the `TOOL.Information` a new line of text is added to the Tools help HUD.
⤶
### Key explanations⤶
⤶
* `name` - Overrides the localization string to `#tool.<toolclassname>.<name>` (`<toolclassname>` is the filename of your tool)⤶
* Default value is `info`, which will display `tool.<toolclassname>.<toolstage>`, like all tools that do not use `TOOL.Information` do.⤶
* `icon` - A path to the first icon
* `icon2` - A second icon path, for key combination icons⤶
* `stage` - Makes the text only appear for given stage ( <page>Tool:SetStage</page> )⤶
* `op` - Makes the text only appear for given operation ( <page>Tool:SetOperation</page> )
⤶
### Default icon fallbacks⤶
⤶
Certain names have a default fallback icons:⤶
* If your `name` ends on `use` and you do not override the `icon2`, `icon2` will be E key. ( `gui/e.png` )⤶
* If your `name` starts with `info` - default icon is `gui/info`⤶
* If your `name` starts with `left` - default icon is LMB icon ( `gui/lmb.png` )⤶
* If your `name` starts with `right` - default icon is RMB icon ( `gui/rmb.png` )⤶
* If your `name` starts with `reload` - default icon is R key icon ( `gui/r.png` )⤶
⤶
⤶
⤶
* Default name is "info", which will display tool.example.<toolstage>, as all tools that do not use TOOL.Information do.⤶
* If your name ends on "use" and you do not override the icon2, icon2 will be E key. ( gui/e.png )⤶
* If your name starts with "info" - default icon is "gui/info"⤶
* If your name starts with "left" - default icon is LMB icon ( gui/lmb.png )⤶
* If your name starts with "right" - default icon is RMB icon ( gui/rmb.png )⤶
* If your name starts with "reload" - default icon is R key icon ( gui/r.png )⤶
⤶
⤶
<note>To change what the Panel on the front of the ToolGun looks like use the function <page>TOOL:DrawToolScreen</page></note><note>To change what the screen on the ToolGun model looks like - see <page>TOOL:DrawToolScreen</page></note>