fix camera tick: CamTickOn on HUD; wheel zoom
This commit is contained in:
1 parent
dcdbdf8780
commit
e42b2ed66b
4 files changed
+1296
-1233
No files matched your search
@@ -1,18 +1,18 @@
|
|||||||
# Client_RPG
|
# Client_RPG
|
||||||
|
|
||||||
Required client add-on for **GameMode_RPG**: top-down orbit camera, click-to-move/combat, HUD and `/rpg` window hotkeys.
|
Required client add-on for **GameMode_RPG**: top-down orbit camera, click-to-move/combat, HUD and `/rpg` window hotkeys.
|
||||||
|
|
||||||
Install into `Add-Ons/Client_RPG` (same folder name as on the server).
|
Install into `Add-Ons/Client_RPG` (same folder name as on the server).
|
||||||
|
|
||||||
## Controls
|
## Controls
|
||||||
|
|
||||||
| Input | Action |
|
| Input | Action |
|
||||||
|---|---|
|
|---|---|
|
||||||
| Left click | Walk / attack / interact (server resolves the ray) |
|
| Left click | Walk / attack / interact (server resolves the ray) |
|
||||||
| Right click | Talk / context |
|
| Right click | Talk / context |
|
||||||
| A/D, arrows | Rotate camera |
|
| A/D, arrows | Rotate camera |
|
||||||
| PgUp/PgDn, +/- | Zoom |
|
| PgUp/PgDn, +/- | Zoom |
|
||||||
| B / K / E | Bag / skills / equip lists |
|
| B / K / E | Bag / skills / equip lists |
|
||||||
| R | Toggle auto-retaliate |
|
| R | Toggle auto-retaliate |
|
||||||
|
|
||||||
Protocol version **2** — must match `GameMode_RPG` ui/protocol.cs.
|
Protocol version **2** — must match `GameMode_RPG` ui/protocol.cs.
|
||||||
+2
-2
@@ -1,2 +1,2 @@
|
|||||||
Client_RPG
|
Client_RPG
|
||||||
Required client add-on for the GameMode_RPG realm: top-down camera, click-to-move and combat, and the RPG windows. Without it you can only spectate on an RPG server.
|
Required client add-on for the GameMode_RPG realm: top-down camera, click-to-move and combat, and the RPG windows. Without it you can only spectate on an RPG server.
|
||||||
@@ -1,72 +1,72 @@
|
|||||||
// Client windows: hotkeys open /rpg lists; the server still validates every command.
|
// Client windows: hotkeys open /rpg lists; the server still validates every command.
|
||||||
|
|
||||||
$RPGClient::MenuOpen = 0;
|
$RPGClient::MenuOpen = 0;
|
||||||
|
|
||||||
function RPGClient_RunCmd(%cmd)
|
function RPGClient_RunCmd(%cmd)
|
||||||
{
|
{
|
||||||
if (!isObject(ServerConnection))
|
if (!isObject(ServerConnection))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
commandToServer('Message', "/rpg " @ %cmd);
|
commandToServer('Message', "/rpg " @ %cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
function RPGClient_ToggleMenu(%name, %cmd)
|
function RPGClient_ToggleMenu(%name, %cmd)
|
||||||
{
|
{
|
||||||
if ($RPGClient::MenuOpen $= %name)
|
if ($RPGClient::MenuOpen $= %name)
|
||||||
{
|
{
|
||||||
$RPGClient::MenuOpen = "";
|
$RPGClient::MenuOpen = "";
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$RPGClient::MenuOpen = %name;
|
$RPGClient::MenuOpen = %name;
|
||||||
RPGClient_RunCmd(%cmd);
|
RPGClient_RunCmd(%cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
function RPGClient_Menu_Bag()
|
function RPGClient_Menu_Bag()
|
||||||
{
|
{
|
||||||
RPGClient_ToggleMenu("bag", "bag");
|
RPGClient_ToggleMenu("bag", "bag");
|
||||||
}
|
}
|
||||||
|
|
||||||
function RPGClient_Menu_Skills()
|
function RPGClient_Menu_Skills()
|
||||||
{
|
{
|
||||||
RPGClient_ToggleMenu("skills", "skills");
|
RPGClient_ToggleMenu("skills", "skills");
|
||||||
}
|
}
|
||||||
|
|
||||||
function RPGClient_Menu_Equip()
|
function RPGClient_Menu_Equip()
|
||||||
{
|
{
|
||||||
RPGClient_ToggleMenu("equip", "equip");
|
RPGClient_ToggleMenu("equip", "equip");
|
||||||
}
|
}
|
||||||
|
|
||||||
function RPGClient_Menu_Help()
|
function RPGClient_Menu_Help()
|
||||||
{
|
{
|
||||||
RPGClient_RunCmd("help");
|
RPGClient_RunCmd("help");
|
||||||
}
|
}
|
||||||
|
|
||||||
function RPGClient_Menu_Retaliate()
|
function RPGClient_Menu_Retaliate()
|
||||||
{
|
{
|
||||||
RPGClient_RunCmd("retaliate");
|
RPGClient_RunCmd("retaliate");
|
||||||
}
|
}
|
||||||
|
|
||||||
function RPGClient_BindKeys()
|
function RPGClient_BindKeys()
|
||||||
{
|
{
|
||||||
if (isObject(RPGClient_MenuMap))
|
if (isObject(RPGClient_MenuMap))
|
||||||
{
|
{
|
||||||
RPGClient_MenuMap.delete();
|
RPGClient_MenuMap.delete();
|
||||||
}
|
}
|
||||||
new ActionMap(RPGClient_MenuMap);
|
new ActionMap(RPGClient_MenuMap);
|
||||||
RPGClient_MenuMap.bind(keyboard0, b, RPGClient_Menu_Bag);
|
RPGClient_MenuMap.bind(keyboard0, b, RPGClient_Menu_Bag);
|
||||||
RPGClient_MenuMap.bind(keyboard0, k, RPGClient_Menu_Skills);
|
RPGClient_MenuMap.bind(keyboard0, k, RPGClient_Menu_Skills);
|
||||||
RPGClient_MenuMap.bind(keyboard0, e, RPGClient_Menu_Equip);
|
RPGClient_MenuMap.bind(keyboard0, e, RPGClient_Menu_Equip);
|
||||||
RPGClient_MenuMap.bind(keyboard0, f1, RPGClient_Menu_Help);
|
RPGClient_MenuMap.bind(keyboard0, f1, RPGClient_Menu_Help);
|
||||||
RPGClient_MenuMap.bind(keyboard0, r, RPGClient_Menu_Retaliate);
|
RPGClient_MenuMap.bind(keyboard0, r, RPGClient_Menu_Retaliate);
|
||||||
RPGClient_MenuMap.push();
|
RPGClient_MenuMap.push();
|
||||||
}
|
}
|
||||||
|
|
||||||
function RPGClient_UnbindKeys()
|
function RPGClient_UnbindKeys()
|
||||||
{
|
{
|
||||||
if (isObject(RPGClient_MenuMap))
|
if (isObject(RPGClient_MenuMap))
|
||||||
{
|
{
|
||||||
RPGClient_MenuMap.pop();
|
RPGClient_MenuMap.pop();
|
||||||
RPGClient_MenuMap.delete();
|
RPGClient_MenuMap.delete();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user