summaryrefslogtreecommitdiff
path: root/asciifarm/client/keybindings.hy
blob: a0f392d9b6c47595d44417cc18dd8b0aa9751f7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42


(require [asciifarm.client.keymacros [*]])

(setv commands {
  "w" (input ["move" "north"])
  "s" (input ["move" "south"])
  "d" (input ["move" "east"])
  "a" (input ["move" "west"])
  "KEY_UP" (input ["move" "north"])
  "KEY_DOWN" (input ["move" "south"])
  "KEY_RIGHT" (input ["move" "east"])
  "KEY_LEFT" (input ["move" "west"])
  "e" (input ["take" (selectorvalue "ground")])
  "q" (input ["drop" (selectorvalue "inventory")])
  "E" (input ["use" (selectorvalue "inventory")])
  "r" (input ["interact" (selectorvalue "ground")])
  "v" (fn [client] (.select (selector "inventory") 1 True True))
  "c" (fn [client] (.select (selector "ground") 1 True True))
  "x" (fn [client] (.select (selector "equipment") 1 True True))
  "z" (input ["unequip" (selectorvalue "equipment")])
  "f" (doall [
        (input ["attack"])
        (input ["attack" "north"])
        (input ["attack" "south"])
        (input ["attack" "east"])
        (input ["attack" "west"])])
  "t" (fn [client] (client.readString)) })

(setv docs "\
Controls:
 wasd or arrows:
    Move around
 e: Grab
 q: Drop
 E: Use
 r: Interact
 f: Attack
 t: Chat
 z: Unequip
 xcv: scroll")