
Que opináis del código?
Publicado por Kevin (1 intervención) el 08/09/2023 21:02:22
Buenas, he empezado con Python hace 3 días y buscando en internet una solución cada vez que tengo una duda he creado un pequeño código. Esta pensado para un juego que se llama PokeMMO y básicamente automatiza el farmeo de hordas dentro del juego. Lo primero que se me ocurrió fue hacer un solo bucle con todos los procesos pero he visto mas cómodo hacerlo con funciones. Me gustaría saber que opináis, que cambiarias, como lo hubierais hecho vosotros para hacerlo mas limpio o sencillo... También me gustaría que me recomendarais otras librerías que ayuden a automatizar procesos, buscar objetos o imágenes en pantalla...
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
import time
import pyautogui
stop_program = False
time.sleep(2)
def lucha():
global stop_program
stop_program = False
while stop_program == False:
lucha = pyautogui.locateOnScreen("C:/Users/elcac/Documents/PythonCarp/Magikarp/Lucha.png", confidence=0.95)
if lucha is not None:
print("se encontro lucha")
pyautogui.leftClick(lucha)
time.sleep(1)
pyautogui.moveTo(600,750)
time.sleep(0.2)
pyautogui.click(clicks=2, interval= 0.5)
time.sleep(1)
rapidash = pyautogui.locateOnScreen("C:/Users/elcac/Documents/PythonCarp/Magikarp/Rapidash.png", confidence=0.95)
if rapidash is not None:
time.sleep(0.5)
pyautogui.doubleClick(rapidash)
time.sleep(0.2)
pyautogui.click(clicks=2, interval= 0.5)
time.sleep(0.2)
pyautogui.press("z")
stop_program == True
time.sleep(4)
c_mov()
break
else:
"no se encontró rapidash"
else:
print("No se encontro lucha")
Aroma2()
break
break
else:
print("No se encontro")
def Aroma2():
global stop_program
time.sleep(2)
Aroma2 = pyautogui.locateOnScreen("C:/Users/elcac/Documents/PythonCarp/Magikarp/Aroma2.png", confidence=0.98)
if Aroma2 is None:
pyautogui.press("3")
lucha()
else:
print("Finished")
stop_program == True
recharge()
def recharge():
pyautogui.press("4")
time.sleep(1)
pyautogui.click(1150, 440)
time.sleep(0.2)
pyautogui.click(clicks=2, interval=0.25)
time.sleep(3)
pyautogui.keyDown("w")
time.sleep(1.5)
pyautogui.keyUp("w")
time.sleep(3)
pyautogui.keyDown("w")
time.sleep(3)
pyautogui.keyUp("w")
time.sleep(0.5)
pyautogui.keyDown("z")
time.sleep(6)
pyautogui.keyUp("z")
time.sleep(1)
pyautogui.keyDown("z")
time.sleep(3)
pyautogui.keyUp("z")
time.sleep(1)
pyautogui.keyDown("s")
time.sleep(2.5)
pyautogui.keyUp("s")
time.sleep(3)
pyautogui.press('2')
time.sleep(0.5)
pyautogui.keyDown("a")
time.sleep(2.55)
pyautogui.keyUp("a")
time.sleep(0.5)
pyautogui.keyDown('w')
time.sleep(0.15)
pyautogui.keyUp('w')
Aroma2()
def c_mov():
print("se inicio cmov")
time.sleep(12)
cancelar= pyautogui.locateOnScreen("C:/Users/elcac/Documents/PythonCarp/Magikarp/Cancelar.png", confidence=0.90)
if cancelar is not None:
print("procedemos a cancelar")
pyautogui.moveTo(cancelar)
time.sleep(0.2)
pyautogui.click(clicks=2, interval=0.25)
time.sleep(0.5)
si= pyautogui.locateOnScreen("C:/Users/elcac/Documents/PythonCarp/Magikarp/Cancelar_si.png", confidence=0.90)
pyautogui.moveTo(si)
time.sleep(0.2)
pyautogui.click(clicks=2, interval=0.25)
time.sleep(12)
Aroma2()
else:
print("no se aprendera nueva habilidad")
time.sleep(12)
Aroma2()
Valora esta pregunta


0