-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathspeak_the_spire.talon
126 lines (106 loc) · 3.64 KB
/
speak_the_spire.talon
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
os: mac
and app.bundle: net.java.openjdk.cmd
os: windows
and app.exe: java.exe
-
# Mouseover the player's character. For example: "player"
^me | player$:
user.spire_player()
# Mouseover an orb. For example: "orb" (goes to orb 1) or "orb 3"
^orb [<number_small>]$:
user.spire_orb(number_small or 1)
# Mouseover an enemy. For example: "enemy" (goes to enemy 1) or "enemy 3"
^enemy [<number_small>]$:
user.spire_monster(number_small or 1)
# Click an enemy. For example: "click enemy 2"
^click enemy <number_small>$:
user.spire_monster(number_small, 0)
# Select a card from the hand. For example: "card 2" or simply "2"
^[card] <user.number_string>$:
insert(number_string)
# Play a card on the hovered enemy. For example: "use 4"
^use [card] <user.number_string>$:
insert(number_string)
sleep(0.1)
mouse_click(0)
# Select a potion by number from the potion belt. For example: "potion 1"
^potion [<number_small>]$:
user.spire_potion(number_small or 1)
# Drink/throw/discard the currently selected potion (no number needed). For example:
# "drink potion"
# "throw potion"
# "discard potion"
^{user.spire_potion_operation} [potion]$: user.spire_use_potion(spire_potion_operation)
# Mouseover a relic. For example: "relic" (goes to relic 1) or "relic 3"
^relic [<number_small>]$:
user.spire_relic(number_small or 1)
# Mouseover a card in the shop. For example: "shop card" (goes to card 1) or "shop card 3"
^shop card [<number_small>]$:
user.spire_shop_card(number_small or 1)
# Mouseover a relic in the shop. For example: "shop relic" (goes to relic 1) or "shop relic 3"
^shop relic [<number_small>]$:
user.spire_shop_relic(number_small or 1)
# Mouseover a potion in the shop. For example: "shop potion" (goes to potion 1) or "shop potion 3"
^shop potion [<number_small>]$:
user.spire_shop_potion(number_small or 1)
# Mouseover the removal service in the shop. For example: "shop remove"
^[shop] (remove | card remove | card removal | remove card) [service]$:
user.spire_shop_remove()
# Mouseover a combat reward or boss relic reward option. For example: "reward" (goes to option 1) or "reward 3"
^reward [<number_small>]$:
user.spire_reward(number_small or 1)
# Navigation through the menus of the game generally just consists of saying what you see. For example:
# "Play"
# "Abandon Run"
# "Proceed"
# etc.
^{user.spire_navigation_item} [<number_small>]$:
user.spire_navigate(spire_navigation_item, number_small or -1)
# Center the mouse on the screen. Handy in some cases.
^center$:
user.spire_center_mouse()
# Various commands that should be self-explanatory.
^end turn$: key(e)
^deck$: key(d)
^draw [pile]$: key(a)
^(discard | disk) [(pile | potion)]$: user.spire_discard()
^exhaust [pile]$: key(x)
^map$: key(m)
^menu$: key(escape)
# Turn off repeater ordinals (optional; prevents accidental repeats)
<user.ordinals>: skip()
# Scrolling commands (probably a more concise way to write these...)
downer:
user.mouse_scroll_down(1)
sleep(0.05)
user.mouse_scroll_down(1)
sleep(0.05)
user.mouse_scroll_down(1)
sleep(0.05)
user.mouse_scroll_down(1)
sleep(0.05)
user.mouse_scroll_down(1)
sleep(0.05)
user.mouse_scroll_down(1)
sleep(0.05)
user.mouse_scroll_down(1)
sleep(0.05)
user.mouse_scroll_down(1)
sleep(0.05)
upper:
user.mouse_scroll_up(1)
sleep(0.05)
user.mouse_scroll_up(1)
sleep(0.05)
user.mouse_scroll_up(1)
sleep(0.05)
user.mouse_scroll_up(1)
sleep(0.05)
user.mouse_scroll_up(1)
sleep(0.05)
user.mouse_scroll_up(1)
sleep(0.05)
user.mouse_scroll_up(1)
sleep(0.05)
user.mouse_scroll_up(1)
sleep(0.05)