#include "main.h"
int processEvents(SDL_Window *window,GameState *gameState)
{
SDL_Event event;
int done = 0;
while(SDL_PollEvent(&event))
{
switch(event.type)
{
case SDL_WINDOWEVENT_CLOSE:
{
if(window)
{
SDL_DestroyWindow(window);
window = NULL;
done = 1;
}
}
break;
case SDL_KEYDOWN:
{
switch(event.key.keysym.sym)
{
case SDLK_ESCAPE:
done = 1;
break;
case SDLK_e:
{
if(!gameState->player2.facing_left)
{
gameState->player2.shooting = addBullet(gameState->player2.x+35, gameState->player2.y+20, 7, gameState, 2);
}
else
{
gameState->player2.shooting = addBullet(gameState->player2.x+5, gameState->player2.y+20, -7, gameState, 2);
}
if(gameState->player2.shooting)
Mix_PlayChannel(-1, gameState->disparo, 0);
}
break;
}
}
break;
case SDL_QUIT:
//quit out of the game
done = 1;
break;
case SDL_MOUSEBUTTONDOWN:
{
if(!gameState->player1.facing_left)
{
gameState->player1.shooting = addBullet(gameState->player1.x+35, gameState->player1.y+20, 7, gameState, 1);
}
else
{
gameState->player1.shooting = addBullet(gameState->player1.x+5, gameState->player1.y+20, -7, gameState, 1);
}
if(gameState->player1.shooting)
Mix_PlayChannel(-1, gameState->disparo, 0);
}
break;
}
}
const Uint8 *state = SDL_GetKeyboardState(NULL);
if(state[SDL_SCANCODE_LEFT])
{
gameState->player1.x -= 5;
gameState->player1.facing_left = 1;
gameState->player1.walking = 1;
}
if(state[SDL_SCANCODE_RIGHT])
{
gameState->player1.x += 5;
gameState->player1.facing_left = 0;
gameState->player1.walking = 1;
}
if(state[SDL_SCANCODE_UP])
{
if(gameState->player1.salto == 1 && gameState->player1.dy != 0)
{
}
else if(gameState->player1.salto == 0 && gameState->player1.dy == 0)
{
gameState->player1.dy = -15;
gameState->player1.salto = 1;
}
}
if(state[SDL_SCANCODE_A])
{
gameState->player2.x -= 5;
gameState->player2.facing_left = 1;
gameState->player2.walking = 1;
}
if(state[SDL_SCANCODE_D])
{
gameState->player2.x += 5;
gameState->player2.facing_left = 0;
gameState->player2.walking = 1;
}
if(state[SDL_SCANCODE_W])
{
if(gameState->player2.salto == 1 && gameState->player2.dy != 0)
{
}
else if(gameState->player2.salto == 0 && gameState->player2.dy == 0)
{
gameState->player2.dy = -15;
gameState->player2.salto = 1;
}
}
if(state[SDL_SCANCODE_SPACE])
{
gameState->player2.y -= 5;
}
if(state[SDL_SCANCODE_S])
{
gameState->player2.y += 5;
}
return done;
}