Advertisement
cvlhaha

autoxp.py

Feb 21st, 2020
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 7.81 KB | None | 0 0
  1. import autolib as auto
  2. import os
  3. import time
  4. import PySimpleGUI as sg
  5.  
  6. from PIL import Image, ImageTk
  7. import io
  8. import shutil
  9. import win32gui
  10.  
  11.  
  12. from pynput.mouse import Button, Controller
  13. mouse = Controller()
  14.  
  15. def get_img_data(f, maxsize=(1200, 850), first=False):
  16.     """Generate image data using PIL
  17.    """
  18.     img = Image.open(f)
  19.     img.thumbnail(maxsize)
  20.     if first:                     # tkinter is inactive the first time
  21.         bio = io.BytesIO()
  22.         img.save(bio, format="PNG")
  23.         del img
  24.         return bio.getvalue()
  25.     return ImageTk.PhotoImage(img)
  26.  
  27.  
  28. ################################
  29.  
  30. def window_size():
  31.     for i in range(3):
  32.         auto.pyautogui.keyDown('ctrl')
  33.         auto.pyautogui.keyDown('-')
  34.         auto.pyautogui.keyUp('-')
  35.         auto.pyautogui.keyUp('ctrl')
  36.    
  37.  
  38. #def diChuyen():
  39. #    print(">Moving")
  40.    
  41. #    auto.pyautogui.moveTo(x,y)
  42. #    mouse.press(Button.middle)
  43. #    time.sleep(0.2)
  44. #    mouse.release(Button.middle)
  45. #    time.sleep(0.2)
  46. #    mouse.press(Button.right)
  47. #    time.sleep(0.2)
  48. #   mouse.release(Button.right)
  49.    
  50.  
  51. def muaDo():
  52.     auto.findClick("shop")
  53.     time.sleep(2)
  54.     auto.pyautogui.moveTo(72,275)
  55.     time.sleep(0.2)
  56.     mouse.press(Button.right)
  57.     time.sleep(0.2)
  58.     mouse.release(Button.right)
  59.     time.sleep(0.2)
  60.     auto.pyautogui.moveTo(37,275)
  61.     time.sleep(0.2)
  62.     mouse.press(Button.right)
  63.     time.sleep(0.2)
  64.     mouse.release(Button.right)
  65.     time.sleep(0.2)
  66.     auto.pyautogui.moveTo(117,275)
  67.     time.sleep(0.2)
  68.     mouse.press(Button.right)
  69.     time.sleep(0.2)
  70.     mouse.release(Button.right)
  71.     time.sleep(0.2)
  72.     auto.pyautogui.moveTo(36,120)
  73.     time.sleep(0.2)
  74.     mouse.press(Button.right)
  75.     time.sleep(0.2)
  76.     mouse.release(Button.right)
  77.     time.sleep(0.2)
  78.     auto.pyautogui.press("esc")
  79.    
  80. def start():
  81.     while 1:
  82.         auto.findClick("tran", move=True)
  83.         auto.findClick("choi_luon", move=True)
  84.  
  85.         while (auto.findImg("pick_tuong_check")):
  86.             if not(auto.findImg("locked")):
  87.                 auto.findClick("pick_tuong_check",x=356,y=-462, move=True)
  88.                 time.sleep(0.5)
  89.                 auto.pyautogui.typewrite("yuumi")
  90.                 time.sleep(0.5)
  91.                 auto.findClick("pick_tuong_check",x=-7,y=-410, move=True)
  92.                 time.sleep(2)
  93.                 auto.findClick("khoa", move=True)
  94.            
  95.         lock = 0
  96.         loading = 0
  97.         while(auto.findImg("ingame")):
  98.  
  99.             if (loading == 0):
  100.                 loading += 1
  101.                 game_hwnd = win32gui.FindWindow(None, "League of Legends (TM) Client")
  102.                 win32gui.ShowWindow(game_hwnd, 1)
  103.                 win32gui.SetForegroundWindow(game_hwnd)
  104.                 win32gui.MoveWindow(game_hwnd, 0, 0, 1280, 600, 0)
  105.    
  106.                
  107.             if (lock == 0):
  108.                 auto.findClick("lock_screen")
  109.                 lock += 1
  110.            
  111.             if (auto.findImg("shop")):
  112.                 muaDo()
  113.            
  114.             if (auto.findImg("w")):
  115.                 auto.findClick("w")
  116.                 auto.pyautogui.moveTo(1253,331)
  117.                 time.sleep(0.2)
  118.                 mouse.press(Button.left)
  119.                 time.sleep(0.2)
  120.                 mouse.release(Button.left)
  121.                
  122.             if (auto.findImg("dame")):
  123.                 auto.pyautogui.moveTo(600,513)
  124.                 mouse.press(Button.left)
  125.                 time.sleep(0.2)
  126.                 mouse.release(Button.left)
  127.                 time.sleep(0.2)
  128.  
  129.                 auto.pyautogui.moveTo(600,544)
  130.                    
  131.                 mouse.press(Button.left)
  132.                 time.sleep(0.2)
  133.                 mouse.release(Button.left)
  134.                 time.sleep(0.2)
  135.                    
  136.                 auto.pyautogui.moveTo(563,511)
  137.                 mouse.press(Button.left)
  138.                 time.sleep(0.2)
  139.                 mouse.release(Button.left)
  140.  
  141.         auto.findClick("error", move=True)
  142.         auto.findClick("nhan", move=True)
  143.         auto.findClick("vinh_danh", move=True)
  144.         auto.findClick("dau_lai", move=True)            
  145.  
  146.  
  147. ############        GUI       #############
  148.  
  149. sg.change_look_and_feel('Reddit')
  150.  
  151. layout = [#[sg.Text('Your typed chars appear here:'), sg.Text(size=(12,1), key='_OUTPUT_')],
  152.  
  153.            [sg.Text('Chọn thư mục chứa LOL')],    
  154.         [sg.InputText('.../32787'), sg.FolderBrowse()],      
  155.           [sg.Button('HƯỚNG DẪN', size=(20,2)),sg.Button('PHỤC HỒI CẤU HÌNH', size=(20,2),button_color=("white","#F77D00"))],
  156.           [sg.Submit('START', size=(20,2),button_color=("white","green"))],
  157.           ]
  158.  
  159.  
  160.  
  161. win1 = sg.Window('AutoLv30', layout, size=(430,170), icon="icon.ico")
  162. win2_active=False  
  163. print("AutoLv30 v1.0")
  164. print("[autolv30] Dung tat cua so nay!")
  165. while True:  # Event Loop
  166.     event1, values1 = win1.read()       # can also be written as event, values = window()
  167. #    print(event, values)
  168.     if event1 is None: # or event == 'Exit':
  169.         break
  170.     if event1 == "PHỤC HỒI CẤU HÌNH":
  171.         try:
  172.             shutil.copy("./config/game.cfg", values1[0] + "/Game/Config/game.cfg")
  173.             shutil.copy("./config/PersistedSettings.json", values1[0] + "/Game/Config/PersistedSettings.json")
  174.             sg.Popup("Phục hồi cấu hình thành công!")
  175.         except:
  176.             sg.Popup("Phải sử dụng tool ít nhất 1 lần mới có thể phục hồi cấu hình")
  177.     if event1 == 'START':
  178.         #http://timgolden.me.uk/pywin32-docs/contents.html
  179.         #https://docs.microsoft.com/vi-vn/windows/win32/api/winuser/nf-winuser-showwindow
  180.         client_hwnd = win32gui.FindWindow(None, "League of Legends")
  181.         game_hwnd = win32gui.FindWindow(None, "League of Legends (TM) Client")
  182.         if (client_hwnd != 0):
  183.             win32gui.ShowWindow(client_hwnd, 1)
  184.             win32gui.SetForegroundWindow(client_hwnd)
  185.             window_size()
  186.            
  187.             win32gui.MoveWindow(client_hwnd, 0, 0, 1024, 576, 0)
  188.            
  189.             shutil.copy(values1[0] + "/Game/Config/game.cfg", './config/backup/')
  190.             shutil.copy(values1[0] + "/Game/Config/PersistedSettings.json", './config/backup/')
  191.  
  192.             shutil.copy("./config/game.cfg", values1[0] + "/Game/Config/game.cfg")
  193.             shutil.copy("./config/PersistedSettings.json", values1[0] + "/Game/Config/PersistedSettings.json")
  194.             win1.close()
  195.             start()
  196.         elif(game_hwnd != 0):
  197.             print("[autolv30] Hay thoat tran, bat tool roi ket noi lai!")
  198.         else:
  199.             print("[autolv30] Client chua bat!")
  200.  
  201.  
  202.     if event1 == "HƯỚNG DẪN" and not win2_active:
  203.         win2_active = True  
  204.         #win1.Hide()  
  205.  
  206.         page = 0
  207.         layout2 = [[sg.Image(data=get_img_data("./data/huong_dan/"+str(page)+".png",first=True),key="img")],      
  208.                     [sg.Button('<'),sg.Text(str(page), key='page'),sg.Button('>')]]  
  209.  
  210.        
  211.         win2 = sg.Window('HƯỚNG DẪN', layout2,size=(800,510), icon="icon.ico")  
  212.         while True:  
  213.             ev2, vals2 = win2.Read()  
  214.             if ev2 == ">" and page <= 4:
  215.                 page +=1
  216.                 win2['img'].update(data=get_img_data("./data/huong_dan/"+str(page)+".png"))
  217.                 win2['page'].update(page)
  218.             if ev2 == "<" and page >= 1:
  219.                 page -=1
  220.                 win2['img'].update(data=get_img_data("./data/huong_dan/"+str(page)+".png"))
  221.                 win2['page'].update(page)
  222.             if ev2 is None:  
  223.                 win2.Close()  
  224.                 win2_active = False  
  225.                 #win1.UnHide()  
  226.                 break
  227.  
  228.  
  229.        
  230.  
  231.  
  232.  
  233. #window.FindElement('_output_').Update('')
  234. #[sg.Output(size=(70, 18),key = '_output_')],
  235. #window['START'].update(button_color=("white","green"))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement