Skip to content

"Ready for the LEPUS" Release v0.4.10-alpha

Compare
Choose a tag to compare
@gurkenlabs gurkenlabs released this 27 Feb 23:34

Fixes

  • Fixed a potential null reference exception in the Particle implementation.
  • Fixed an issue with the EntityAnimationController overwriting an animation from the CreatureAnimationController
    • Animation rules now dynamically evaluate the animation name instead of providing a static string.

Features / Improvements

  • Improved performance of the AmbientLight implementation.
  • The MapComponent is now only reloading the mapobject while dragging, in case it has actually been moved.
  • #80 Implement the possibility to add and remove tags to map objects.
    • Rewrote the MapObjectLoaders to properly load the tags to the Entity
    • Extended IEnvironment with the possibility to get strongly typed entities by a tag.
  • Made CustomPropertyProvider implementation thread safe
  • Improved the performance of the GeometricUtilities.shapeIntersects test.
  • Added method to get x and y coordinates directly from the IEntity.
  • Extended IEntity with methods to directly set x and y coordinates.
  • Removed unnecessary crop out of lights from static shadows (it actually never worked that way).
  • Improved the performance of the UpdateLoop by using a concurrent HashSet instead of a CopyOnWriteArrayList.
  • Improved the Environment performance by using a set from a ConcurrentHashMap instead of a CopyOnWriteArrayList.
  • Extended the AnimationController to allow setting the default animation.
  • Add missing setters to ICollisionEntity and ICombatEntity.
  • Improve MapObjectLoaders to reuse a base implementation for setting collision properties.
  • Extended the IImageEffect interface with a priority that determines in which order effects get applied.
  • Refined the entity rendering process to take the actual sprite size into account -> image effects might resize the sprite.
  • Implemented the possibility to remove image effects from an AnimationController.
  • Improved the borderAlpha image effect implementation by actually only returning the border.
  • Provided a helper method in the ArrayUtilities that checks whether an array of Strings contains a specific argument.
  • Added a version to the GameFile XML

Changes

  • Entities are no longer adding themselves to the environment.
  • Removed deprecated IEnvironment.getTriggers method.
  • Relocated the StaticShadow class to the graphics namespace
  • Removed WeatherType from the engine.
  • Extracted the shadow area creation from the StaticShadowLaye to the StaticShadow class.
  • Renamed IMovableEntity to IMobileEntity
  • Replaced the IMobileCombatEntity interface by the Creature class
  • Added a creature collection to the IEnvironment and added a new MapObjectType.
  • Updated the CreatureAnimationController to not use the entity name as sprite prefix.
    • Major refactoring and clean up on the way, the CreatureAnimationController works: It is now possible to define a spritePrefix for a creature which will be used to determine the spritesheets for the animation controller.
    • Implemented the possibility to provide the sprite prefix for creatures as Annotation.
  • Removed the DecorMobAnimationController because it basically just did the same thing as the CreatureAnimationController.
  • Moved configuration and "core" stuff to the engine namespace.
  • Moved state machine implementation to the engine namespace.
  • Moved de.gurkenlabs.util namespace to de.gurkenlabs.litiengine.util
  • Changed the Game.DEBUG flag: For distribution, it is recommended to call Game.allowDebug(false) now, which will disable debugging functionality.

utiLITI

  • Fixed an issue that causes the UndoManager to not work properly with shortcuts.
  • Fixed a few issues that occurred when subsequently loading different game files.
  • Fixed issue with trigger targets/activators being displayed multiple times.
  • Fixed an issue that caused only the first selected sprite sheet to be imported
  • The MapComponent is now only reloading the mapobject while dragging, in case it has actually been moved.
  • Improved editor performance for dragging mapobjects and especially lights.
  • Unsaved maps are now visualized in the list.
  • #80 Implemented auto-completion for the tag input.
    • Added rendering for tags to the editor MapComponent.
    • Improved the new tag UI by hover and focus effects.
  • Improved emitter UI and added the possibility to add emitters from emitter assets.
  • Improved the performance of the PropPanel
  • #82 Wrapped moving of objects with the keyboard by BeginUpdate/EndUpdate
  • Improved the process of updating the maps list.
  • Majorly improved the loading performance for game files
  • Improved the performance of JCheckBoxList by reusing the GUI components.
  • Made the MapComponent reuse environment instances.
  • Added a cache for layer color indicator.
  • #85 Swapping game files now provides a save prompt
  • Added support for adding creatures in the editor
  • Made use of the LabelListCellRenderer for the DecorMobPanel.
  • Once again: improved the icons of the editor.
  • Added an icons class to unify access to icons.

Misc