UNPKG

@battle-racing/br-common-lib

Version:

Common library for all Battle Racing Repositorios

51 lines (46 loc) 1.44 kB
import type { BallSensorDiskThrowerModuleCommands, DiskSensorBallShooterModuleCommands, FlagModuleCommands, LeftStarBackLaserModuleCommands, RGBModuleCommands, RightStarFrontLaserModuleCommands, SoundModuleCommands, SpeedModuleCommands, SteeringWheelModuleCommands, } from '../command'; import type { Damage } from '../damage'; import type { PowerUpName } from './PowerUpName'; import type { PowerUpShield } from './PowerUpShield'; export type PowerUpLevel = 1 | 2 | 3 | 4 | 5; /** * The Power-up command exclude the ScreenModuleCommands because * the system needs to know to know in which kind of game is the kart. */ export type PowerUpCommand = | BallSensorDiskThrowerModuleCommands | DiskSensorBallShooterModuleCommands | FlagModuleCommands | RGBModuleCommands | SpeedModuleCommands | LeftStarBackLaserModuleCommands | RightStarFrontLaserModuleCommands | SteeringWheelModuleCommands | SoundModuleCommands; export interface PowerUp { id: string; name: PowerUpName; imageName: string; description: string; level: PowerUpLevel; /** Commands to be executed when the power-up is assigned */ assignationCommands: PowerUpCommand[]; /** Whenever the user activates the assigned power-up */ activationCommands: PowerUpCommand[]; shield?: PowerUpShield; /** * Represents damage that needs the backend to be propagated * to other(s) kart(s) */ networkDamage?: Damage; }