Esempio n. 1
0
def ScanAmulet(AmuletPositions, Amulet, HOOK_OPTION):
    HasAmulet = [0, 0]
    if HOOK_OPTION == 0:
        import pyautogui

        HasAmulet = pyautogui.locateOnScreen(
            'images/Amulets/' + Amulet + '.png',
            confidence=0.9,
            region=(AmuletPositions[0], AmuletPositions[1], AmuletPositions[2],
                    AmuletPositions[3]))
        if HasAmulet:
            return False
        else:
            return True

    elif HOOK_OPTION == 1:
        from Engine.HookWindow import LocateImage

        HasAmulet[0], HasAmulet[1] = LocateImage(
            'images/Amulets/' + Amulet + '.png',
            Precision=0.9,
            Region=(AmuletPositions[0], AmuletPositions[1], AmuletPositions[2],
                    AmuletPositions[3]))
        if HasAmulet[0] != 0 and HasAmulet[1] != 0:
            return False
        else:
            return True
Esempio n. 2
0
def ScanRing(RingPositions, HOOK_OPTION):
    NoHasRing = [0, 0]
    if HOOK_OPTION == 0:
        import pyautogui

        NoHasRing = pyautogui.locateOnScreen(
            'images/PlayerStats/NoRing.png',
            confidence=0.9,
            region=(RingPositions[0], RingPositions[1], RingPositions[2],
                    RingPositions[3]))
        if NoHasRing:
            return True
        else:
            return False

    elif HOOK_OPTION == 1:
        from Engine.HookWindow import LocateImage

        NoHasRing[0], NoHasRing[1] = LocateImage(
            'images/PlayerStats/NoRing.png',
            Precision=0.9,
            Region=(RingPositions[0], RingPositions[1], RingPositions[2],
                    RingPositions[3]))
        if NoHasRing[0] != 0 and NoHasRing[1] != 0:
            return True
        else:
            return False
def GetStatsPosition(HOOK_OPTION):
    StatsPositions = [0, 0, 0, 0]
    if HOOK_OPTION == 0:
        import pyautogui

        stats = pyautogui.locateOnScreen('images/TibiaSettings/Stop.png', grayscale=True, confidence=0.9)
        if stats[0] != 0 and stats[1] != 0:
            StatsPositions[0] = stats[0] - 117
            StatsPositions[1] = stats[1] + 1
            StatsPositions[2] = StatsPositions[0] + 105
            StatsPositions[3] = StatsPositions[1] + 10
            return StatsPositions[0], StatsPositions[1], StatsPositions[2], StatsPositions[3]

    elif HOOK_OPTION == 1:
        from Engine.HookWindow import LocateImage

        StatsPositions[0], StatsPositions[1] = LocateImage('images/TibiaSettings/Stop.png', Precision=0.8)
        if StatsPositions[0] != 0 and StatsPositions[1] != 0:
            StatsPositions[0] = StatsPositions[0] - 117
            StatsPositions[1] = StatsPositions[1] + 1
            StatsPositions[2] = StatsPositions[0] + 105
            StatsPositions[3] = StatsPositions[1] + 10
            return StatsPositions[0], StatsPositions[1], StatsPositions[2], StatsPositions[3]
        else:
            return 0, 0, 0, 0
Esempio n. 4
0
def CheckWaypoint(image, map_positions, HOOK_OPTION):
    wpt = [0, 0]
    middle_start = (map_positions[0] + 48, map_positions[1] + 48)
    middle_end = (map_positions[2] - 48, map_positions[3] - 48)
    if HOOK_OPTION == 0:
        import pyautogui

        wpt = pyautogui.locateOnScreen('images/MapSettings/' + image + '.png',
                                       region=(middle_start[0],
                                               middle_start[1], middle_end[0],
                                               middle_end[1]),
                                       confidence=0.9,
                                       grayscale=True)
        if wpt:
            print("Arrived At Mark:", image)
            return True
        else:
            print("Didn't Arrived At Mark:", image)
            return False

    elif HOOK_OPTION == 1:
        from Engine.HookWindow import LocateImage

        wpt[0], wpt[1] = LocateImage('images/MapSettings/' + image + '.png',
                                     Precision=0.7,
                                     Region=(middle_start[0], middle_start[1],
                                             middle_end[0], middle_end[1]))

        if wpt[0] != 0 and wpt[1] != 0:
            print("Arrived At Mark:", image)
            return True
        else:
            print("Didn't Arrived At Mark:", image, "\n")
            return False
Esempio n. 5
0
def ScanHur(StatsPositions, HOOK_OPTION):
    HasHur = [0, 0]
    if HOOK_OPTION == 0:
        import pyautogui

        HasHur = pyautogui.locateOnScreen(
            'images/PlayerStats/Hur.png',
            confidence=0.9,
            region=(StatsPositions[0], StatsPositions[1], StatsPositions[2],
                    StatsPositions[3]))
        if HasHur:
            return False
        else:
            return True

    elif HOOK_OPTION == 1:
        from Engine.HookWindow import LocateImage

        HasHur[0], HasHur[1] = LocateImage(
            'images/PlayerStats/Hur.png',
            Precision=0.9,
            Region=(StatsPositions[0], StatsPositions[1], StatsPositions[2],
                    StatsPositions[3]))
        if HasHur[0] != 0 and HasHur[1] != 0:
            return False
        else:
            return True
Esempio n. 6
0
def GetMapPosition(HOOK_OPTION):
    MapPositions = [0, 0, 0, 0]
    if HOOK_OPTION == 0:
        import pyautogui

        top_right = pyautogui.locateOnScreen(
            "images/MapSettings/MapSettings.png", confidence=0.8)
        map_size = 110  # 110px square
        MapPositions[0], MapPositions[
            1] = top_right[0] - map_size + 4, top_right[1] + 1
        MapPositions[2], MapPositions[
            3] = top_right[0] - 1, top_right[1] + map_size - 1
        if top_right[0] != -1:
            print(
                f"MiniMap Start [X: {MapPositions[0]}, Y: {MapPositions[1]}]")
            print(f"MiniMap End [X: {MapPositions[2]}, Y: {MapPositions[3]}]")
            print("")
            print(
                f"Size of MiniMap [X: {MapPositions[2] - MapPositions[0]}, Y: {MapPositions[3] - MapPositions[1]}]"
            )
            return MapPositions[0], MapPositions[1], MapPositions[
                2], MapPositions[3]
        else:
            print("Error To Get Map Positions")
            return -1, -1, -1, -1

    elif HOOK_OPTION == 1:
        from Engine.HookWindow import LocateImage

        top_right = LocateImage("images/MapSettings/MapSettings.png",
                                Precision=0.8)
        map_size = 110  # 110px square
        MapPositions[0], MapPositions[
            1] = top_right[0] - map_size + 4, top_right[1] + 1
        MapPositions[2], MapPositions[
            3] = top_right[0] - 1, top_right[1] + map_size - 1
        if top_right[0] != -1:
            print(
                f"MiniMap Start [X: {MapPositions[0]}, Y: {MapPositions[1]}]")
            print(f"MiniMap End [X: {MapPositions[2]}, Y: {MapPositions[3]}]")
            print("")
            print(
                f"Size of MiniMap [X: {MapPositions[2] - MapPositions[0]}, Y: {MapPositions[3] - MapPositions[1]}]"
            )
            return MapPositions[0], MapPositions[1], MapPositions[
                2], MapPositions[3]
        else:
            print("Error To Get Map Positions")
            return -1, -1, -1, -1
def GetPlayerPosition(HOOK_OPTION):
    gameWindow = [0, 0, 0, 0]
    Player = [0, 0]
    left_gw = [0, 0]
    right_gw = [0, 0]
    button_gw = [0, 0]

    if HOOK_OPTION == 0:

        left_gw = pyautogui.locateOnScreen("images/PlayerSettings/LeftOption1.png", confidence=0.8)
        if left_gw is None:
            left_gw = pyautogui.locateOnScreen("images/PlayerSettings/LeftOption2.png", confidence=0.8)
    
        if left_gw is None:
            left_gw = pyautogui.locateOnScreen("images/PlayerSettings/LeftOption3.png", confidence=0.8)
    
        try:
            gameWindow[0] = int(left_gw[0])
            gameWindow[1] = int(left_gw[1])
        except Exception as errno:
            print("?Error On ", errno)
    
        right_gw = pyautogui.locateOnScreen("images/PlayerSettings/RightOption1.png", confidence=0.8)
        if right_gw is None:
            right_gw = pyautogui.locateOnScreen("images/PlayerSettings/RightOption2.png", confidence=0.8)
    
        if right_gw is None:
            right_gw = pyautogui.locateOnScreen("images/PlayerSettings/RightOption3.png", confidence=0.8)
    
        if right_gw is None:
            right_gw = pyautogui.locateOnScreen("images/PlayerSettings/RightOption4.png", confidence=0.8)
        try:
            gameWindow[2] = int(right_gw[0])
        except Exception as errno:
            print("?Error On ", errno)
    
        button_gw = pyautogui.locateOnScreen("images/PlayerSettings/EndLocation.png", confidence=0.8)
        if button_gw is None:
            print("BUTTON GAME WINDOWS IS NONE")
        else:
            gameWindow[3] = int(button_gw[1])

        if gameWindow[0] != 0 and gameWindow[2] != 0:
            Player[0] = int(((gameWindow[2] - gameWindow[0]) / 2) + gameWindow[0])
        else:
            print("X GAME WINDOW ERROR")
            x, y = pyautogui.size()
            Player[0] = x / 2

        if gameWindow[1] != 0 and gameWindow[3] != 0:
            Player[1] = int(((gameWindow[3] - gameWindow[1]) / 2) + gameWindow[1])
        else:
            print("Y GAME WINDOW ERROR")
            x, y = pyautogui.size()
            Player[1] = y / 2
    
        if Player is not None:
            return Player[0], Player[1], gameWindow[0], gameWindow[1], gameWindow[2], gameWindow[3]
        else:
            print("Error To Get Player Position !!!")
            return 0, 0, 0, 0, 0, 0

    elif HOOK_OPTION == 1:
        from Engine.HookWindow import LocateImage

        left_gw[0], left_gw[1] = LocateImage("images/PlayerSettings/LeftOption1.png", Precision=0.75)
        if left_gw[0] == 0 and left_gw[1] == 0:
            left_gw[0], left_gw[1] = LocateImage("images/PlayerSettings/LeftOption2.png", Precision=0.75)

        if left_gw[0] == 0 and left_gw[1] == 0:
            left_gw[0], left_gw[1] = LocateImage("images/PlayerSettings/LeftOption3.png", Precision=0.75)

        try:
            gameWindow[0] = int(left_gw[0])
            gameWindow[1] = int(left_gw[1])
        except Exception as errno:
            print("?Error On ", errno)

        right_gw[0], right_gw[1] = LocateImage("images/PlayerSettings/RightOption1.png", Precision=0.75)
        if right_gw[0] == 0 and right_gw[1] == 0:
            right_gw[0], right_gw[1] = LocateImage("images/PlayerSettings/RightOption2.png", Precision=0.75)

        if right_gw[0] == 0 and right_gw[1] == 0:
            right_gw[0], right_gw[1] = LocateImage("images/PlayerSettings/RightOption3.png", Precision=0.75)

        if right_gw[0] == 0 and right_gw[1] == 0:
            right_gw[0], right_gw[1] = LocateImage("images/PlayerSettings/RightOption4.png", Precision=0.75)
        try:
            gameWindow[2] = int(right_gw[0])
        except Exception as errno:
            print("?Error On ", errno)

        button_gw[0], button_gw[1] = LocateImage("images/PlayerSettings/EndLocation.png", Precision=0.7)
        if button_gw[0] == 0 and button_gw[1] == 0:
            print("BUTTON GAME WINDOWS IS NONE")
        else:
            gameWindow[3] = int(button_gw[1])

        if gameWindow[0] != 0 and gameWindow[2] != 0:
            Player[0] = int(((gameWindow[2] - gameWindow[0]) / 2) + gameWindow[0])
        else:
            print("X GAME WINDOW ERROR")
            x, y = pyautogui.size()
            Player[0] = x / 2

        if gameWindow[1] != 0 and gameWindow[3] != 0:
            Player[1] = int(((gameWindow[3] - gameWindow[1]) / 2) + gameWindow[1])
        else:
            print("Y GAME WINDOW ERROR")
            x, y = pyautogui.size()
            print(x, y)
            Player[1] = y / 2

        if Player[1] != 0:
            return Player[0], Player[1], gameWindow[0], gameWindow[1], gameWindow[2], gameWindow[3]
        else:
            print("Error To Get Player Position !!!")
            return 0, 0, 0, 0, 0, 0