我正在使用sikulixide创建或至少尝试一个移动游戏farmer bot,但我是Python的新手,我的主要语言是Java,不知道如何使用Python正确地处理游戏的逻辑。在
游戏逻辑是:
有4个空格可以放置一个怪物
如果你把怪物1的rank1放在space1上,你就不能把同一怪物的rank2放在任何其他空间
如果你按住怪物肖像2秒,然后拖放到太空中,游戏会检测到你选择了一个怪物
怪物达到等级上限后,自动运行停止,出现消息屏幕“levelMax”
如果我的跑步次数用完,自动运行将停止,出现消息屏幕“runsZero”并停止bot
bot流程:
首次运行是启动bot的触发器
当“levelMax”出现后,它会将所有怪物等级最高替换为1级怪物,然后循环再次开始,直到所有运行结束或没有4个怪物等级1。在
ps:我会在编辑时发布调试消息,我忘了把它们写下来
ps2:你们有可能根据逻辑发现游戏
编辑:[错误]错误原因:回溯(最近一次调用):File“C:\SikuliX\德拉甘德罗普·西库里\dragandrop.py“,第40行,在monstroUm=monster[monstroInt]索引器错误:索引超出范围:2
monster1 = ["rank1.png","rank2.png"]
monster2 = ["rank1.png","rank2.png"]
monster3 = ["rank1.png","rank2.png"]
monster4 = ["rank1.png","rank2.png"]
monstersArray = [monster1, monster2, monster3, monster4]
levelMax = "1524942610020.png"
close = "1524942624936.png"
manage = "1524942638721.png"
okButton = "1524943405776.png"
start = "1524943415429.png"
yesButton = "1524943424798.png"
runsZero = "runsZero.png"
closeChat = "closeChat.png"
arrowLeft = "arrowLeft.png"
nox = App.focus("NoxPlayer 6.0.8.0")
localizacoes = [Location(355, 324),Location(357, 506),Location(356, 679),Location(357, 855)]
Settings.DelayBeforeDrag = 2.5
Settings.DelayBeforeDrop = 2.5
running = True
while (nox.hasWindow() and running):
localiza = 0
monstersArrayInt = 0
monstersSelect = monsters
while localiza <= len(localizacoes):
while monstersArrayInt <= len(monstersSelect):
monster = monstersSelect[monstersArrayInt]
monstroInt = 0
while monstroInt <= len(monster):
monstroUm = monster[monstroInt]
if monsterWindow.exists(monstroUm,3):
noxWindow.dragDrop(monstroUm,localiza)
del monstersSelec[monstersArrayInt]
localiza += 1
break
elif monstroInt == len(monstersSelect):
monstersArrayInt += 1
break
else: #exists(monstroUm) == False:
monstroInt += 1
wheel(monsterWindow,WHEEL_DOWN, 2)
目前没有回答
相关问题 更多 >
编程相关推荐