Pegar itens com Enter (não-testado)
[Projeto-PCG.git] / controleteclado.cpp
blob792f14d6b0b3cf96512a5fb464c06ec1da50c1d5
1 #include "controleteclado.h"
3 ControleTeclado::ControleTeclado(Player &p) : Controle(p) {
7 void ControleTeclado::handleOther() {
8 Uint8 *keystates = SDL_GetKeyState( NULL );
10 if (keystates[SDLK_DOWN]) {
11 jogador.onGround = false;
12 jogador.bypass = true;
14 if(SDL_GetMouseState(NULL, NULL) & SDL_BUTTON(1)) { //botao esquerdo do mouse pressionado
15 jogador.fire();
19 void ControleTeclado::handleEvent(SDL_Event &e) {
20 switch( e.type ) {
21 case SDL_MOUSEMOTION: {
22 jogador.setAim(e.motion.x+game->camera.x,e.motion.y+game->camera.y);
24 break;
25 case SDL_MOUSEBUTTONDOWN:
26 jogador.fire();
27 break;
28 case SDL_KEYUP:
29 switch (e.key.keysym.sym) {
30 case SDLK_LEFT:
31 jogador.addSpeed(3,0);
32 break;
33 case SDLK_RIGHT:
34 jogador.addSpeed(-3,0);
35 break;
36 default: break;
38 break;
39 case SDL_KEYDOWN:
40 switch (e.key.keysym.sym) {
41 case SDLK_DOWN:
42 jogador.onGround = false;
43 jogador.bypass = true;
44 break;
45 case SDLK_UP:
46 if (jogador.onGround) {
47 jogador.addSpeed( 0, -8);
48 jogador.onGround = false;
50 break;
51 case SDLK_LEFT:
52 jogador.addSpeed(-3, 0);
53 break;
54 case SDLK_RIGHT:
55 jogador.addSpeed( 3, 0);
56 break;
57 default: break;
59 break;