Class ProjectileManagerModel

java.lang.Object
model.projectiles.ProjectileManagerModel

public class ProjectileManagerModel extends Object
Game logic for managing all projectiles.
  • Method Details

    • getInstance

      public static ProjectileManagerModel getInstance()
      Returns the singleton instance of the ProjectileManagerModel.
      Returns:
      the singleton instance
    • update

      public void update()
      Updates all active projectiles and checks for collisions.
    • addProjectile

      public void addProjectile(ProjectileModel projectileModel)
      Adds a new projectile to the manager.
      Parameters:
      projectileModel - the projectile to add
    • newLevelReset

      public void newLevelReset()
      Resets the projectiles for a new level.
    • newPlayReset

      public void newPlayReset()
      Resets the projectiles and multipliers for a new play session.
    • getPlayerProjectileSpeedMultiplier

      public float getPlayerProjectileSpeedMultiplier()
      Returns the current speed multiplier for player projectiles.
      Returns:
      the speed multiplier
    • setPlayerProjectileSpeedMultiplier

      public void setPlayerProjectileSpeedMultiplier(float playerProjectileSpeedMultiplier)
      Sets the speed multiplier for player projectiles.
      Parameters:
      playerProjectileSpeedMultiplier - the new speed multiplier
    • getPlayerProjectileDistanceMultiplier

      public float getPlayerProjectileDistanceMultiplier()
      Returns the current distance multiplier for player projectiles.
      Returns:
      the distance multiplier
    • setPlayerProjectileDistanceMultiplier

      public void setPlayerProjectileDistanceMultiplier(float playerProjectileDistanceMultiplier)
      Sets the distance multiplier for player projectiles.
      Parameters:
      playerProjectileDistanceMultiplier - the new distance multiplier
    • getProjectileModels

      public ArrayList<ProjectileModel> getProjectileModels()
      Returns the list of all projectiles managed by this manager.
      Returns:
      the list of projectiles
    • getPlayerProjectileActiveMultiplier

      public float getPlayerProjectileActiveMultiplier()
      Returns the current active time multiplier for player projectiles.
      Returns:
      the active time multiplier
    • setPlayerProjectileActiveMultiplier

      public void setPlayerProjectileActiveMultiplier(float playerProjectileActiveTimeMultiplier)
      Sets the active time multiplier for player projectiles.
      Parameters:
      playerProjectileActiveTimeMultiplier - the new active time multiplier