Skip to content

v0.6.0

Choose a tag to compare

@martasskv5 martasskv5 released this 26 May 15:59
· 13 commits to main since this release
1fb5cda

This release introduces significant updates to the windowkill project, including new inter-window communication features, enhanced game mechanics, and improvements to the codebase's structure and functionality. Below is a categorized summary of the most important changes:

Inter-Window Communication and Synchronization

  • Introduced a global sync server using a shared broadcast channel (tokio) to synchronize messages between windows, with commands for starting the server, sending messages, and subscribing windows to sync events (src-tauri/src/lib.rs). [1] [2]

Game Mechanics Enhancements

  • Updated the README.md to reflect progress on game features, including successful spawning of enemies and bosses in multiple windows, transferring projectiles, and adding interactivity between windows (README.md). [1] [2]
  • Refactored the Player class into a more generic Entity class to represent various game elements (e.g., players, projectiles, enemies), and introduced a new NGon class for boss entities with polygonal shapes (src/js/classes.js). [1] [2]

Frontend and UI Improvements

  • Added a new canvas.html file to support rendering a canvas for the game, with a script for managing multi-window functionality (src/html/canvas.html).
  • Enhanced the game background to dynamically adjust its transparency based on local storage settings (src/html/achievements.html).

Utility and Codebase Improvements

  • Added utility functions for converting between canvas and monitor coordinates and generating random hex colors for better visual effects (src/js/functions.js).
  • Refactored existing functions and replaced hardcoded values with configurable options, improving scalability and readability (src/js/functions.js).