summaryrefslogtreecommitdiff
path: root/include/common.h
AgeCommit message (Collapse)Author
2018-12-06Add simple documentation in comments, refactor.Oxore
Change all `unsigned int` and `unsigned long` types to `size_t`. Fix names alignment in headers. Add documentation and simple description: Painter - painter.h Main - tetris.c Unicode - unicode.h IDList - idlist.h Engine - engine.c Minor changes: tetris.c - fix indentation and code blocks separation with newlines, remove unused includes. idlist.h - fix structure field name alignment. field.h, engine.c - define aliases for ghost and active shapes indexes in the field. engine.c - rename menuTick to snake case, fix curly braces style of functions. Makefile - switch SFML deprecated warnings off.
2018-07-12Introduce pause mechanics, refactor a littleOxore
Introduce Pause mechanics and mention it in README.md. Makefile: replace unnecessary "-MMD -MP" with just "-MD" flag, so it allows to compile with tcc too. Refactor: Rename game.isStarted field to game.started field. Move arrKeys container to engine.c and remove it from main.c. Refactor char iterator in utf8to32_strcpy function.
2018-07-09Finish painter, refactor game logic & keys handlingOxore
Add dependencies in Makefile: now it tracks headers too! Introduce texts in painter. Delegate all the window painting to the painter. Refactor texts from yaml parsing. Remove overcomplicated keymaps and lists of keymaps of... Whatever! Just let em go! Simple idlist with foreach is more than enough. Make displayable values be separate text objects which consists only of a number value that rendered every tick and then displayed. Refactor game logic: make state machine look much obvious with transition functions. Refactor long if-else and switch-case statement chains: replace them with arrays of values (it actually takes more lines of code :P) Refactor keys handling: shorten and separate shape moving code to functions.
2018-07-03Refactor field, refactor next shape drawingOxore
Refactor field functions names. Transfer next shape drawing to painter. Introduce idlist struct with foreach function. Refactor config. Introduce color map array instead of "switch case" statement bloating while coloring rectangles. Decouple field and shape structs from SFML sfVector2 structs by introducing own vector2i and vector2ui structs. Also remove sfRectangleShape members form field an shape structs.
2018-07-02Introduce draw manager, refactor mainOxore
Move timers to struct game. Partially move field painting to draw manager.
2018-06-25Major refactoringOxore
Fix memleak in KeyMap, fix memleak caused by loading a yaml file in main.c. Change Copyright information. Rename functions.c and .h to engine.c and .h. Take field and shape related functions to separate file (still not all of them) and refactor them a lot. Refactor collision detection. Add more warnings. Add sanitizer option commented out.
2017-12-09Implement NES Tetris scoring systemOxore
2017-12-09Level up condition removed lines countOxore
2017-12-09Extend playfield to 22, change game over condition, shrink fld from 25 to 22Oxore
2017-12-02Rearrange includes; replace uint8_t by charOxore
2017-12-02Yaml loader for text resources added, need to be involvedOxore
2017-12-01More structure wrapping, more refactoringOxore
2017-12-01Remove declaration under structureOxore
2017-12-01Wrap global variables into structuresOxore
2017-11-30Move includes to root dirOxore