Update events.c
This commit is contained in:
+13
-14
@@ -7,15 +7,11 @@
|
|||||||
#include "sdl.h"
|
#include "sdl.h"
|
||||||
|
|
||||||
extern int tile_pos;
|
extern int tile_pos;
|
||||||
//extern Ren_game ();
|
|
||||||
|
|
||||||
//extern int render ();
|
|
||||||
|
|
||||||
bool next_p = false; // next piece flag
|
bool next_p = false; // next piece flag
|
||||||
bool restart = false; // restart flag
|
bool restart = false; // restart flag
|
||||||
bool pause_f = false;
|
bool pause_f = false;
|
||||||
bool quit = false; // quit flag
|
bool quit = false; // quit flag
|
||||||
bool main_m = false;
|
|
||||||
|
|
||||||
int handle_events () {
|
int handle_events () {
|
||||||
|
|
||||||
@@ -24,7 +20,6 @@ int handle_events () {
|
|||||||
while (restart == false) {
|
while (restart == false) {
|
||||||
Ren_game ();
|
Ren_game ();
|
||||||
SDL_PollEvent (&event);
|
SDL_PollEvent (&event);
|
||||||
//SDL_Delay(40);
|
|
||||||
switch (event.type) {
|
switch (event.type) {
|
||||||
case SDL_KEYDOWN:
|
case SDL_KEYDOWN:
|
||||||
if(event.key.keysym.sym == SDLK_c
|
if(event.key.keysym.sym == SDLK_c
|
||||||
@@ -35,13 +30,20 @@ int handle_events () {
|
|||||||
break;
|
break;
|
||||||
} // gradient colour cycle
|
} // gradient colour cycle
|
||||||
|
|
||||||
|
if( event.key.keysym.sym == SDLK_x
|
||||||
|
&& (event.key.keysym.mod & KMOD_CTRL) != 0 ) {
|
||||||
|
break;
|
||||||
|
} // invert gradient
|
||||||
|
|
||||||
if (event.key.keysym.sym == SDLK_LEFT) {
|
if (event.key.keysym.sym == SDLK_LEFT) {
|
||||||
|
|
||||||
if (col == 0) {break;}
|
if (col == 0) {break;}
|
||||||
grid[0][row + 1][col] = 0;
|
grid[0][row + 1][col] = 0;
|
||||||
grid[0][row + 0][col] = 0;
|
grid[0][row + 0][col] = 0;
|
||||||
|
grid[0][row + 2][col] = 0;
|
||||||
grid[0][row - 1][col] = 0;
|
grid[0][row - 1][col] = 0;
|
||||||
col--;
|
col--;
|
||||||
|
disp_column (row, col);
|
||||||
break;
|
break;
|
||||||
} // left arrow
|
} // left arrow
|
||||||
|
|
||||||
@@ -49,49 +51,46 @@ int handle_events () {
|
|||||||
if (col == 7) {break;}
|
if (col == 7) {break;}
|
||||||
grid[0][row + 1][col] = 0;
|
grid[0][row + 1][col] = 0;
|
||||||
grid[0][row + 0][col] = 0;
|
grid[0][row + 0][col] = 0;
|
||||||
|
grid[0][row + 2][col] = 0;
|
||||||
grid[0][row - 1][col] = 0;
|
grid[0][row - 1][col] = 0;
|
||||||
col++;
|
col++;
|
||||||
|
disp_column (row, col);
|
||||||
break;
|
break;
|
||||||
} // right arrow
|
} // right arrow
|
||||||
|
|
||||||
if (event.key.keysym.sym == SDLK_n) {
|
if (event.key.keysym.sym == SDLK_n) {
|
||||||
printf("next brick preview\n");
|
|
||||||
next_p = !next_p;
|
next_p = !next_p;
|
||||||
break;
|
break;
|
||||||
} // next piece (brick/block) preview
|
} // next piece (brick/block) preview
|
||||||
|
|
||||||
if( event.key.keysym.sym == SDLK_r
|
if( event.key.keysym.sym == SDLK_r
|
||||||
&& (event.key.keysym.mod & KMOD_CTRL) != 0 ) {
|
&& (event.key.keysym.mod & KMOD_CTRL) != 0 ) {
|
||||||
printf("restart\n");
|
|
||||||
restart = true;
|
restart = true;
|
||||||
break;
|
break;
|
||||||
} // restart
|
} // restart
|
||||||
|
|
||||||
if (event.key.keysym.sym == SDLK_r) {
|
if(event.key.keysym.sym == SDLK_r
|
||||||
printf("rotate\n");
|
&& (event.key.keysym.mod & KMOD_SHIFT) != 0 ) {
|
||||||
|
rotate_col();
|
||||||
|
disp_column (row, col);
|
||||||
break;
|
break;
|
||||||
} // rotate tiles
|
} // rotate tiles
|
||||||
|
|
||||||
if (event.key.keysym.sym == SDLK_SPACE) {
|
if (event.key.keysym.sym == SDLK_SPACE) {
|
||||||
printf("drop/fall\n");
|
|
||||||
break;
|
break;
|
||||||
} // drop/fall block/piece/brick
|
} // drop/fall block/piece/brick
|
||||||
|
|
||||||
if( event.key.keysym.sym == SDLK_s
|
if( event.key.keysym.sym == SDLK_s
|
||||||
&& (event.key.keysym.mod & KMOD_CTRL) != 0 ) {
|
&& (event.key.keysym.mod & KMOD_CTRL) != 0 ) {
|
||||||
printf("change tile pattern\n");
|
|
||||||
break;
|
break;
|
||||||
} // change tile design/pattern
|
} // change tile design/pattern
|
||||||
|
|
||||||
if (event.key.keysym.sym == SDLK_p) {
|
if (event.key.keysym.sym == SDLK_p) {
|
||||||
if (pause_f == false){
|
if (pause_f == false){
|
||||||
printf("pause\n");
|
|
||||||
pause_f = 1;
|
pause_f = 1;
|
||||||
} else {
|
} else {
|
||||||
printf("unpause\n");
|
|
||||||
pause_f = 0;
|
pause_f = 0;
|
||||||
}
|
}
|
||||||
// check_key();
|
|
||||||
break;
|
break;
|
||||||
} // pause
|
} // pause
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user