2019-06-13 17:47:48 +02:00
|
|
|
# CHANGELOG
|
|
|
|
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
|
|
|
|
## Unreleased
|
|
|
|
|
2022-08-12 10:59:03 +02:00
|
|
|
- Project renamed to Epervier Framework and rebased entirely on Sonic Radiance codebase
|
2020-04-05 18:43:20 +02:00
|
|
|
|
|
|
|
- New loading system
|
|
|
|
|
2019-07-24 10:43:22 +02:00
|
|
|
### Added
|
|
|
|
|
|
|
|
- Add a gamesystem module
|
|
|
|
|
2020-05-10 14:06:20 +02:00
|
|
|
- **core/debug:** new logging framework
|
2019-07-24 11:21:12 +02:00
|
|
|
|
2019-07-26 11:53:10 +02:00
|
|
|
- **camera+maps:** add a way to add padding to map limits
|
|
|
|
|
2019-07-22 22:38:19 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
- **world:** extract map module from the world module
|
|
|
|
|
2019-07-24 15:22:04 +02:00
|
|
|
- **core/input:** extract virtualpads from the input controller
|
|
|
|
|
2022-08-12 10:59:03 +02:00
|
|
|
- **core:** The core is now separated from the rest of the framework
|
2020-04-05 18:43:20 +02:00
|
|
|
|
2020-08-09 14:51:52 +02:00
|
|
|
- **core+assets:** Music are now managed directly by the core
|
|
|
|
|
2019-07-20 18:08:58 +02:00
|
|
|
## [0.6.0] - 2019-07-20
|
|
|
|
|
|
|
|
- Meta: Add proper crediting
|
2019-07-20 10:20:26 +02:00
|
|
|
|
2019-06-22 20:17:36 +02:00
|
|
|
### Added
|
|
|
|
|
|
|
|
- **actor2D:** Make hitbox modifiable.
|
|
|
|
|
2019-06-22 22:11:22 +02:00
|
|
|
- **actor2D:** Add multiple hitbox support.
|
|
|
|
|
2019-06-23 14:23:51 +02:00
|
|
|
- **assets:** Add a way to get current relative frame
|
|
|
|
|
2019-06-23 14:25:02 +02:00
|
|
|
- **assets:** Add more wrapper around animator functions in Sprite
|
2019-06-23 14:23:51 +02:00
|
|
|
|
2019-06-23 14:27:07 +02:00
|
|
|
- **world:** Add more wrapper around sprite functions in BaseActor
|
|
|
|
|
2019-06-23 15:25:56 +02:00
|
|
|
- **assets:** Add a new getCurrentAnimation function
|
|
|
|
|
2019-06-23 15:45:34 +02:00
|
|
|
- **world:** Add a way to automatically load hitbox from a file
|
|
|
|
|
2019-06-29 11:49:48 +02:00
|
|
|
- **utils:** Add basic table functions
|
|
|
|
|
2019-06-29 18:42:38 +02:00
|
|
|
- **camera:** Add two new camera types: "middle" and "zoom".
|
|
|
|
|
2019-07-06 18:00:00 +02:00
|
|
|
- **world:** Add a fake 3D world, à la Zelda or BeatThemAll, complete with shadow support
|
2019-06-30 17:07:58 +02:00
|
|
|
|
2019-07-12 23:42:25 +02:00
|
|
|
- **examples:** Test all player number and camera types
|
|
|
|
|
2019-07-14 15:51:58 +02:00
|
|
|
- **core.screen:** Add a way to get coordinate and scale
|
|
|
|
|
2019-06-22 17:19:54 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
- **world2D:** Use a list for bodies (hitboxes, etc) and one other for actors
|
|
|
|
|
2019-06-22 19:27:31 +02:00
|
|
|
- **world2D:** Make the hitbox an object, owned by the actor
|
|
|
|
|
2019-06-27 21:03:34 +02:00
|
|
|
- **actor:** Rename all function related to YGravity to just \*Gravity
|
|
|
|
|
2019-06-28 10:06:38 +02:00
|
|
|
- **world:** Separate "queryRect()" into two functions
|
|
|
|
|
|
|
|
- **world:** Make object creation more customizable by worlds
|
2019-06-27 21:03:34 +02:00
|
|
|
|
2019-06-29 11:32:42 +02:00
|
|
|
- **camera:** Make mode configuration configurable
|
|
|
|
|
2019-07-12 23:48:57 +02:00
|
|
|
- **examples:** Rename "movable" to "topdown"
|
|
|
|
|
2019-07-15 10:13:51 +02:00
|
|
|
- **camera:** Brand new camera system based on canvases instead of just transforms
|
|
|
|
|
2019-07-15 10:27:55 +02:00
|
|
|
- **core:** Activate vsync by default.
|
|
|
|
|
2019-07-20 09:57:00 +02:00
|
|
|
- **examples:** Put together all assets.
|
|
|
|
|
2019-06-21 20:06:58 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
- **world:** Remove a forgotten camera debug function
|
|
|
|
|
2019-07-12 23:51:51 +02:00
|
|
|
- **examples:** Add missing translations
|
|
|
|
|
2019-07-14 18:41:13 +02:00
|
|
|
- **camera:** Fix onscreen coordinates by using new core.screen func
|
|
|
|
|
2019-07-15 10:13:51 +02:00
|
|
|
- **camera:** Fix camera's drawing in other resolution mode
|
|
|
|
|
2019-07-20 10:25:25 +02:00
|
|
|
- **world:** Don't draw unused sti objectlayer
|
|
|
|
|
2019-06-27 21:03:34 +02:00
|
|
|
### Removed
|
|
|
|
|
|
|
|
- **actor:** Remove all function related to XGravity
|
|
|
|
|
2019-07-12 23:30:32 +02:00
|
|
|
- **examples:** Remove basic examples
|
|
|
|
|
2019-07-14 18:57:50 +02:00
|
|
|
- **libs:** Remove hump.camera
|
|
|
|
|
2019-07-20 18:07:31 +02:00
|
|
|
## [0.5.1] - 2019-06-21
|
2019-06-21 18:53:53 +02:00
|
|
|
|
|
|
|
### Fixed
|
2019-06-21 17:11:32 +02:00
|
|
|
|
|
|
|
- **examples:** Add missing HUD example for one-player plateformer
|
|
|
|
|
2019-06-21 18:27:02 +02:00
|
|
|
- **world:** Separate getting dimensions of the internal and advertised view.
|
|
|
|
|
2019-06-21 18:51:14 +02:00
|
|
|
- **world:** use right camera internal coordinate
|
|
|
|
|
2019-07-20 18:07:31 +02:00
|
|
|
## [0.5.0] - 2019-06-16
|
2019-06-16 16:41:06 +02:00
|
|
|
|
2019-06-13 17:47:48 +02:00
|
|
|
- Meta: Add a Code of Conduct
|
|
|
|
|
|
|
|
- Meta: Add a Changelog
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
- **world:** Add an activity system
|
|
|
|
|
|
|
|
- **assets:** Add an activity system
|
|
|
|
|
|
|
|
- **example/plateformer:** add a basic pause button
|
|
|
|
|
2019-06-13 18:40:10 +02:00
|
|
|
- **scene**: Add functions to add stuf before and after `update` and `draw()`
|
|
|
|
|
|
|
|
- **actor**: Add functions to add stuf before and after `update` and `draw()`
|
|
|
|
|
2019-06-13 22:23:23 +02:00
|
|
|
- **world/camera:** Add support for Head-Up-Display
|
|
|
|
|
2019-06-15 11:50:53 +02:00
|
|
|
- **world:** Support batching actor loading
|
|
|
|
|
2019-06-16 10:08:59 +02:00
|
|
|
- **world:** Add `Actor.creationID` to keep the order in which actors have been created
|
|
|
|
|
2019-06-16 10:24:30 +02:00
|
|
|
- **world:** Add `Actor.depth` to keep the order in which actors are drawn
|
|
|
|
|
2019-06-16 16:37:47 +02:00
|
|
|
- **menusystem;** Add a way to deactivate assets and the world when activating the menu
|
|
|
|
|
|
|
|
- **world:** Add a reset function
|
|
|
|
|
|
|
|
- **examples/plateform:** Add a pause menu
|
2019-06-16 16:21:26 +02:00
|
|
|
|
2019-06-13 17:47:48 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
- **world:** automatize world integration in a scene
|
|
|
|
|
2019-06-16 10:01:21 +02:00
|
|
|
- **world:** only visible actors are drawn
|
|
|
|
|
2019-06-13 17:47:48 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
- **core.input:** use the right argument in `core.input:flushKeys()`'s loop
|
|
|
|
|
|
|
|
- **scene:** use `core.input:flushKeys()` in `Scene:flushKeys()` instead of `core.input:flushSourceKeys()`
|
|
|
|
|
|
|
|
## [0.4.0] - 2019-05-06
|
|
|
|
|
|
|
|
- Add Bump2D-handled world system
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
- **world:** Add a `World2D` world object using Bump2D as a backend
|
|
|
|
|
|
|
|
- **world/actor:** Support bump2D filter
|
|
|
|
|
|
|
|
- **loveutils:** `love.math.toZero` substract a variable to another to zero
|
|
|
|
|
|
|
|
- **assets:** Add batch loading of assets
|
|
|
|
|
|
|
|
- **examples:** Add batch asset files
|
|
|
|
|
|
|
|
- **examples/plateformer:** Add a plateformer example
|
|
|
|
|
|
|
|
- **world:** Add a splitscreen-compatible camera system powered by hump.camera
|
|
|
|
|
|
|
|
- **examples:** Add cameras
|
|
|
|
|
|
|
|
- **world:** Support object loading from Tiled
|
|
|
|
|
|
|
|
- **world/actor:** Add sprite support in Actor2D
|
|
|
|
|
|
|
|
- **assets:** Add support for sprites origins in tileset and animations
|
|
|
|
|
|
|
|
- **world:** Add `World:initActors()` to init Actors
|
|
|
|
|
|
|
|
- **world:** automatize multiple character handling
|
|
|
|
|
|
|
|
- **loveutils:** `utils.math.between(num, min, max)` make sure that a number is between two value
|
|
|
|
|
|
|
|
- **world:** Add a gravity system
|
|
|
|
|
|
|
|
- **world/actors:** `Actor:destroy()` destroy the actor
|
|
|
|
|
|
|
|
- **world/actors:** Add a basic timer system to actors
|
|
|
|
|
|
|
|
- **world/actors:** Create a parent `BaseActor` that'll serve as a parent for Actor2D and other future actors
|
|
|
|
|
|
|
|
- **assets:** add getDimensions() to tileset, sprite and animators
|
|
|
|
|
|
|
|
- **world:** add a generic gfx actor
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
- **examples/moveplayer:** move to World2D
|
|
|
|
|
|
|
|
- **world:** separate map loading from level initialization
|
|
|
|
|
|
|
|
- **examples/moveplayer:** use a different map
|
|
|
|
|
|
|
|
- **examples/moveplayer:** Use this example to show multiplayer capabilities
|
|
|
|
|
|
|
|
## [0.3.0] - 2019-04-20
|
|
|
|
|
|
|
|
- General cleanups and reorganisation of the base code to be more legible
|
|
|
|
|
|
|
|
- Add translation
|
|
|
|
|
|
|
|
- Some internal improvement to how gamecore works
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
- **examples:** Basic Inventory menu
|
|
|
|
|
|
|
|
- **menusystem:** Horizontal listbox menu
|
|
|
|
|
|
|
|
- **menusystem:** Lock/visiblity management functions
|
|
|
|
|
|
|
|
- **examples/mainmenu:** Add a back and exit widget
|
|
|
|
|
|
|
|
- **world:** Embed librairies
|
|
|
|
|
|
|
|
- **world:** Add actors managing functions
|
|
|
|
|
|
|
|
- **world:** Map loading system using STI
|
|
|
|
|
|
|
|
- **examples:** Add a movable multi-player example
|
|
|
|
|
|
|
|
- **world:** Add a basic player system directly inside world system
|
|
|
|
|
|
|
|
- **menusystem:** `Widget.creationID` contain the creation order of every menu widget
|
|
|
|
|
|
|
|
- **menusystem:** `Widget.order` handle the order of the widget in the menu
|
|
|
|
|
|
|
|
- **world:** add `xsp` and `ysp` variable to handle speed to the actor object
|
|
|
|
|
|
|
|
- **examples:** add an option menu
|
|
|
|
|
|
|
|
- **menusystem:** `Widget:invalidateCanvas()` to make a canvas need a redraw
|
|
|
|
|
|
|
|
- **core.lang:** Get the translation data instead of directly putting them in core.lang.datas
|
|
|
|
|
|
|
|
- **core.options:** Add controller variable
|
|
|
|
|
|
|
|
- **core.options:** `core.options:setInputKey(sourceid, padkey, key)`
|
|
|
|
|
|
|
|
- **scenes:** `Scene:keypressed( key, scancode, isrepeat )` and `Scene:keyreleased( key )` callbacks added
|
|
|
|
|
|
|
|
- **menusystem:** Add a global activity flag
|
|
|
|
|
|
|
|
- **examples/options:** Key customization handling
|
|
|
|
|
|
|
|
- **examples:** Add music and SFX
|
|
|
|
|
|
|
|
- **menusystem:** Add `Menu:resetSound()` to entirely reset the sound values of a menu
|
|
|
|
|
|
|
|
- **menusystem:** Add `Menu:setSoundFromSceneAssets(name)` to simplify sound managin
|
|
|
|
|
|
|
|
- **menusystem:** Add sound batch management function
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
- **menusystem:** Separate activity and visiblity lock
|
|
|
|
|
|
|
|
- **menusystem:** Add as an argument to widgets actions if the widget have been interacted by a pointer or a key
|
|
|
|
|
|
|
|
- **examples:** Reorganize folder
|
|
|
|
|
|
|
|
- **world:** Make world system need an actorlist
|
|
|
|
|
|
|
|
- **core.inputs:** /!\BREAKING: Use a multi-source system for the input system, and adapt different module to use it
|
|
|
|
|
|
|
|
- **core.lang:** /!\BREAKING: New language metadata format and complete rework of the translation system
|
|
|
|
|
|
|
|
- **core:** directly handle love2D's callbacks inside gamecore
|
|
|
|
|
|
|
|
- **menusystem:** rename `Menu:playSelectSound()` to `Menu:self:playSelectSound()`
|
|
|
|
|
|
|
|
- **menusystem:** Internally link the whole menusystem to a scene
|
|
|
|
|
|
|
|
### Removed
|
|
|
|
|
|
|
|
- `MenuSystem.TextMenu` wasn't used since a long time, and was a menu that modified the widgets.
|
|
|
|
|
|
|
|
- `MenuSystem:keyreleased(key, code)` was just dead code
|
|
|
|
|
|
|
|
- `core.lang:getStringList(library, file)` is replaced in the new translation system
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
- core: load core.lang
|
|
|
|
|
|
|
|
## [0.2.0] - 2019-06-04
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
- **examples:** Use some text menus in the example menu
|
|
|
|
|
|
|
|
- **examples:** Test entity system
|
|
|
|
|
|
|
|
- **examples:** Add a main menu to the examples
|
|
|
|
|
|
|
|
- **menusystem:** Add functions to menusystem to set visibility to menus
|
|
|
|
|
|
|
|
- **menusystem:** Add functions to menusystem to switch current menu
|
|
|
|
|
|
|
|
- **menusystem:** Add depth system to menus
|
|
|
|
|
|
|
|
- **world:** Add world and actor system
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
- **scene:** rework input locking system to add a timeout
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
- **loveutils:** Fix a crash in `utils.math.pointDistance`
|
|
|
|
|
|
|
|
## [0.1.0] - 2019-18-03
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
- **examples:** First two basic examples to show the capability of gamecore
|
|
|
|
|
|
|
|
- **scenes:** Start using a wrapper around `core.scenemanager.currentScene` to set the new Scene
|
|
|
|
|
|
|
|
- **scenes:** Add a storage system inside `core.scenemanager` to be able to keep previous scene
|
|
|
|
|
|
|
|
- **menusystem:** Basic menu examples to test menu capabilities
|
|
|
|
|
|
|
|
- **assets:** Add a mask system to `Texture`, `Tileset` and `Animation`
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
- **scene:** `Scene` now registerd themselves
|
|
|
|
|
|
|
|
- **assets:** `Texture` assets are now a custom object instead of directly using love's texture.
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
## [0.0.1] - 2019-16-03
|
|
|
|
|
|
|
|
- Initial release based on a standalone version of Imperium Porcorum's Core.
|