Autoxjs 实践-小猿口算Pk

概述

最近刷到快手视频,听说小猿口算很火,然后下载玩了一会,顺便使用 AutoxJS 写了一个比较大小的脚本,效果还不错,至少不需要手动。

实践视频

autojsPK视频

实现原理

实现原理很简单,就是使用AutoxJS抓取控件,获取值,判断大小、手势。
找值的位置,大佬们应该都知道,就不细说了。

画大于号

let fifthView = views[14];  // 获取View控件
let bounds = fifthView.bounds();
let centerX = bounds.centerX();
let centerY = bounds.centerY();
// 执行表示大于号的手势
gesture(150, [centerX, centerY], [centerX + 50, centerY + 30], [centerX, centerY + 90]);

画小于号

let fifthView = views[14]; 
 let bounds = fifthView.bounds();
let centerX = bounds.centerX();
let centerY = bounds.centerY();
// 执行表示小于号的手势
gesture(150, [centerX, centerY], [centerX - 50, centerY + 100], [centerX, centerY + 150]);

完整代码:完整代码
http://t.a0c.top/C39LV/f71Cw2Ar

口算PK代码通常涉及到简单的用户界面交互,下面是一个简单的Python示例,使用tkinter库模拟两个玩家轮流输入数字进行加减运算: ```python import tkinter as tk def calculate(num1, num2, operator): if operator == '+': result = num1 + num2 elif operator == '-': result = num1 - num2 else: return "错误的操作符" return result class MathGame: def __init__(self, root): self.root = root self.player1_score = 0 self.player2_score = 0 # 创建操作按钮和文本框 self.btn1 = tk.Button(root, text="玩家1+") self.btn1.bind("<Button-1>", lambda event: self.check_answer("player1", "+")) self.btn2 = tk.Button(root, text="玩家1-") self.btn2.bind("<Button-1>", lambda event: self.check_answer("player1", "-")) self.btn1.grid(row=0, column=0) self.btn2.grid(row=0, column=1) self.btn3 = tk.Button(root, text="玩家2+") self.btn3.bind("<Button-1>", lambda event: self.check_answer("player2", "+")) self.btn4 = tk.Button(root, text="玩家2-") self.btn4.bind("<Button-1>", lambda event: self.check_answer("player2", "-")) self.btn3.grid(row=1, column=0) self.btn4.grid(row=1, column=1) self.score_label = tk.Label(root, text="") self.score_label.grid(row=2, columnspan=2) def check_answer(self, player, operator): try: num1 = int(self.entry.get()) num2 = int(self.entry.get()) result = calculate(num1, num2, operator) print(f"{player} 的结果: {result}") # 更新得分并清空输入框 if result % 2 == 0: self.update_score(player, 1) else: self.update_score(player, -1) self.entry.delete(0, tk.END) except ValueError: print("请输入数字!") def update_score(self, player, score): self.player1_score += score if player == 'player1' else -score self.player2_score += score if player == 'player2' else -score self.score_label.config(text=f"玩家1: {self.player1_score}, 玩家2: {self.player2_score}") # 主函数 if __name__ == "__main__": root = tk.Tk() app = MathGame(root) root.mainloop()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值