const robot = require("robotjs"); // Função para ler a cor de um pixel na tela function getPixelColor(x, y) { return robot.getPixelColor(x, y); } // O script AHK será executado e a macro será ativada/desativada pela tecla "B" // Função para verificar se a cor está dentro de uma faixa de cores function isColorInRange(color, minColor, maxColor) { const intColor = parseInt(color, 16); const intMinColor = parseInt(minColor, 16); const intMaxColor = parseInt(maxColor, 16); return intColor >= intMinColor && intColor <= intMaxColor; } // Cor mínima e máxima para a faixa de cores (por exemplo, laranja) const minColor = "ffc500"; // Cor mínima const maxColor = "ffdf0f"; // Cor máxima // Função para pressionar a tecla "J" function pressKeyJ() { robot.keyTap("j"); } // Função para pressionar a tecla "D" function pressKeyD() { robot.keyToggle("d", "down"); setTimeout(() => robot.keyToggle("d", "up"), 10); // Liberar a tecla "D" após 10 ms } // Função para pressionar a tecla "F" function pressKeyF() { robot.keyToggle("f", "down"); setTimeout(() => robot.keyToggle("f", "up"), 10); // Liberar a tecla "F" após 10 ms } // Função para pressionar a tecla "K" function pressKeyK() { robot.keyTap("k"); } // Função principal para verificar a cor de um único pixel continuamente async function checkPixelColor() { try { const inicio = performance.now(); // Marca o tempo de início const color = getPixelColor(635, 365); // Coordenadas do pixel que você deseja verificar // console.log(getPixelColor(1154, 282)); if (color === "f84828") { // A cor do pixel é vermelha pressKeyJ(); } else if (color === "68c0c0") { // A cor do pixel é azul pressKeyK(); } else if (color === "f8b800") { // A cor do pixel é "f8b800" robot.keyTap("b"); while (getPixelColor(635, 365) === "f8b800") { } robot.keyTap("b"); } //else if (isColorInRange(color, minColor, maxColor)) { // A cor do pixel está dentro da faixa de cores // robot.keyTap("b"); // while (getPixelColor(1154, 282) !== "000000") { // } // robot.keyTap("b"); //} else if (color === "ff7800") { // A cor do pixel é "ff7800" robot.keyTap("b"); await sleep(700); // Espera por 10 ms robot.keyTap("b"); } } catch (error) { console.error("Erro:", error); } setTimeout(checkPixelColor, 10); // Chama a função novamente após 10 ms } // Função de pausa assíncrona function sleep(ms) { return new Promise((resolve) => setTimeout(resolve, ms)); } // Inicie a verificação pela primeira vez checkPixelColor();