Javascript 在两个坐标之间随机移动鼠标?
我和我的朋友做了一个游戏,我们正在尝试为它创建一个机器人 它一次又一次地重复同样的动作。但是鼠标总是沿着相同的路径从A点到B点 有没有办法让鼠标从a点移动到B点,并且永远不要使用相同的路径 这是bot的代码:Javascript 在两个坐标之间随机移动鼠标?,javascript,robotjs,Javascript,Robotjs,我和我的朋友做了一个游戏,我们正在尝试为它创建一个机器人 它一次又一次地重复同样的动作。但是鼠标总是沿着相同的路径从A点到B点 有没有办法让鼠标从a点移动到B点,并且永远不要使用相同的路径 这是bot的代码: // import the robotjs library var robot = require('robotjs'); function main() { console.log("Starting..."); sleep(4000);
// 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)), 0, 0, 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)
const robot=require(“robotjs”)
const START=[764557]
const END=[356432]
常数循环=100
robot.setMouseDelay(0)
常量getRandom=(最小值,最大值)=>{
返回Math.floor(Math.random()*(max-min+1)+min);
}
常数go=(坐标)=>{
返回新承诺((解决)=>{
robot.moveMouseSmooth(getRandom(END[0],START[0]),getRandom(END[1],START[1]),1)
robot.moveMouseSmooth(坐标[0],坐标[1],1)
解决()
})
}
常量递归=异步(循环)=>{
for(设i=0;i
好吧,如果你的目标是相同的路径不应该重复,那么可能会有n
个排列。你需要有一个已定义路径的列表,并且可以尝试在这些路径之间随机切换。难道没有一个选项可以在a点和B点之间随机移动鼠标吗?那么鼠标很可能永远不会使用同一条路径两次?@Rick你没有抓住重点。。。“可能永远不会”并非如此——它“肯定会在某个时候”使用与以前相同的路径。如果脚本速度足够快的话,很快就会完成。