1
0
Fork 0
This commit is contained in:
Henrik Hautakoski 2025-10-09 17:52:49 +02:00
parent 02a915b837
commit fdab0a1992

141
CHANGELOG.md Normal file
View file

@ -0,0 +1,141 @@
## [1.0] - 2025-10-09
### 🚀 Features
- *(assets)* Add icon
- *(engine)* Add LoadImageFromMemory()
- Set window icon
- *(gameover)* Only allow the user to switch state after the gameover sound has been played.
- *(gameover)* Make gameover state abit more interesting.
- *(assets)* Adding logo data
- *(menu)* Draw logo
- *(menu)* Put entries rendering into its own function
### 🐛 Bug Fixes
- *(audio)* Implement IsPlaying() correctly
### ⚙️ Miscellaneous Tasks
- Fix build for windows
- *(makefile)* Add .PHONY target again
- Add editorconfig
- Update readme and add license
## [0.13.0] - 2025-09-24
### 🚀 Features
- Add basic state machine implementation
- Refactor gameplay logic from main.go to a state machine handler.
- Add basic menu state
- Add basic game over state
- Register menu and gameover states.
- Start the machine in the menu state
- Detect game over condition and switch state.
- *(render)* Add DrawTextCenter()
- *(fsm)* Make the special state "quit" exit the fsm.
- Improve menu
- *(assets)* Add menu sound effects
- *(menu)* Play sound effects.
- *(assets)* Add gameover sound
- *(gameover)* Play gameover sound
- *(gameover)* Center text
### 🐛 Bug Fixes
- Reset state on Enter()
## [0.12.0] - 2025-09-21
### 🚀 Features
- *(assets)* Add sound files
- Engine audio code
- *(assets)* Add sound library
- Initialize and use audio subsystem.
- Add sound on shape locked and row clear
## [0.11.0] - 2025-09-17
### 🚀 Features
- Add game/shape_queue.go
- Use ShapeQueue to implement shape RNG
## [0.10.0] - 2025-09-17
### 🚀 Features
- Draw next shape
## [0.9.0] - 2025-09-15
### 🚀 Features
- Add score type
- Show score and increment when lines are cleared
## [0.8.0] - 2025-09-15
### 🚀 Features
- *(grid)* Add IsRowFull()
- *(grid)* Add ClearRow()
- *(grid)* Add MoveRowDown()
- *(grid)* Add ClearFullRows()
- Clear full lines after locking shape
## [0.7.0] - 2025-09-15
### 🚀 Features
- Soft drop
## [0.6.0] - 2025-09-15
### 🚀 Features
- *(shape)* Add RotateCW() and RotateCCW()
- Rotate shape when UP is pressed.
## [0.5.0] - 2025-09-15
### 🚀 Features
- *(collision)* Check grid bounds in x axis.
- Add shape movement
### ⚙️ Miscellaneous Tasks
- Update go.mod
## [0.4.0] - 2025-09-14
### 🚀 Features
- *(collision)* Check for collision against blocks in the grid.
### 🐛 Bug Fixes
- Check bound before placing a block in LockShape()
## [0.3.0] - 2025-09-14
### 🚀 Features
- Lock and spawn shapes
### 🚜 Refactor
- Cleanup main loop code by moving related code into update/render functions respectively.
## [0.2.0] - 2025-09-14
### 🚀 Features
- Add engine/core/vec2.go
- Add shape struct
- *(draw)* Add grid.DrawBlock()
- *(draw)* Add DrawShape()
- Draw shape on grid.
- Add engine/core/interval_timer.go
- Implement shape drop
- Add CheckShapeCollision()
- Add collision check on shape drop.
## [0.1.0] - 2025-09-14
### 🚀 Features
- *(assets)* Add constant with the size of blocks in the sprite texture.
- Add game/block.go
- Add game/grid.go
- Make rendering work with the grid struct.