From ca58665a355f47033470a838339b8813616164da Mon Sep 17 00:00:00 2001 From: andreferreira Date: Wed, 25 Nov 2009 00:13:06 -0200 Subject: [PATCH] Corrigindo bug de mouse --- controle.cpp | 1 + controle.h | 1 + controleteclado.cpp | 2 +- controlewii.cpp | 6 ++++-- controlewii.h | 2 +- 5 files changed, 8 insertions(+), 4 deletions(-) diff --git a/controle.cpp b/controle.cpp index f3ec3eb..e39c248 100644 --- a/controle.cpp +++ b/controle.cpp @@ -3,6 +3,7 @@ Controle::Controle(Player &p) : jogador( p ) { quit = false; + game = jogador.game; } void Controle::handleEvents() { diff --git a/controle.h b/controle.h index cc735df..30d3de1 100644 --- a/controle.h +++ b/controle.h @@ -7,6 +7,7 @@ class Controle { protected: Player &jogador; bool quit; + Game* game; public: Controle(Player &p); void handleEvents(); diff --git a/controleteclado.cpp b/controleteclado.cpp index f9e573d..792f14d 100644 --- a/controleteclado.cpp +++ b/controleteclado.cpp @@ -19,7 +19,7 @@ void ControleTeclado::handleOther() { void ControleTeclado::handleEvent(SDL_Event &e) { switch( e.type ) { case SDL_MOUSEMOTION: { - jogador.setAim(e.motion.x,e.motion.y); + jogador.setAim(e.motion.x+game->camera.x,e.motion.y+game->camera.y); } break; case SDL_MOUSEBUTTONDOWN: diff --git a/controlewii.cpp b/controlewii.cpp index 8d22514..7aa0d41 100644 --- a/controlewii.cpp +++ b/controlewii.cpp @@ -4,12 +4,12 @@ ControleWii::ControleWii(Player &p) : Controle(p) { + connected = false; initializeWiimote(); stickX = 0xffff; stickY = 0xffff; buttonsNunchuck = 0; buttonsWii = 0; - game = jogador.game; for (int i = 0; i < CWIID_IR_SRC_COUNT; i++) cyclesSinceSeen[i] = -1; } @@ -130,6 +130,7 @@ void ControleWii::handleEvent(SDL_Event &e) { } break; case SDL_MOUSEMOTION: { + if (!connected) jogador.setAim(e.motion.x+game->camera.x,e.motion.y+game->camera.y); } break; @@ -336,5 +337,6 @@ bool ControleWii::ControleWii::initializeWiimote() { fprintf(stderr, "Error enabling messages\n"); return false; } - + connected = true; + return true; } diff --git a/controlewii.h b/controlewii.h index 480920c..98e6bd9 100644 --- a/controlewii.h +++ b/controlewii.h @@ -24,7 +24,7 @@ class ControleWii: public Controle { virtual void handleOther(); Ponto lastSeenAt[CWIID_IR_SRC_COUNT]; int cyclesSinceSeen[CWIID_IR_SRC_COUNT]; - Game* game; + bool connected; }; -- 2.11.4.GIT