Skip to content

"LDJAM 42" Release v0.4.13-alpha

Compare
Choose a tag to compare
@steffen-wilke steffen-wilke released this 06 Aug 20:28

Fixes

  • #133 Fixed the DropdownListField rendering multiple times
  • Fixed a bug that was causing duplicate map objects
  • Fixed an issue with width/height <= 0 when scaling images.

Features / Improvements

  • Added a method that automatically adds linebreaks when rendering text
  • Streamline the IEnvironment API by adding lots of overload methods
    • Implemented possibility to get a list of entities from the environment by providing an array of mapIDs.
  • #124 Implemented support for rendering the backgroundcolor of maps
  • Added default values for MapObjectLoader.loadCollisionProperties
  • Added CustomPropertyProvider.hasCustomProperty() method
  • Named the Threads for better debugging
  • Added Exit codes
  • Improved crash report: It will produce a crash.txt with the exact exception that caused the issue
  • #151 Added Support for tile custom properties
  • #87 Introduced an option for antialiased/interpolated rendering
  • Improved the API for adding a custom configuration group.
  • #66 Implemented MapObjectSerializer -> Possibility to export IEntity as IMapObject
  • #105 Implemented possibility to use blueprints on the environment
  • Added basic events for loading/removing entities.
    • This can either be overwritten by custom implementations or one can register an EntityListener.
  • Fixed a ton of typos
  • Added a ton of unit tests
  • Lots and lots of internal improvements

Changes

  • By default, Controller Input is now disabled because it requires native libraries.
  • Controller support for x86 was dropped due to the jinput update
  • #134 The TmxMapLoader is now a static class
  • Changed the implementation for fullscreen from setExtendedState to GraphicsDevice.setFullscreenWindow
  • Made Game.terminate() private -> The application should be closed from code using System.exit(0)
  • #144 Remove the loading of system fonts by the FontLoader
    • The FontLoader is intended to load custom fonts from the game resources. If one wants to use a system font, he can just initialize the Font directly and doesn't have to register the font on the environment.
  • Reorganized namespaces:
    • Introduced new base namespace for all emitter related stuff de.gurkenlabs.litiengine.graphics.emitters
    • Moved some entity implementations from different namespaces to de.gurkenlabs.litiengine.entities.
  • The FontLoader class has been removed. Fonts are now loaded with the static Resources class
  • The game now crashes if an unexpected exception occurs
  • Detect an unsupported Tiled version and fail-fast (currently supported: 1.1.5)
  • Replace the IKeyObserver interface by the AWT KeyListener.
  • Remove a ton of unnecessary interfaces
  • #155 Clean up the RenderEngine by removing static methods
    • Implemented static ImageRenderer
    • Implemented static TextRenderer
    • Implemented static ShapeRenderer

utiLITI

  • #86 Made the editor remember the visibility of the layers
  • #95 Provided additional methods for adding entities
  • #81 Provided a default configuration for the utiliti editor.
  • #100 Implemented a deselect functionality when in multi-select-mode
  • #108 Made light focus offset configurable in the editor
  • #111 Prevent selection of all mapObjectLayers when updating the layer list
  • Added Layer control panel for Adding / Deleting / Recoloring / Duplicating / Lifting / Lowering a MapObjectLayer and one for hiding all non-selected layers.
  • Fixed ID assignment when copying objects in the editor.
  • Fixed issue with lights not to being updated when snapping

Misc

  • Added "Hello World" example projects
  • Updated Gradle to 4.9
  • Updated jinput 2.0.7 to 2.0.9
  • Updated junit to 5.2.+
  • Updated mockito to 2.21.+
  • Updated sonarqube plugin to 2.6.2
  • Updated launch4j to 2.4.4

Shout out to @TheRamenChef for his contribution to this release.