The latest changes in the engine involve a significant restructuring to enhance its overall architecture and provide a more flexible and robust foundation. In this update, the previous implementation utilizing Area2D has been replaced with Node2D, which offers increased versatility and improved functionality. This modification allows for smoother integration with other engine systems and simplifies the overall development process.
To align with modern design principles, the entire functionality of the engine has been reimagined. Rather than relying on a monolithic approach, the new implementation leverages components that extend the Node2D class. This component-based architecture enables developers to compose complex behaviors by combining various components, resulting in a more modular and flexible design.
A notable addition to this version is the inclusion of new events: onReady, onCollisionStart, and onCollisionEnd. These events provide developers with fine-grained control over object behavior and enable them to create immersive and interactive experiences. By utilizing these events, developers can execute specific actions when an object becomes ready, when a collision begins, or when a collision ends, allowing for dynamic and reactive gameplay mechanics.
Furthermore, the engine now offers comprehensive support for various collision shapes. Developers can easily define collision areas using shapes such as circles and rectangles, enabling accurate collision detection and response between game objects. However, it's important to note that the implementation of collision shapes like segments and polygons is still a work in progress. While these features are being actively developed, they may contain certain bugs or limitations. Future updates are expected to address these issues and further enhance collision handling capabilities.
Another notable improvement in this release is the inclusion of language localization for comments. Previously, comments were only available in English, which limited accessibility for international developers. With this update, the engine now supports comments in multiple languages, making it more inclusive and user-friendly for developers around the world. This enhancement fosters collaboration and allows developers from different language backgrounds to contribute and understand the codebase more effectively.
To enhance code documentation and improve developer experience, portions of the code have been supplemented with JSDoc. This standardized documentation format helps provide clear and concise explanations of the code's functionality, making it easier for developers to understand and work with the engine's codebase.
Finally, with this release, the engine will be available on N.P.M. (Node Package Manager) for easy installation and management. This accessibility ensures that developers can effortlessly integrate the engine into their projects, streamline their development workflows, and benefit from the latest features and improvements.
Please note that while this version marks the release of the beta version, certain features, such as segments and polygons, are still under development. These features may exhibit unexpected behavior, and additional updates will be released to address any reported issues and further refine their functionality.