Last active
March 20, 2021 22:51
-
-
Save sl5net/a9469c0c714a7bed577cfce8d02b4593 to your computer and use it in GitHub Desktop.
0AD build everything by pressing first letter
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
##################################################### | |
# you must be root to use keyboard the following: | |
# sudo apt install python3-pip | |
# pip3 install keyboard | |
# sudo autokey | |
##################################################### | |
##################################################### | |
# Disable Ubuntu Shortcuts: | |
# Super+L (global shortcuts: use it for audio and then delete it) | |
# Super+P (global shortcuts: use it for audio and then delete it) | |
# config 0AD: | |
# team chat: T --> Super+T | |
# privat chat: --> Super+L or menu+P | |
# camera reset: R --> Super+R | |
# folow player: F --> shift+f | |
# config 0AD ~/snap/0ad/201/.config/0ad/config/: | |
# if using Kate-Editor: | |
# Space\+([A-Z]") --> \1 | |
##################################################### | |
import keyboard as keyboard2 # must be different name becouse of name conflicts | |
# | |
import time | |
secondsStart = 0 | |
secondsEnd = 0 | |
aPressedCount = 0 | |
bPressedCount = 0 | |
cPressedCount = 0 | |
dPressedCount = 0 | |
ePressedCount = 0 | |
fPressedCount = 0 | |
gPressedCount = 0 | |
wPressedCount = 0 | |
while True: | |
winClass = window.get_active_class() | |
if winClass != 'pyrogenesis.pyrogenesis': | |
time.sleep(1) | |
continue | |
key = keyboard2.read_key() | |
# if keyboard2.is_pressed(' '): #if key space is pressed.You can also use right,left,up,down and others like a,b,c,etc. | |
# secondsStart = time.time() | |
# keyboard.send_keys("You pressed space") | |
# if key: | |
# print("You pressed p") | |
# break | |
# f12fffffffffff | |
# f<space>+<F><Space>+<F>f<space>+<F><space>+<F>p# endOfScript # f<space>+<F><space>+f | |
sleepBefore = 0.2 | |
sleepAfter = 0.3 | |
if key == "c": | |
secondsNow = time.time() | |
if secondsNow - secondsStart < 3: | |
secondsStart = 0 | |
cPressedCount = cPressedCount + 1 | |
if cPressedCount == 1: # field = "Space+F" ff<space>+<F><space>+f | |
keyboard.send_keys("c") # civial center | |
# time.sleep(sleepAfter) | |
if cPressedCount == 2: # field = "Space+F" ff<space>+<F><space>+f | |
time.sleep(sleepBefore) | |
keyboard.send_keys("k") # coral | |
if cPressedCount > 2: | |
cPressedCount = 0 | |
secondsStart = 0 | |
time.sleep(sleepAfter) | |
continue | |
if key == "d": | |
# dock = "Space+J" | |
# defense_tower = "Space+D" as backup | |
secondsNow = time.time() | |
if secondsNow - secondsStart < 3: | |
secondsStart = 0 | |
dPressedCount = dPressedCount + 1 | |
if dPressedCount == 1: # Dore Defense Stone Tower | |
keyboard.send_keys("j") # dock | |
#time.sleep(sleepAfter) | |
if dPressedCount == 2: # field = "Space+F" ff<space>+<F><space>+f | |
time.sleep(sleepBefore) | |
keyboard.send_keys("d") # defense_tower = "Space+D" as backup | |
#time.sleep(sleepAfter) | |
if dPressedCount > 2: | |
cPressedCount = 0 | |
secondsStart = 0 | |
time.sleep(sleepAfter) | |
continue | |
if key == "e": | |
# wallset_palisade = "Space+E"c | |
# elephant_stables = "Space+Q" | |
secondsNow = time.time() | |
if secondsNow - secondsStart < 3: | |
secondsStart = 0 | |
ePressedCount = 0 | |
ePressedCount = ePressedCount + 1 | |
if ePressedCount == 1: # elephant_stables = "Space+Q" | |
time.sleep(sleepBefore) | |
keyboard.send_keys("q") | |
time.sleep(sleepAfter) | |
if ePressedCount == 2: # wallset_palisade = "Space+E" | |
time.sleep(sleepBefore) | |
# keyboard.send_keys("e") | |
time.sleep(sleepAfter) | |
if ePressedCount > 2: | |
ePressedCount = 0 | |
secondsStart = 0 | |
continue | |
if key == "f": | |
#keyboard.send_keys("<ctrl>+c") # <= this is working | |
#keyboard.send_keys("<menu>+c") # <= this is working | |
if False: | |
keyboard.fake_keypress('<space>') | |
time.sleep(0.1) | |
keyboard.send_keys("s") | |
time.sleep(0.1) | |
keyboard.release_key('<space>') | |
# f<f>f<f>p# endOfScript # p äfäfäf | |
# p# endOfScript # | |
# field = "Space+F" | |
# farmstead = "Space+G" | |
# forge = "Space+N" | |
# fortress = "Space+R" | |
secondsNow = time.time() | |
if secondsNow - secondsStart < 3: | |
secondsStart = 0 | |
fPressedCount = fPressedCount + 1 | |
# p# endOfScript # | |
if fPressedCount == 1: # field = "Space+F" ff<space>+<F><space>+f | |
keyboard.send_keys("f") | |
time.sleep(sleepAfter) | |
if fPressedCount == 2: | |
time.sleep(sleepBefore) | |
keyboard.send_keys("g") # farmstead = "Space+G" | |
time.sleep(sleepAfter) | |
if fPressedCount == 3: | |
time.sleep(sleepBefore) | |
keyboard.send_keys("n") # forge = "Space+N" | |
time.sleep(sleepAfter) | |
if fPressedCount == 4: | |
time.sleep(sleepBefore) | |
keyboard.send_keys("r") # fortress = "Space+R" | |
time.sleep(sleepAfter) | |
if fPressedCount > 4: | |
fPressedCount = 0 | |
secondsStart = 0 | |
continue | |
if key == "t": | |
secondsNow = time.time() | |
if secondsNow - secondsStart < 3: | |
secondsStart = 0 | |
tPressedCount = tPressedCount + 1 | |
if tPressedCount == 1: # field = "Space+F" ff<space>+<F><space>+f | |
keyboard.send_keys("t") # temple | |
# time.sleep(sleepAfter) | |
if tPressedCount == 2: # field = "Space+F" ff<space>+<F><space>+f | |
time.sleep(sleepBefore) | |
keyboard.send_keys("d") # tower | |
if tPressedCount > 2: | |
tPressedCount = 0 | |
secondsStart = 0 | |
time.sleep(sleepAfter) | |
continue | |
if key == "w": | |
# wallset_stone = "Space+W" | |
# wallset_palisade = "Space+E" | |
# wallset_siege = "Space+U" | |
secondsNow = time.time() | |
if secondsNow - secondsStart < 3: | |
secondsStart = 0 | |
wPressedCount = 0 | |
wPressedCount = wPressedCount + 1 | |
if wPressedCount == 1: # wallset_stone = "Space+W" | |
keyboard.send_keys("w") | |
# time.sleep(sleepAfter) | |
if wPressedCount == 2: # wallset_palisade = "Space+E" | |
time.sleep(sleepBefore) | |
keyboard.send_keys("e") # wallset_palisade = "Space+E" | |
# time.sleep(sleepAfter) | |
if wPressedCount == 3: # wallset_palisade = "Space+E" | |
time.sleep(sleepBefore) | |
keyboard.send_keys("u") # wallset_siege = "Space+U" | |
if wPressedCount > 3: | |
wPressedCount = 0 | |
secondsStart = 0 | |
time.sleep(sleepAfter) | |
continue | |
if key == "p": | |
# print("You pressed p")p# endOfScript # | |
break | |
# p# endOfScript # | |
# f ff1 You pressed space You pressed spacef2 You pressed spacef You pressed spaceffff | |
# You pressed space You pressed space You pressed space You pressed space. You pressed space. You pressed spacep# endOfScript # | |
# ppppppppppppppfffppfff | |
# # hiho # # hiho # # hiho # # hiho # | |
# mouse.click_relative(10,10,1) | |
# keyboard.send_keys("# endOfScript # ") | |
# hihoz# hiho # hiho | |
# p phiho | |
# p# endOfScript # | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment