如何解决2个坐标之间的随机鼠标移动?
我和我的朋友制作了一个游戏,我们正在尝试为它创建一个机器人。
它一遍又一遍地重复相同的动作。但是鼠标总是沿着相同的路径从 A 点到 B 点。
有没有办法让鼠标从 A 点移动到 B 点,并且不让它使用相同的路径?
这是机器人的代码:
// import the robotjs library
var robot = require('robotjs');
function main() {
console.log("Starting...");
sleep(4000);
// basic infinite loop
while (true) {
robot.moveMouse(764,557);
robot.mouseClick();
robot.moveMouse(356,432);
sleep(8000);
}
}
function sleep(ms) {
Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),ms);
}
main();
我是编码新手,所以请怜悯;)
解决方法
给你:
const robot = require("robotjs")
const START = [764,557]
const END = [356,432]
const loops = 100
robot.setMouseDelay(0)
const getRandom = (min,max) => {
return Math.floor(Math.random() * (max - min + 1) + min);
}
const go = (coord) => {
return new Promise((resolve) => {
robot.moveMouseSmooth(getRandom(END[0],START[0]),getRandom(END[1],START[1]),1)
robot.moveMouseSmooth(coord[0],coord[1],1)
resolve()
})
}
const recurse = async (loops) => {
for (let i = 0; i < loops; i++) {
await go(START)
console.log("click") // Insert clicking action here,for single left mouseclick just use,robot.mouseClick()
await go(END)
}
}
recurse(loops)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。