summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPreston Pan <preston@nullring.xyz>2023-02-06 23:14:07 -0800
committerPreston Pan <preston@nullring.xyz>2023-02-06 23:14:07 -0800
commit97a41ec6047bd2c9c1b4f094d85b08865eb7613a (patch)
treef7c91f8f7af45dd92d01d6e9da0b902ed7000bfd
parent0f726414cc0026691854bda9567ef959c7a2a976 (diff)
add stuff
-rw-r--r--Makefile3
-rw-r--r--tags32
-rw-r--r--tetris.c86
-rw-r--r--tetris.h4
-rw-r--r--vector.c98
-rw-r--r--vector.h18
6 files changed, 144 insertions, 97 deletions
diff --git a/Makefile b/Makefile
index d61e82d..a6a3657 100644
--- a/Makefile
+++ b/Makefile
@@ -2,3 +2,6 @@ clean:
-rm tetris3
indent:
sh indent.sh
+gentags:
+ ctags -a -d *.c
+ ctags -a -d *.h
diff --git a/tags b/tags
new file mode 100644
index 0000000..541bd87
--- /dev/null
+++ b/tags
@@ -0,0 +1,32 @@
+Mtetris ./tetris.c /^int main (int argc, char **argv) {$/
+UNUSED ./tetris.c /^#define UNUSED(x) (void)(x)$/
+display_game ./tetris.c /^void display_game(void) {$/
+init_block ./block.c /^block_t *init_block(int type, int width)$/
+init_vector ./vector.c /^vector_t init_vector(int mx, int my) {$/
+init_vectorp ./vector.c /^vectorp_t init_vectorp(vector_t* vectors, int leng/
+init_vectorpp ./vector.c /^vectorpp_t init_vectorpp(vectorp_t* vectorps, int /
+interrupt_handler ./tetris.c /^void interrupt_handler(int sig) {$/
+parse_args ./tetris.c /^void parse_args(int argc, char **argv) {$/
+remove_vector ./vector.c /^vectorp_t remove_vector(vectorp_t vectorp, int ind/
+remove_vectors ./vector.c /^vectorp_t remove_vectors(vectorp_t vectorp, int* i/
+vector_add ./vector.c /^vector_t vector_add(vector_t v1, vector_t v2) {$/
+vector_equals ./vector.c /^int vector_equals(vector_t v1, vector_t v2) {$/
+vector_sub ./vector.c /^vector_t vector_sub(vector_t v1, vector_t v2) {$/
+Mtetris tetris.c /^int main (int argc, char **argv) {$/
+UNUSED tetris.c /^#define UNUSED(x) (void)(x)$/
+display_game tetris.c /^void display_game(void) {$/
+init_block block.c /^block_t *init_block(int type, int width)$/
+init_vector vector.c /^vector_t init_vector(int mx, int my) {$/
+init_vectorp vector.c /^vectorp_t init_vectorp(vector_t* vectors, int leng/
+init_vectorpp vector.c /^vectorpp_t init_vectorpp(vectorp_t* vectorps, int /
+interrupt_handler tetris.c /^void interrupt_handler(int sig) {$/
+parse_args tetris.c /^void parse_args(int argc, char **argv) {$/
+remove_vector vector.c /^vectorp_t remove_vector(vectorp_t vectorp, int ind/
+remove_vectors vector.c /^vectorp_t remove_vectors(vectorp_t vectorp, int* i/
+vector_add vector.c /^vector_t vector_add(vector_t v1, vector_t v2) {$/
+vector_equals vector.c /^int vector_equals(vector_t v1, vector_t v2) {$/
+vector_sub vector.c /^vector_t vector_sub(vector_t v1, vector_t v2) {$/
+BLOCK_H block.h /^#define BLOCK_H$/
+CONFIG_H config.h /^#define CONFIG_H$/
+TETRIS_H tetris.h /^#define TETRIS_H$/
+VECTOR vector.h /^#define VECTOR$/
diff --git a/tetris.c b/tetris.c
index 8f8b43f..536c07d 100644
--- a/tetris.c
+++ b/tetris.c
@@ -14,62 +14,66 @@
volatile sig_atomic_t g_int_ctrl_c = 0;
int g_score = 0;
-void interrupt_handler(int sig) {
- UNUSED(sig);
- g_int_ctrl_c = 1;
+void interrupt_handler(int sig)
+{
+ UNUSED(sig);
+ g_int_ctrl_c = 1;
}
-void parse_args(int argc, char **argv) {
+void parse_args(int argc, char **argv)
+{
}
-void display_game(void) {
+void display_game(void)
+{
}
-int main (int argc, char **argv) {
- int width;
- int height;
- volatile int *last_input = calloc(1, sizeof(int));
- int *cancellation_token = calloc(1, sizeof(int));
- struct winsize win;
- struct timespec time;
+int main(int argc, char **argv)
+{
+ int width;
+ int height;
+ volatile int *last_input = calloc(1, sizeof(int));
+ int *cancellation_token = calloc(1, sizeof(int));
+ struct winsize win;
+ struct timespec time;
- /* store arguments in global variables */
- parse_args(argc, argv);
+ /* store arguments in global variables */
+ parse_args(argc, argv);
- /* get dimensions of board */
- ioctl(fileno(stdout), TIOCGWINSZ, &win);
- width = (int)(win.ws_col);
- height = (int)(win.ws_row);
+ /* get dimensions of board */
+ ioctl(fileno(stdout), TIOCGWINSZ, &win);
+ width = (int) (win.ws_col);
+ height = (int) (win.ws_row);
- /* handle SIGINT interrupts */
- signal(SIGINT, interrupt_handler);
+ /* handle SIGINT interrupts */
+ signal(SIGINT, interrupt_handler);
- /* Hide cursor */
- print("\033[?251");
+ /* Hide cursor */
+ print("\033[?251");
- /* prepare thread for getting input and accepting cancellation */
- thread_arg_t *thread_arg = malloc(sizeof(thread_arg_t));
- thread_arg->ret = (void *)last_input;
- thread_arg->cancellation_token = cancellation_token;
+ /* prepare thread for getting input and accepting cancellation */
+ thread_arg_t *thread_arg = malloc(sizeof(thread_arg_t));
+ thread_arg->ret = (void *) last_input;
+ thread_arg->cancellation_token = cancellation_token;
- /* Game Loop */
- while (1) {
- if (g_int_ctrl_c) {
- goto EXIT;
- }
- display_game();
+ /* Game Loop */
+ while (1) {
+ if (g_int_ctrl_c) {
+ goto EXIT;
}
+ display_game();
+ }
EXIT:
- /* cancel thread */
- *cancellation_token = 1;
- printf("%sGame over! Your score was: %d%s\n", RED, g_score, COLOR_RESET);
- /* unhide cursor */
- printf("\033[?25h");
+ /* cancel thread */
+ *cancellation_token = 1;
+ printf("%sGame over! Your score was: %d%s\n", RED, g_score, COLOR_RESET);
+ /* unhide cursor */
+ printf("\033[?25h");
- /* free some values */
- free(cancellation_token);
- free((int *)last_input);
- return 0;
+ /* free some values */
+ free(cancellation_token);
+ free((int *) last_input);
+ return 0;
}
diff --git a/tetris.h b/tetris.h
index 9ea9fdc..d05a9de 100644
--- a/tetris.h
+++ b/tetris.h
@@ -1,8 +1,8 @@
#ifndef TETRIS_H
#define TETRIS_H
typedef struct THREADARG_STRUCT {
- int *cancellation_token;
- void *ret;
+ int *cancellation_token;
+ void *ret;
} thread_arg_t;
void interrupt_handler(int sig);
void die(void);
diff --git a/vector.c b/vector.c
index 34b30de..bf9ddcc 100644
--- a/vector.c
+++ b/vector.c
@@ -1,57 +1,65 @@
#include <stdlib.h>
#include "vector.h"
-vector_t init_vector(int mx, int my) {
- vector_t vector;
- vector.mx = mx;
- vector.my = my;
- return vector;
+vector_t init_vector(int mx, int my)
+{
+ vector_t vector;
+ vector.mx = mx;
+ vector.my = my;
+ return vector;
}
-vectorp_t init_vectorp(vector_t* vectors, int length) {
- vectorp_t vectorP;
- vectorP.vectors = vectors;
- vectorP.length = length;
- return vectorP;
+vectorp_t init_vectorp(vector_t * vectors, int length)
+{
+ vectorp_t vectorP;
+ vectorP.vectors = vectors;
+ vectorP.length = length;
+ return vectorP;
}
-int vector_equals(vector_t v1, vector_t v2) {
- return v1.mx == v2.mx && v1.my == v2.my;
+int vector_equals(vector_t v1, vector_t v2)
+{
+ return v1.mx == v2.mx && v1.my == v2.my;
}
-vector_t vector_add(vector_t v1, vector_t v2) {
- return init_vector(v1.mx + v2.mx, v1.my + v2.my);
+vector_t vector_add(vector_t v1, vector_t v2)
+{
+ return init_vector(v1.mx + v2.mx, v1.my + v2.my);
}
-vector_t vector_sub(vector_t v1, vector_t v2) {
- return init_vector(v1.mx - v2.mx, v1.my - v2.my);
+vector_t vector_sub(vector_t v1, vector_t v2)
+{
+ return init_vector(v1.mx - v2.mx, v1.my - v2.my);
}
-vectorp_t remove_vector(vectorp_t vectorp, int index) {
- vector_t* vectors = malloc((vectorp.length - 1) * sizeof(vector_t));
- for(int i = 0; i < vectorp.length - 1; i++) {
- int correctedIndex = i > index ? i - 1 : i;
- if(i != index) {
- vectors[correctedIndex] = vectorp.vectors[i];
- }
+vectorp_t remove_vector(vectorp_t vectorp, int index)
+{
+ vector_t *vectors = malloc((vectorp.length - 1) * sizeof(vector_t));
+ for (int i = 0; i < vectorp.length - 1; i++) {
+ int correctedIndex = i > index ? i - 1 : i;
+ if (i != index) {
+ vectors[correctedIndex] = vectorp.vectors[i];
}
- return init_vectorp(vectors, vectorp.length - 1);
+ }
+ return init_vectorp(vectors, vectorp.length - 1);
}
-vectorp_t remove_vectors(vectorp_t vectorp, int* indexes, int indexCount) {
- vector_t* vectors = malloc((vectorp.length - indexCount) * sizeof(vector_t));
- int correctedIndex = 0;
- for(int i = 0; i < vectorp.length - indexCount; i++) {
- int toRemove = 0;
- for(int j = 0; j < indexCount; j++) {
- if(i == indexes[j]) {
- toRemove = 1;
- break;
- }
- }
- if(!toRemove) {
- vectors[correctedIndex] = vectorp.vectors[i];
- correctedIndex++;
- }
+vectorp_t remove_vectors(vectorp_t vectorp, int *indexes, int indexCount)
+{
+ vector_t *vectors = malloc((vectorp.length - indexCount) * sizeof(vector_t));
+ int correctedIndex = 0;
+ for (int i = 0; i < vectorp.length - indexCount; i++) {
+ int toRemove = 0;
+ for (int j = 0; j < indexCount; j++) {
+ if (i == indexes[j]) {
+ toRemove = 1;
+ break;
+ }
}
- return init_vectorp(vectors, vectorp.length - indexCount);
+ if (!toRemove) {
+ vectors[correctedIndex] = vectorp.vectors[i];
+ correctedIndex++;
+ }
+ }
+ return init_vectorp(vectors, vectorp.length - indexCount);
}
-vectorpp_t init_vectorpp(vectorp_t* vectorps, int length) {
- vectorpp_t vectorPP;
- vectorPP.vectorps = vectorps;
- vectorPP.length = length;
- return vectorPP;
+vectorpp_t init_vectorpp(vectorp_t * vectorps, int length)
+{
+ vectorpp_t vectorPP;
+ vectorPP.vectorps = vectorps;
+ vectorPP.length = length;
+ return vectorPP;
}
diff --git a/vector.h b/vector.h
index 1e605a3..274cfb8 100644
--- a/vector.h
+++ b/vector.h
@@ -1,8 +1,8 @@
#ifndef VECTOR
#define VECTOR
typedef struct Vector {
- int mx;
- int my;
+ int mx;
+ int my;
} vector_t;
vector_t init_vector(int mx, int my);
@@ -11,20 +11,20 @@ vector_t vector_add(vector_t v1, vector_t v2);
vector_t vector_sub(vector_t v1, vector_t v2);
typedef struct VectorP {
- vector_t* vectors;
- int length;
+ vector_t *vectors;
+ int length;
} vectorp_t;
-vectorp_t init_vectorp(vector_t* vectors, int length);
+vectorp_t init_vectorp(vector_t * vectors, int length);
/* removes a vector from vectorp */
vectorp_t remove_vector(vectorp_t vectorp, int index);
-vectorp_t remove_vectors(vectorp_t vectorp, int* indexes, int indexCount);
+vectorp_t remove_vectors(vectorp_t vectorp, int *indexes, int indexCount);
typedef struct VectorPP {
- vectorp_t* vectorps;
- int length;
+ vectorp_t *vectorps;
+ int length;
} vectorpp_t;
-vectorpp_t init_vectorpp(vectorp_t* vectorps, int length);
+vectorpp_t init_vectorpp(vectorp_t * vectorps, int length);
#endif