diff options
author | Oxore <oxore@protonmail.com> | 2017-11-30 17:42:15 +0300 |
---|---|---|
committer | Oxore <oxore@protonmail.com> | 2017-11-30 17:42:15 +0300 |
commit | ae01c7fc02f17105f9e04af493f4dd8986fbcb8b (patch) | |
tree | ea40b11235633946b12b66aba56a412c5db800e4 /include | |
parent | 75d123b79dc894f2c2de43f25009b5fa84a00eec (diff) |
Move includes to root dir
Diffstat (limited to 'include')
-rw-r--r-- | include/common.h | 42 | ||||
-rw-r--r-- | include/functions.h | 30 | ||||
-rw-r--r-- | include/tet_conf.h | 83 |
3 files changed, 155 insertions, 0 deletions
diff --git a/include/common.h b/include/common.h new file mode 100644 index 0000000..5a3d63e --- /dev/null +++ b/include/common.h @@ -0,0 +1,42 @@ +#ifndef TCOMMON_H +#define TCOMMON_H + +#include <SFML/Audio.h> +#include <SFML/Graphics.h> +#include <SFML/System.h> +#include <SFML/Window/Keyboard.h> +#include <stdio.h> +#include <stdlib.h> +#include <stdint.h> +#include <string.h> +#include <time.h> +#include "tet_conf.h" + +typedef struct tCell { + uint8_t a; // active/empty state of cell + sfColor fColor; // fill color +} tCell; +tCell fldCAtt[25][10];// fld cells attributes + + +/* + * shape coords + * y + * ^. . . . + * |. . . . + * |. . . . + * |. . . . + * 0------->x + * + */ + +typedef struct shapeSt { + int x; // x coord of shape's left side + int y; // y coord of shape's bottom + int t; // shape type + sfColor fColor; // shape color + uint8_t c[4][4]; // array of shape cells +} shapeSt; +shapeSt actiSh, nxtShape; + +#endif diff --git a/include/functions.h b/include/functions.h new file mode 100644 index 0000000..ef9d42f --- /dev/null +++ b/include/functions.h @@ -0,0 +1,30 @@ +#ifndef TFUNCTIONS_H +#define TFUNCTIONS_H + +/* Prototypes of functions*/ +void tKeyCtrl(); +void initFld(); +void tTick(); +void resetActiveShape(); +void putShape(); +int cellCollisionCheck(int dir); +int wallCollisionCheck(); +int cellRotCollisionCheck(); +int wallRotCollisionCheck(); +void rotateLeft(); +void rotateRight(); +void rotateShape(); +int linesRmScore(); +void scoreDisplay(); +void colorizeFld(); +void colorizeActiSh(); +void drawFld(sfRenderWindow *window); +void menuTick(); +void colorizeRandom(); +void gameover(); +void genNextShape(); +void copyShape(struct shapeSt *localSh); +void drawNextShape(); +void cleanupFld(); + +#endif diff --git a/include/tet_conf.h b/include/tet_conf.h new file mode 100644 index 0000000..4896a56 --- /dev/null +++ b/include/tet_conf.h @@ -0,0 +1,83 @@ +#define windowName_conf "SFML" // Window name +#define uiColor1 sfColor_fromRGB(0, 0, 0) // Field background +#define uiColor2 sfColor_fromRGB(80, 80, 80) // Field inactive cell outline +#define uiColor3 sfColor_fromRGB(0, 0, 0) // Field active cell outline +#define tOrange sfColor_fromRGB(255, 130, 0) // Orange color of L shape +#define tBlue sfColor_fromRGB(0, 0, 255) +#define tGreen sfColor_fromRGB(0, 255, 0) +#define tRed sfColor_fromRGB(255, 0, 0) +#define tYellow sfColor_fromRGB(255, 255, 0) +#define tCyan sfColor_fromRGB(0, 255, 255) +#define tMagneta sfColor_fromRGB(192, 0, 255) +#define moveRepeatLatency1 150000 // microseconds, only for left-right arrows, + // first repeat move when long push +#define moveRepeatLatency2 30000 // microseconds, for Left, Right and Down + // arrows, the rest repeat move when long push + + +/* + * 19.......... + * 18.......... + * 17.......... + * 16.......... + * 15.......... + * 14.......... + * 13.......... + * 12.......... + * 11.......... + * 10.......... + * 9.......... + * 8.......... + * 7.......... + * 6.......... + * 5.......#.. + * 4......##.. + * 3......#... + * 2.#.##..... + * 1.##.#..#.. + * 0..#.#.###. + * 0123456789 + * + * L + * ..#. .#.. .... ##.. + * ###. .#.. ###. .#.. + * .... .##. #... .#.. + * .... .... .... .... + * + * RL + * #... .##. .... .#.. + * ###. .#.. ###. .#.. + * .... .#.. ..#. ##.. + * .... .... .... .... + * + * Z + * ##.. ..#. .... .#.. + * .##. .##. ##.. ##.. + * .... .#.. .##. #... + * .... .... .... .... + * + * S + * .##. .#.. .... #... + * ##.. .##. .##. ##.. + * .... ..#. ##.. .#.. + * .... .... .... .... + * + * Brick + * ##.. ##.. ##.. ##.. + * ##.. ##.. ##.. ##.. + * .... .... .... .... + * .... .... .... .... + * + * I + * .#.. .... .#.. .... + * .#.. #### .#.. #### + * .#.. .... .#.. .... + * .#.. .... .#.. .... + * + * T + * .#.. .#.. .... .#.. + * ###. .##. ###. ##.. + * .... .#.. .#.. .#.. + * .... .... .... .... + */ + |