First Commit
|
@ -0,0 +1,90 @@
|
||||||
|
from ahk import AHK
|
||||||
|
import os
|
||||||
|
import subprocess
|
||||||
|
from random import randint
|
||||||
|
import time
|
||||||
|
from league_of_legends_bot import combo
|
||||||
|
from league_of_legends_requests import league_of_legends_client_api
|
||||||
|
# Inizializziamo AHK AutoScript
|
||||||
|
ahk = AHK()
|
||||||
|
|
||||||
|
|
||||||
|
# Cartella dove é contenuta l'immagine
|
||||||
|
script_dir = os.path.dirname(__file__)
|
||||||
|
cs_life_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'enemycreephealth.png'
|
||||||
|
)
|
||||||
|
my_cs_life_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'alliedcreephealth.png'
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
shop_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'shop.png'
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
enemy_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'enemyhealth.png'
|
||||||
|
)
|
||||||
|
|
||||||
|
"""
|
||||||
|
Creo uno script per identificare la vita dei CS
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
def cs_life(cs_life_path,my_cs_life_path):
|
||||||
|
print("Starting",end="")
|
||||||
|
for _ in range(0,10):
|
||||||
|
print(".",end="",flush=True)
|
||||||
|
time.sleep(1)
|
||||||
|
print("Go")
|
||||||
|
last_time = time.time()
|
||||||
|
while True:
|
||||||
|
try:
|
||||||
|
# ahk.key_down("space")
|
||||||
|
mouse_position = ahk.mouse_position
|
||||||
|
data = league_of_legends_client_api()
|
||||||
|
health = data['championStats']['currentHealth']
|
||||||
|
gold = data["currentGold"]
|
||||||
|
cs = ahk.image_search(cs_life_path)
|
||||||
|
enemy = ahk.image_search(enemy_path)
|
||||||
|
my_cs_life = ahk.image_search(my_cs_life_path)
|
||||||
|
print(f"Miei Minion : {my_cs_life}")
|
||||||
|
print(enemy)
|
||||||
|
if cs == None and my_cs_life == None:
|
||||||
|
ahk.key_down("b")
|
||||||
|
elif my_cs_life is not None and cs == None:
|
||||||
|
lol_move = ahk.mouse_move(my_cs_life[0], my_cs_life[1], speed=10)
|
||||||
|
ahk.right_click(lol_move)
|
||||||
|
elif health <= 300:
|
||||||
|
ahk.key_down("b")
|
||||||
|
if gold >= 1300:
|
||||||
|
shop = ahk.image_search(shop_path)
|
||||||
|
lol_move = ahk.mouse_move(my_cs_life[0], my_cs_life[1], speed=10)
|
||||||
|
ahk.right_click(lol_move)
|
||||||
|
elif cs != None and enemy != None:
|
||||||
|
lol_move = ahk.mouse_move(cs[0], cs[1], speed=10)
|
||||||
|
enemy_move = ahk.mouse_move(enemy[0], enemy[1], speed=10)
|
||||||
|
ahk.right_click(lol_move)
|
||||||
|
ahk.right_click(enemy_move)
|
||||||
|
combo()
|
||||||
|
# cs_life(cs_life_path,my_cs_life_path)
|
||||||
|
print("Loop took {} seconds".format(time.time()-last_time))
|
||||||
|
last_time = time.time()
|
||||||
|
except:
|
||||||
|
print("Qualcosa é andato storto, riprovo...")
|
||||||
|
cs_life(cs_life_path,my_cs_life_path)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
cs_life(cs_life_path,my_cs_life_path)
|
|
@ -0,0 +1,161 @@
|
||||||
|
from ahk import AHK
|
||||||
|
import os
|
||||||
|
from random import randint
|
||||||
|
from league_of_legends_requests import league_of_legends_client_api
|
||||||
|
|
||||||
|
ahk = AHK()
|
||||||
|
|
||||||
|
import time
|
||||||
|
|
||||||
|
account = ""
|
||||||
|
psw = ""
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
|
||||||
|
# Countdown Timer
|
||||||
|
print("Starting",end="")
|
||||||
|
for _ in range(0,10):
|
||||||
|
print(".",end="",flush=True)
|
||||||
|
time.sleep(1)
|
||||||
|
print("Go")
|
||||||
|
|
||||||
|
nome_utente_password(account,psw)
|
||||||
|
time.sleep(120)
|
||||||
|
first_queque()
|
||||||
|
|
||||||
|
# ahk.mouse_move(x=100, y=100, blocking=True) # Blocks until mouse finishes moving (the default)
|
||||||
|
# ahk.mouse_move(x=150, y=150, speed=10, blocking=True) # Moves the mouse to x, y taking 'speed' seconds to move
|
||||||
|
# print(ahk.mouse_position) # (150, 150)\
|
||||||
|
# queque()
|
||||||
|
while True:
|
||||||
|
try:
|
||||||
|
if ahk.key_state("space") == True:
|
||||||
|
combo()
|
||||||
|
except:
|
||||||
|
print("Uscita dal Bot...")
|
||||||
|
break
|
||||||
|
# Done
|
||||||
|
print('Done')
|
||||||
|
|
||||||
|
|
||||||
|
def combo():
|
||||||
|
while True:
|
||||||
|
try:
|
||||||
|
data = league_of_legends_client_api()
|
||||||
|
health = data['championStats']['currentHealth']
|
||||||
|
gold = data["currentGold"]
|
||||||
|
lvl = data["level"]
|
||||||
|
abilities_E = data["abilities"]["E"]["abilityLevel"]
|
||||||
|
abilities_Q = data["abilities"]["Q"]["abilityLevel"]
|
||||||
|
abilities_W = data["abilities"]["W"]["abilityLevel"]
|
||||||
|
abilities_R = data["abilities"]["R"]["abilityLevel"]
|
||||||
|
sum_abilities = abilities_E + abilities_Q + abilities_W + abilities_R
|
||||||
|
if sum_abilities != lvl:
|
||||||
|
ahk.key_down('Control')
|
||||||
|
ahk.key_down('q')
|
||||||
|
time.sleep(0.3)
|
||||||
|
ahk.key_up('Control')
|
||||||
|
ahk.key_up('q')
|
||||||
|
if abilities_Q > 0:
|
||||||
|
ahk.key_press('q')
|
||||||
|
if abilities_E > 0:
|
||||||
|
ahk.key_press('e')
|
||||||
|
if abilities_R > 0:
|
||||||
|
ahk.key_press('r')
|
||||||
|
break
|
||||||
|
except:
|
||||||
|
break
|
||||||
|
|
||||||
|
|
||||||
|
def nome_utente_password(account,psw):
|
||||||
|
script_dir = os.path.dirname(__file__)
|
||||||
|
nome_utente_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'nomeutente.png'
|
||||||
|
)
|
||||||
|
password_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'password.png'
|
||||||
|
)
|
||||||
|
login_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'login.png'
|
||||||
|
)
|
||||||
|
|
||||||
|
time.sleep(1)
|
||||||
|
nome_utente = ahk.image_search(nome_utente_path)
|
||||||
|
ahk.click(nome_utente[0],nome_utente[1])
|
||||||
|
ahk.type(account)
|
||||||
|
time.sleep(2)
|
||||||
|
ahk.click(nome_utente[0],nome_utente[1] + 66)
|
||||||
|
ahk.type(psw)
|
||||||
|
ahk.key_press('enter')
|
||||||
|
# login = ahk.image_search(login_path)
|
||||||
|
# ahk.click(login[0],login[1])
|
||||||
|
|
||||||
|
|
||||||
|
def first_queque():
|
||||||
|
script_dir = os.path.dirname(__file__)
|
||||||
|
play_image_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'gioca.png'
|
||||||
|
)
|
||||||
|
coopvsia_image_path = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'coopvsia.png'
|
||||||
|
)
|
||||||
|
select_coop_mode = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'introduzione.png'
|
||||||
|
)
|
||||||
|
confirm = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'conferma.png'
|
||||||
|
)
|
||||||
|
found_match = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'trovapartita.png'
|
||||||
|
)
|
||||||
|
accept_match = os.path.join(
|
||||||
|
script_dir,
|
||||||
|
'lolbot',
|
||||||
|
'accetta.png'
|
||||||
|
)
|
||||||
|
# image_positon = pyautogui.locateOnScreen(image_path)
|
||||||
|
play_image_positon = ahk.image_search(play_image_path)
|
||||||
|
ahk.click(play_image_positon[0],play_image_positon[1])
|
||||||
|
time.sleep(2)
|
||||||
|
coopvsia_positon = ahk.image_search(coopvsia_image_path)
|
||||||
|
ahk.click(coopvsia_positon[0] + 20,coopvsia_positon[1] + 25)
|
||||||
|
time.sleep(2)
|
||||||
|
introduction_positon = ahk.image_search(select_coop_mode)
|
||||||
|
ahk.click(introduction_positon[0],introduction_positon[1])
|
||||||
|
# print(introduction_positon)
|
||||||
|
time.sleep(2)
|
||||||
|
confirm_position = ahk.image_search(confirm)
|
||||||
|
ahk.click(confirm_position[0],confirm_position[1])
|
||||||
|
# print(confirm_postion)
|
||||||
|
time.sleep(2)
|
||||||
|
ahk.mouse_move(-100, -100, speed=10, relative=True)
|
||||||
|
time.sleep(2)
|
||||||
|
found_match_position = ahk.image_search(found_match)
|
||||||
|
ahk.click(found_match_position[0],found_match_position[1])
|
||||||
|
time.sleep(2)
|
||||||
|
accept_match_position = ahk.image_search(accept_match)
|
||||||
|
ahk.click(accept_match_position[0],accept_match_position[1])
|
||||||
|
|
||||||
|
# coopvsia_image_position = ahk.image_search(coopvsia_image_path)
|
||||||
|
# ahk.click(coopvsia_image_position[0],coopvsia_image_position[1])
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
|
@ -0,0 +1,22 @@
|
||||||
|
import requests
|
||||||
|
import urllib3
|
||||||
|
|
||||||
|
urllib3.disable_warnings()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def league_of_legends_client_api():
|
||||||
|
try:
|
||||||
|
api_endpoint = "https://127.0.0.1:2999/liveclientdata/activeplayer"
|
||||||
|
response = requests.get(api_endpoint,verify=False)
|
||||||
|
if response.ok:
|
||||||
|
data = response.json()
|
||||||
|
return data
|
||||||
|
else:
|
||||||
|
print(f"Errore : {response.status_code}")
|
||||||
|
except:
|
||||||
|
print("Giocatore Non in Partita...")
|
||||||
|
return data == None
|
||||||
|
|
||||||
|
|
||||||
|
league_of_legends_client_api()
|
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 3.2 KiB |
After Width: | Height: | Size: 137 B |
After Width: | Height: | Size: 142 B |
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 139 B |
After Width: | Height: | Size: 140 B |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 454 B |
After Width: | Height: | Size: 676 B |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 344 B |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 1.1 MiB |
After Width: | Height: | Size: 235 B |
After Width: | Height: | Size: 1.8 KiB |