epervier-old/CHANGELOG.md
Kazhnuz 8c1e9d8e05 feat(world): initial support for external hitbox
For the moment it doesn't add any real feature, but it allow the 
mainHitbox to be an external object to the actor, giving to it more 
power.
2019-06-22 19:27:31 +02:00

7.1 KiB

CHANGELOG

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

Changed

  • world2D: Use a list for bodies (hitboxes, etc) and one other for actors

  • world2D: Make the hitbox an object, owned by the actor

Fixed

  • world: Remove a forgotten camera debug function

0.5.1 - 2019-06-21

Fixed

  • examples: Add missing HUD example for one-player plateformer

  • world: Separate getting dimensions of the internal and advertised view.

  • world: use right camera internal coordinate

0.5.0 - 2019-06-16

  • 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

  • scene: Add functions to add stuf before and after update and draw()

  • actor: Add functions to add stuf before and after update and draw()

  • world/camera: Add support for Head-Up-Display

  • world: Support batching actor loading

  • world: Add Actor.creationID to keep the order in which actors have been created

  • world: Add Actor.depth to keep the order in which actors are drawn

  • 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

Changed

  • world: automatize world integration in a scene

  • world: only visible actors are drawn

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.