Valorant Arduino mouse ters yöne hareket ediyor

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Ads Expert 👨‍💻
Donator
Katılım
11 Ağu 2023
Mesajlar
109
Tepki puanı
31
Ödüller
3
Sosyal
2 HİZMET YILI
Arduino leonardo kullanıyorum. Mouse USB host Shield'a bağlı. Logitech G PRO Superlight 2 kullanıyorum. Tüm butonlar çalışıyor fakat sola çekince mouse yukarı, sağa çekince mouse aşağı iniyor. Soruna yardımcı olabilecek var mı?

Aurduino Kodu:

Kod:
#include <avr/pgmspace.h>
#include <Usb.h>
#include <usbhub.h>
#include <hidboot.h>
#include <hiduniversal.h>
#include <Keyboard.h>
#include <Mouse.h>

USB Usb;
HIDUniversal HidMouse(&Usb);

// Mouse hareket hassasiyeti için sabitler
#define MOUSE_BACK 4
#define MOUSE_FORWARD 5

// Mouse hareketi için yardımcı fonksiyon
void MoveMouseToXY(int x, int y) {
  // Eğer hareket yoksa fonksiyondan çık
  if (x == 0 && y == 0) return;
 
  Mouse.begin();
  Mouse.move(x, y, 0);  // Direkt hareket ettir
  Mouse.end();
}

// Mouse olaylarını işleyen sınıf
class MouseRptParser : public MouseReportParser {
protected:
    virtual void OnMouseMove        (MOUSEINFO* mi) {
        MoveMouseToXY(mi->dX, mi->dY);
    }
   
    virtual void OnLeftButtonUp     (MOUSEINFO* mi) {
        Mouse.begin();
        Mouse.release(MOUSE_LEFT);
        Mouse.end();
    }
   
    virtual void OnLeftButtonDown   (MOUSEINFO* mi) {
        Mouse.begin();
        Mouse.press(MOUSE_LEFT);
        Mouse.end();
    }
   
    virtual void OnRightButtonUp    (MOUSEINFO* mi) {
        Mouse.begin();
        Mouse.release(MOUSE_RIGHT);
        Mouse.end();
    }
   
    virtual void OnRightButtonDown  (MOUSEINFO* mi) {
        Mouse.begin();
        Mouse.press(MOUSE_RIGHT);
        Mouse.end();
    }
   
    virtual void OnMiddleButtonUp   (MOUSEINFO* mi) {
        Mouse.begin();
        Mouse.release(MOUSE_MIDDLE);
        Mouse.end();
    }
   
    virtual void OnMiddleButtonDown (MOUSEINFO* mi) {
        Mouse.begin();
        Mouse.press(MOUSE_MIDDLE);
        Mouse.end();
    }
};

MouseRptParser Prs;

void setup() {
    Serial.begin(115200);
    if (Usb.Init() == -1) {
        Serial.println("USB Baslatilamadi.");
    }
    HidMouse.SetReportParser(0, (HIDReportParser*)&Prs);
}

// Serial'dan gelen veriler için buffer
byte buffer[3];

void loop() {
    Usb.Task();
   
    if (Serial.available() >= 3) {
        Serial.readBytes(buffer, 3);
       
        // X ve Y hareketlerini ve tıklama durumunu al
        int moveX = (int8_t)buffer[0];  // int8_t kullanarak işaretli sayı olarak al
        int moveY = (int8_t)buffer[1];
        int shoot = buffer[2];
       
        // Mouse'u hareket ettir
        MoveMouseToXY(moveX, moveY);
       
        // Tıklama gerekiyorsa tıkla
        if (shoot == 1) {
            Mouse.begin();
            Mouse.click(MOUSE_LEFT);
            Mouse.end();
        }
    }
}
 
Moderatörün son düzenlenenleri:
Üye
Katılım
16 Kas 2021
Mesajlar
15
Tepki puanı
1
Ödüller
3
Yaş
25
4 HİZMET YILI
hile calisiyorsa kiitleniyorsa arduino kismina yardimci olurum DC : burau.
 
Uzman Üye
Katılım
17 Ara 2023
Mesajlar
158
Tepki puanı
0
Ödüller
1
Yaş
25
Sosyal
2 HİZMET YILI
kodlarda sıkıntı olabilir onlara bakın lütfen
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst