尝试修复我玩的游戏(Wizard101 Auto Farming)的脚本

问题描述 投票:0回答:1

我一直在尝试定制此代码以适用于我的桌面,以便我可以在我玩的游戏中自动种植一些敌人。现在,代码停留在某个点上,它在某个像素处扫描 UI 以获得某种蓝色阴影。如果颜色正确,代码就会继续。如果没有,它就会完全停止。我不知道该怎么做,但如果有人能看一下,我将不胜感激。以下是一些屏幕截图和代码:

此外,代码分为两部分:第一个脚本允许与游戏交互,第二个脚本是编程自动移动、点击等。第二块很简单,不需要放在这里,也没有必要。

第一块(主要问题在于 def is_mana_low 的 POSITION 和 COLOR 部分:

def is_mana_low(self):
        self.set_active()
        # Matches a pixel in the lower third of the mana globe
        POSITION = (79, 565)
        COLOR = (66, 13, 83)
        THRESHOLD = 10
        return not self.pixel_matches_color(POSITION, COLOR, threshold=THRESHOLD)

    def use_potion_if_needed(self):
        mana_low = self.is_mana_low()
        health_low = self.is_health_low()

        if mana_low:
            print('Mana is low, using potion')
        if health_low:
            print('Health is low, using potion')
        if mana_low or health_low:
            self.click(160, 590, delay=.2)
python social-gaming
1个回答
0
投票

将其设置为特定的 x,y 坐标时我遇到了同样的问题。所以这就是我解决这个问题的方法:

我使用了 pyautogui 和 cv2。 我有一个屏幕盖,然后创建了一个相当薄的矩形,位于显示剩余法力值的黄色数字的正下方,从能量球体的边缘到法力球体的边缘。 然后,当我的脚本运行时,它会检查该矩形是否匹配。如果有匹配,你就有足够的法力,如果没有,你可能想喝一瓶药水。

我尝试做同样的事情来检查法力小精灵,如果它在屏幕上看到一个小精灵,就跑到小精灵,然后回到起始位置(但该功能有点令人兴奋的自动提款机,我正在尝试让它更好地工作)。

© www.soinside.com 2019 - 2024. All rights reserved.