Feature/ultimate#9
Draft
ZhalgasB wants to merge 27 commits into
Draft
Conversation
… handling - Reorganize state initialization sequence for proper lambda resolution - Implement separate input processors for gameplay and pause overlay - Introduce dispose() method for proper resource management - Update resize() method to include GameOverState resizing - Enhance GameOverState with UI elements and interaction - Improve event handling for game pause and resume
- Create Boss class with enhanced abilities and phases - Add boss spawning and defeat logic in PlayingState - Extend EnemyFactory to include Boss as a spawnable enemy type - Update GameEvent with BOSS_SPAWNED and BOSS_DEFEATED events - Modify PlayingState to handle boss fight UI and scoring
- Add new static Texture field for bossTexture - Load boss texture from "sprites/enemies/boss.png" - Update load() method to include boss texture
- Simplify boss position reset logic after swoop - Allow for float damage values in boss hit method
- Modified health field from int to float for more granular damage calculations - Updated constructor, hit method, and getHealth to reflect the new health type - Adjusted clone method to cast health back to int to maintain API compatibility
- Remove Stage, Skin, and UI components dependency - Simplify render method for game over screen - Use basic BitmapFont for text rendering - Handle font resource disposal manually
- Remove Stage, Skin, and UI components dependency - Simplify render method for game over screen - Use basic BitmapFont for text rendering - Handle font resource disposal manually
- Add boss bullet handling and shooting logic - Implement three different boss phases with varying behavior - Update boss movement and appearance for improved visual experience - Create bullet list management within the Boss class
- Create BossBullet class with position, velocity, and size attributes - Implement update method to move the bullet and check if it's alive - Implement draw method to render the bullet - Add destroy, isAlive, and getBounds methods for bullet management
- Introduce Boss entity with special spawning and update logic - Implement boss fight trigger based on player score - Add boss bullet spawning and collision detection - Update game status messages for boss events - Adjust enemy spawning and scoring system for boss fights - Improve boss aiming mechanism by using player position
- Add boss bullet drawing and player collision detection - Implement boss bullet movement and spawning logic - Adjust boss positioning and scaling for better visibility and gameplay - Refactor boss shooting patterns for increased aggression - Update GameState to handle boss bullets in drawing and collision checks
- Implement PowerUp class with type enumeration (HEALTH, SHIELD, FIRE_RATE) - Add update logic to move power-ups and remove when out of screen - Implement draw method to render power-up texture - Add collect method to handle power-up effect (currently just increases score) - Include basic collision detection with getBounds method
- Implement PowerUp class and related enums - Add power-up spawning logic in GameState - Update game event to include POWERUP_COLLECTED - Implement power-up collision detection with player - Add power-up drawing in GameState render method - Update power-ups list in GameState update method
- Introduce new enum constant LIFE_GAINED to GameEvent - This allows for more granular event handling in the game's observer pattern
- Implement addLife method in GameManager - Increase lives count and notify observers on life gain
…ents - Add status message display system with timer - Improve boss fight mechanics and spawn conditions - Enhance power-up collection feedback - Optimize enemy collision detection and scoring - Refactor weapon switching logic - Improve code readability and formatting
- Add shield functionality with activation and consumption methods - Implement fire rate boost with a multiplier and timer - Introduce effective shoot delay calculation for fire rate boost - Update shoot cooldown logic to use effective shoot delay
- Extend PowerUp.Type with display name and tint color - Improve draw method to use tint colors for visual feedback - Expand collect method to provide various power-up effects and return feedback strings - Add import for Color and remove unused import
- Implement UltimateAttack class to handle shockwave logic - Add shockwave texture loading in Assets.java - Update PlayingState to display cooldown and handle ultimate attack - Modify GameState to check for ultimate attack collisions - Adjust Player class to include ultimate attack cooldown and methods
- Implement UltimateAttack class with expanding shockwave effect - Add ultimate attack logic to Player class, including cooldown and usage - Integrate ultimate attack collision detection in PlayingState - Update ultimate attack cooldown display in HUD - Adjust enemy spawn scoring system
…ltimate attack mechanics and balance - Reduce ultimate cooldown duration from 15 seconds to 12 seconds - Implement interval-based damage dealing for enemies within ultimate range - Split ultimate damage into 10 ticks to prevent instant enemy destruction - Increase ultimate lifetime from 1.5 seconds to 2.0 seconds - Adjust ultimate animation and scaling effect for better visual impact - Refactor ultimate attack logic to track hit enemies and apply consistent damage over time
- Add projectile texture to ultimate attack - Implement explosion wave for ultimate attack - Modify enemy hit detection to use explosion wave - Refactor ultimate attack cooldown and damage logic
- PowerUp: Add rotating, pulsating, and wavering animation; increase size and speed - UltimateAttack: Split into launch and explosion phases; add multi-wave explosion effect
- Implement ExplosionWave class with dynamic rendering and damage calculation - Add update and draw methods for animation and screen rendering - Include easing effects for wave expansion and fade-out - Provide collision detection with bounding rectangle
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.