@battle-racing/br-common-lib 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.prettierrc +8 -0
- package/dist/checkpoint/Checkpoint.d.ts +10 -0
- package/dist/checkpoint/Checkpoint.js +2 -0
- package/dist/checkpoint/CheckpointType.d.ts +5 -0
- package/dist/checkpoint/CheckpointType.js +8 -0
- package/dist/checkpoint/index.d.ts +2 -0
- package/dist/checkpoint/index.js +18 -0
- package/dist/color/ColorInfo.d.ts +4 -0
- package/dist/color/ColorInfo.js +2 -0
- package/dist/color/ColorName.d.ts +1 -0
- package/dist/color/ColorName.js +2 -0
- package/dist/color/index.d.ts +2 -0
- package/dist/color/index.js +18 -0
- package/dist/command/CommandConfig.d.ts +156 -0
- package/dist/command/CommandConfig.js +2 -0
- package/dist/command/index.d.ts +1 -0
- package/dist/command/index.js +17 -0
- package/dist/damage/Damage.d.ts +14 -0
- package/dist/damage/Damage.js +2 -0
- package/dist/damage/DamageName.d.ts +1 -0
- package/dist/damage/DamageName.js +2 -0
- package/dist/damage/DamageTarget.d.ts +1 -0
- package/dist/damage/DamageTarget.js +2 -0
- package/dist/damage/index.d.ts +3 -0
- package/dist/damage/index.js +19 -0
- package/dist/flow/Flow.d.ts +7 -0
- package/dist/flow/Flow.js +2 -0
- package/dist/flow/index.d.ts +1 -0
- package/dist/flow/index.js +17 -0
- package/dist/game/Game.d.ts +36 -0
- package/dist/game/Game.js +14 -0
- package/dist/game/GameStatus.d.ts +9 -0
- package/dist/game/GameStatus.js +12 -0
- package/dist/game/GameType.d.ts +5 -0
- package/dist/game/GameType.js +8 -0
- package/dist/game/GameWarningEvent.d.ts +1 -0
- package/dist/game/GameWarningEvent.js +2 -0
- package/dist/game/KartRankingItem.d.ts +5 -0
- package/dist/game/KartRankingItem.js +2 -0
- package/dist/game/battle/Battle.d.ts +9 -0
- package/dist/game/battle/Battle.js +2 -0
- package/dist/game/battle/index.d.ts +1 -0
- package/dist/game/battle/index.js +17 -0
- package/dist/game/index.d.ts +7 -0
- package/dist/game/index.js +23 -0
- package/dist/game/race/KartProgress.d.ts +10 -0
- package/dist/game/race/KartProgress.js +2 -0
- package/dist/game/race/Race.d.ts +17 -0
- package/dist/game/race/Race.js +2 -0
- package/dist/game/race/index.d.ts +2 -0
- package/dist/game/race/index.js +18 -0
- package/dist/gameTrack/GameTrack.d.ts +12 -0
- package/dist/gameTrack/GameTrack.js +2 -0
- package/dist/gameTrack/GameTrackKartsConfig.d.ts +21 -0
- package/dist/gameTrack/GameTrackKartsConfig.js +2 -0
- package/dist/gameTrack/index.d.ts +2 -0
- package/dist/gameTrack/index.js +18 -0
- package/dist/hardware/KartEffect.d.ts +1 -0
- package/dist/hardware/KartEffect.js +2 -0
- package/dist/hardware/ModuleName.d.ts +1 -0
- package/dist/hardware/ModuleName.js +2 -0
- package/dist/hardware/ModuleStatus.d.ts +9 -0
- package/dist/hardware/ModuleStatus.js +2 -0
- package/dist/hardware/ballSensor/BallSensorCommand.d.ts +1 -0
- package/dist/hardware/ballSensor/BallSensorCommand.js +2 -0
- package/dist/hardware/ballSensor/BallSensorDiskThrowerModuleStatus.d.ts +4 -0
- package/dist/hardware/ballSensor/BallSensorDiskThrowerModuleStatus.js +2 -0
- package/dist/hardware/ballSensor/BallSensorStatus.d.ts +1 -0
- package/dist/hardware/ballSensor/BallSensorStatus.js +2 -0
- package/dist/hardware/ballSensor/ConfigureBallSensorDiskThrowerModuleOptions.d.ts +4 -0
- package/dist/hardware/ballSensor/ConfigureBallSensorDiskThrowerModuleOptions.js +2 -0
- package/dist/hardware/ballSensor/index.d.ts +4 -0
- package/dist/hardware/ballSensor/index.js +20 -0
- package/dist/hardware/ballShooter/BallShooterCommand.d.ts +1 -0
- package/dist/hardware/ballShooter/BallShooterCommand.js +2 -0
- package/dist/hardware/ballShooter/BallShooterStatus.d.ts +1 -0
- package/dist/hardware/ballShooter/BallShooterStatus.js +2 -0
- package/dist/hardware/ballShooter/index.d.ts +2 -0
- package/dist/hardware/ballShooter/index.js +18 -0
- package/dist/hardware/diskSensor/ConfigDiskSensorBallShooterModuleOptions.d.ts +8 -0
- package/dist/hardware/diskSensor/ConfigDiskSensorBallShooterModuleOptions.js +2 -0
- package/dist/hardware/diskSensor/DiskSensorBallShooterModuleStatus.d.ts +4 -0
- package/dist/hardware/diskSensor/DiskSensorBallShooterModuleStatus.js +2 -0
- package/dist/hardware/diskSensor/DiskSensorCommand.d.ts +1 -0
- package/dist/hardware/diskSensor/DiskSensorCommand.js +2 -0
- package/dist/hardware/diskSensor/DiskSensorStatus.d.ts +1 -0
- package/dist/hardware/diskSensor/DiskSensorStatus.js +2 -0
- package/dist/hardware/diskSensor/index.d.ts +4 -0
- package/dist/hardware/diskSensor/index.js +20 -0
- package/dist/hardware/diskThrower/DiskThrowerCommand.d.ts +1 -0
- package/dist/hardware/diskThrower/DiskThrowerCommand.js +2 -0
- package/dist/hardware/diskThrower/DiskThrowerStatus.d.ts +1 -0
- package/dist/hardware/diskThrower/DiskThrowerStatus.js +2 -0
- package/dist/hardware/diskThrower/index.d.ts +2 -0
- package/dist/hardware/diskThrower/index.js +18 -0
- package/dist/hardware/emergency/EmergencyActionCommand.d.ts +1 -0
- package/dist/hardware/emergency/EmergencyActionCommand.js +2 -0
- package/dist/hardware/emergency/EmergencyModuleStatus.d.ts +4 -0
- package/dist/hardware/emergency/EmergencyModuleStatus.js +2 -0
- package/dist/hardware/emergency/EmergencyStatus.d.ts +1 -0
- package/dist/hardware/emergency/EmergencyStatus.js +2 -0
- package/dist/hardware/emergency/index.d.ts +3 -0
- package/dist/hardware/emergency/index.js +19 -0
- package/dist/hardware/flag/FlagActionCommand.d.ts +1 -0
- package/dist/hardware/flag/FlagActionCommand.js +2 -0
- package/dist/hardware/flag/FlagConfigurationOptions.d.ts +10 -0
- package/dist/hardware/flag/FlagConfigurationOptions.js +2 -0
- package/dist/hardware/flag/FlagMediaName.d.ts +74 -0
- package/dist/hardware/flag/FlagMediaName.js +85 -0
- package/dist/hardware/flag/FlagModuleStatus.d.ts +7 -0
- package/dist/hardware/flag/FlagModuleStatus.js +2 -0
- package/dist/hardware/flag/FlagShowMediaOptions.d.ts +14 -0
- package/dist/hardware/flag/FlagShowMediaOptions.js +2 -0
- package/dist/hardware/flag/FlagStatus.d.ts +1 -0
- package/dist/hardware/flag/FlagStatus.js +2 -0
- package/dist/hardware/flag/index.d.ts +6 -0
- package/dist/hardware/flag/index.js +22 -0
- package/dist/hardware/index.d.ts +15 -0
- package/dist/hardware/index.js +31 -0
- package/dist/hardware/rgb/RGBActionCommand.d.ts +1 -0
- package/dist/hardware/rgb/RGBActionCommand.js +2 -0
- package/dist/hardware/rgb/RGBConfigurationOptions.d.ts +8 -0
- package/dist/hardware/rgb/RGBConfigurationOptions.js +2 -0
- package/dist/hardware/rgb/RGBModuleStatus.d.ts +6 -0
- package/dist/hardware/rgb/RGBModuleStatus.js +2 -0
- package/dist/hardware/rgb/RGBShowEffectOptions.d.ts +4 -0
- package/dist/hardware/rgb/RGBShowEffectOptions.js +2 -0
- package/dist/hardware/rgb/RGBStatus.d.ts +1 -0
- package/dist/hardware/rgb/RGBStatus.js +2 -0
- package/dist/hardware/rgb/index.d.ts +5 -0
- package/dist/hardware/rgb/index.js +21 -0
- package/dist/hardware/screen/ScreenBattleViewConfig.d.ts +4 -0
- package/dist/hardware/screen/ScreenBattleViewConfig.js +2 -0
- package/dist/hardware/screen/ScreenCountdownParams.d.ts +11 -0
- package/dist/hardware/screen/ScreenCountdownParams.js +2 -0
- package/dist/hardware/screen/ScreenFinishViewInput.d.ts +7 -0
- package/dist/hardware/screen/ScreenFinishViewInput.js +2 -0
- package/dist/hardware/screen/ScreenGameTimeLeft.d.ts +4 -0
- package/dist/hardware/screen/ScreenGameTimeLeft.js +2 -0
- package/dist/hardware/screen/ScreenKartPosition.d.ts +4 -0
- package/dist/hardware/screen/ScreenKartPosition.js +2 -0
- package/dist/hardware/screen/ScreenRaceLaps.d.ts +4 -0
- package/dist/hardware/screen/ScreenRaceLaps.js +2 -0
- package/dist/hardware/screen/ScreenRaceViewConfig.d.ts +5 -0
- package/dist/hardware/screen/ScreenRaceViewConfig.js +2 -0
- package/dist/hardware/screen/ScreenUpdateGameViewInput.d.ts +11 -0
- package/dist/hardware/screen/ScreenUpdateGameViewInput.js +2 -0
- package/dist/hardware/screen/ScreenView.d.ts +1 -0
- package/dist/hardware/screen/ScreenView.js +2 -0
- package/dist/hardware/screen/ScreenViewBaseConfig.d.ts +11 -0
- package/dist/hardware/screen/ScreenViewBaseConfig.js +2 -0
- package/dist/hardware/screen/index.d.ts +10 -0
- package/dist/hardware/screen/index.js +26 -0
- package/dist/hardware/sound/PlaySoundOptions.d.ts +4 -0
- package/dist/hardware/sound/PlaySoundOptions.js +2 -0
- package/dist/hardware/sound/index.d.ts +1 -0
- package/dist/hardware/sound/index.js +17 -0
- package/dist/hardware/speed/SpeedActionCommand.d.ts +1 -0
- package/dist/hardware/speed/SpeedActionCommand.js +2 -0
- package/dist/hardware/speed/SpeedChangeOptions.d.ts +6 -0
- package/dist/hardware/speed/SpeedChangeOptions.js +2 -0
- package/dist/hardware/speed/SpeedConfiguration.d.ts +6 -0
- package/dist/hardware/speed/SpeedConfiguration.js +2 -0
- package/dist/hardware/speed/SpeedModuleStatus.d.ts +12 -0
- package/dist/hardware/speed/SpeedModuleStatus.js +2 -0
- package/dist/hardware/speed/SpeedStatus.d.ts +1 -0
- package/dist/hardware/speed/SpeedStatus.js +2 -0
- package/dist/hardware/speed/index.d.ts +5 -0
- package/dist/hardware/speed/index.js +21 -0
- package/dist/hardware/star-laser/StarLaserCommand.d.ts +1 -0
- package/dist/hardware/star-laser/StarLaserCommand.js +2 -0
- package/dist/hardware/star-laser/StarLaserConfigureModuleOptions.d.ts +7 -0
- package/dist/hardware/star-laser/StarLaserConfigureModuleOptions.js +2 -0
- package/dist/hardware/star-laser/StarLaserModuleStatus.d.ts +7 -0
- package/dist/hardware/star-laser/StarLaserModuleStatus.js +2 -0
- package/dist/hardware/star-laser/StarLaserSendActionsOptions.d.ts +5 -0
- package/dist/hardware/star-laser/StarLaserSendActionsOptions.js +2 -0
- package/dist/hardware/star-laser/StarLaserStatus.d.ts +1 -0
- package/dist/hardware/star-laser/StarLaserStatus.js +2 -0
- package/dist/hardware/star-laser/index.d.ts +5 -0
- package/dist/hardware/star-laser/index.js +21 -0
- package/dist/hardware/steering-wheel/SteeringWheelModuleStatus.d.ts +4 -0
- package/dist/hardware/steering-wheel/SteeringWheelModuleStatus.js +2 -0
- package/dist/hardware/steering-wheel/index.d.ts +1 -0
- package/dist/hardware/steering-wheel/index.js +17 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.js +36 -0
- package/dist/kart/Kart.d.ts +29 -0
- package/dist/kart/Kart.js +2 -0
- package/dist/kart/KartShield.d.ts +4 -0
- package/dist/kart/KartShield.js +2 -0
- package/dist/kart/KartStatus.d.ts +2 -0
- package/dist/kart/KartStatus.js +4 -0
- package/dist/kart/index.d.ts +2 -0
- package/dist/kart/index.js +18 -0
- package/dist/kartTracking/CheckpointEvent.d.ts +8 -0
- package/dist/kartTracking/CheckpointEvent.js +2 -0
- package/dist/kartTracking/KartTracking.d.ts +5 -0
- package/dist/kartTracking/KartTracking.js +2 -0
- package/dist/kartTracking/index.d.ts +2 -0
- package/dist/kartTracking/index.js +18 -0
- package/dist/powerUp/PowerUp.d.ts +27 -0
- package/dist/powerUp/PowerUp.js +2 -0
- package/dist/powerUp/PowerUpName.d.ts +1 -0
- package/dist/powerUp/PowerUpName.js +2 -0
- package/dist/powerUp/PowerUpShield.d.ts +6 -0
- package/dist/powerUp/PowerUpShield.js +2 -0
- package/dist/powerUp/PowerUpTarget.d.ts +11 -0
- package/dist/powerUp/PowerUpTarget.js +10 -0
- package/dist/powerUp/PowerUpType.d.ts +8 -0
- package/dist/powerUp/PowerUpType.js +7 -0
- package/dist/powerUp/index.d.ts +5 -0
- package/dist/powerUp/index.js +21 -0
- package/dist/response/ErrorResponse.d.ts +6 -0
- package/dist/response/ErrorResponse.js +2 -0
- package/dist/response/Response.d.ts +3 -0
- package/dist/response/Response.js +2 -0
- package/dist/response/SuccesResponse.d.ts +5 -0
- package/dist/response/SuccesResponse.js +2 -0
- package/dist/response/index.d.ts +3 -0
- package/dist/response/index.js +2 -0
- package/dist/socket/SocketHardwareModulesEventsParams.d.ts +65 -0
- package/dist/socket/SocketHardwareModulesEventsParams.js +2 -0
- package/dist/socket/SocketHardwareOnDataEventsParams.d.ts +16 -0
- package/dist/socket/SocketHardwareOnDataEventsParams.js +2 -0
- package/dist/socket/SocketPowerUpEventsParams.d.ts +21 -0
- package/dist/socket/SocketPowerUpEventsParams.js +2 -0
- package/dist/socket/clientToServer/SocketGameTrackClientToServerEventsParams.d.ts +13 -0
- package/dist/socket/clientToServer/SocketGameTrackClientToServerEventsParams.js +2 -0
- package/dist/socket/clientToServer/SocketKartClientToServerEventsParams.d.ts +16 -0
- package/dist/socket/clientToServer/SocketKartClientToServerEventsParams.js +2 -0
- package/dist/socket/clientToServer/SocketWebAppClientToServerEventsParams.d.ts +22 -0
- package/dist/socket/clientToServer/SocketWebAppClientToServerEventsParams.js +2 -0
- package/dist/socket/clientToServer/index.d.ts +3 -0
- package/dist/socket/clientToServer/index.js +19 -0
- package/dist/socket/index.d.ts +7 -0
- package/dist/socket/index.js +23 -0
- package/dist/socket/inputs/MacAddressGameTrackConnection.d.ts +6 -0
- package/dist/socket/inputs/MacAddressGameTrackConnection.js +2 -0
- package/dist/socket/inputs/SocketInitRaspberryInput.d.ts +3 -0
- package/dist/socket/inputs/SocketInitRaspberryInput.js +2 -0
- package/dist/socket/inputs/SocketRegisterKartCheckpointInput.d.ts +11 -0
- package/dist/socket/inputs/SocketRegisterKartCheckpointInput.js +2 -0
- package/dist/socket/inputs/index.d.ts +3 -0
- package/dist/socket/inputs/index.js +19 -0
- package/dist/socket/serverToClient/SocketGameTrackServerToClientEventParams.d.ts +10 -0
- package/dist/socket/serverToClient/SocketGameTrackServerToClientEventParams.js +2 -0
- package/dist/socket/serverToClient/SocketKartServerToClientEventsParams.d.ts +48 -0
- package/dist/socket/serverToClient/SocketKartServerToClientEventsParams.js +2 -0
- package/dist/socket/serverToClient/SocketWebAppServerToClientEventsParams.d.ts +24 -0
- package/dist/socket/serverToClient/SocketWebAppServerToClientEventsParams.js +2 -0
- package/dist/socket/serverToClient/index.d.ts +3 -0
- package/dist/socket/serverToClient/index.js +19 -0
- package/dist/socket/utils/SocketParamsToEvents.d.ts +10 -0
- package/dist/socket/utils/SocketParamsToEvents.js +2 -0
- package/dist/socket/utils/index.d.ts +1 -0
- package/dist/socket/utils/index.js +17 -0
- package/dist/sounds/SoundName.d.ts +1 -0
- package/dist/sounds/SoundName.js +2 -0
- package/dist/sounds/index.d.ts +1 -0
- package/dist/sounds/index.js +17 -0
- package/dist/user/User.d.ts +7 -0
- package/dist/user/User.js +2 -0
- package/dist/user/UserOrigin.d.ts +1 -0
- package/dist/user/UserOrigin.js +2 -0
- package/dist/user/index.d.ts +2 -0
- package/dist/user/index.js +18 -0
- package/dist/utils/ArithmeticString.d.ts +9 -0
- package/dist/utils/ArithmeticString.js +2 -0
- package/dist/utils/ObjectValues.d.ts +1 -0
- package/dist/utils/ObjectValues.js +2 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +18 -0
- package/package.json +22 -0
- package/src/types/checkpoint/Checkpoint.ts +11 -0
- package/src/types/checkpoint/CheckpointType.ts +6 -0
- package/src/types/checkpoint/index.ts +2 -0
- package/src/types/color/ColorInfo.ts +4 -0
- package/src/types/color/ColorName.ts +13 -0
- package/src/types/color/index.ts +2 -0
- package/src/types/command/CommandConfig.ts +91 -0
- package/src/types/command/index.ts +1 -0
- package/src/types/damage/Damage.ts +15 -0
- package/src/types/damage/DamageName.ts +1 -0
- package/src/types/damage/DamageTarget.ts +1 -0
- package/src/types/damage/index.ts +3 -0
- package/src/types/flow/Flow.ts +8 -0
- package/src/types/flow/index.ts +1 -0
- package/src/types/game/Game.ts +39 -0
- package/src/types/game/GameStatus.ts +10 -0
- package/src/types/game/GameType.ts +6 -0
- package/src/types/game/GameWarningEvent.ts +1 -0
- package/src/types/game/KartRankingItem.ts +5 -0
- package/src/types/game/battle/Battle.ts +11 -0
- package/src/types/game/battle/index.ts +1 -0
- package/src/types/game/index.ts +7 -0
- package/src/types/game/race/KartProgress.ts +10 -0
- package/src/types/game/race/Race.ts +20 -0
- package/src/types/game/race/index.ts +2 -0
- package/src/types/gameTrack/GameTrack.ts +13 -0
- package/src/types/gameTrack/GameTrackKartsConfig.ts +25 -0
- package/src/types/gameTrack/index.ts +2 -0
- package/src/types/hardware/KartEffect.ts +19 -0
- package/src/types/hardware/ModuleName.ts +10 -0
- package/src/types/hardware/ModuleStatus.ts +18 -0
- package/src/types/hardware/ballSensor/BallSensorCommand.ts +1 -0
- package/src/types/hardware/ballSensor/BallSensorDiskThrowerModuleStatus.ts +5 -0
- package/src/types/hardware/ballSensor/BallSensorStatus.ts +1 -0
- package/src/types/hardware/ballSensor/ConfigureBallSensorDiskThrowerModuleOptions.ts +4 -0
- package/src/types/hardware/ballSensor/index.ts +4 -0
- package/src/types/hardware/ballShooter/BallShooterCommand.ts +1 -0
- package/src/types/hardware/ballShooter/BallShooterStatus.ts +6 -0
- package/src/types/hardware/ballShooter/index.ts +2 -0
- package/src/types/hardware/diskSensor/ConfigDiskSensorBallShooterModuleOptions.ts +8 -0
- package/src/types/hardware/diskSensor/DiskSensorBallShooterModuleStatus.ts +5 -0
- package/src/types/hardware/diskSensor/DiskSensorCommand.ts +1 -0
- package/src/types/hardware/diskSensor/DiskSensorStatus.ts +9 -0
- package/src/types/hardware/diskSensor/index.ts +4 -0
- package/src/types/hardware/diskThrower/DiskThrowerCommand.ts +1 -0
- package/src/types/hardware/diskThrower/DiskThrowerStatus.ts +1 -0
- package/src/types/hardware/diskThrower/index.ts +2 -0
- package/src/types/hardware/emergency/EmergencyActionCommand.ts +1 -0
- package/src/types/hardware/emergency/EmergencyModuleStatus.ts +5 -0
- package/src/types/hardware/emergency/EmergencyStatus.ts +1 -0
- package/src/types/hardware/emergency/index.ts +3 -0
- package/src/types/hardware/flag/FlagActionCommand.ts +6 -0
- package/src/types/hardware/flag/FlagConfigurationOptions.ts +11 -0
- package/src/types/hardware/flag/FlagMediaName.ts +87 -0
- package/src/types/hardware/flag/FlagModuleStatus.ts +8 -0
- package/src/types/hardware/flag/FlagShowMediaOptions.ts +15 -0
- package/src/types/hardware/flag/FlagStatus.ts +8 -0
- package/src/types/hardware/flag/index.ts +6 -0
- package/src/types/hardware/index.ts +15 -0
- package/src/types/hardware/rgb/RGBActionCommand.ts +1 -0
- package/src/types/hardware/rgb/RGBConfigurationOptions.ts +9 -0
- package/src/types/hardware/rgb/RGBModuleStatus.ts +7 -0
- package/src/types/hardware/rgb/RGBShowEffectOptions.ts +5 -0
- package/src/types/hardware/rgb/RGBStatus.ts +1 -0
- package/src/types/hardware/rgb/index.ts +5 -0
- package/src/types/hardware/screen/ScreenBattleViewConfig.ts +5 -0
- package/src/types/hardware/screen/ScreenCountdownParams.ts +14 -0
- package/src/types/hardware/screen/ScreenFinishViewInput.ts +7 -0
- package/src/types/hardware/screen/ScreenGameTimeLeft.ts +4 -0
- package/src/types/hardware/screen/ScreenKartPosition.ts +4 -0
- package/src/types/hardware/screen/ScreenRaceLaps.ts +4 -0
- package/src/types/hardware/screen/ScreenRaceViewConfig.ts +6 -0
- package/src/types/hardware/screen/ScreenUpdateGameViewInput.ts +14 -0
- package/src/types/hardware/screen/ScreenView.ts +1 -0
- package/src/types/hardware/screen/ScreenViewBaseConfig.ts +12 -0
- package/src/types/hardware/screen/index.ts +10 -0
- package/src/types/hardware/sound/PlaySoundOptions.ts +5 -0
- package/src/types/hardware/sound/index.ts +1 -0
- package/src/types/hardware/speed/SpeedActionCommand.ts +1 -0
- package/src/types/hardware/speed/SpeedChangeOptions.ts +6 -0
- package/src/types/hardware/speed/SpeedConfiguration.ts +6 -0
- package/src/types/hardware/speed/SpeedModuleStatus.ts +13 -0
- package/src/types/hardware/speed/SpeedStatus.ts +1 -0
- package/src/types/hardware/speed/index.ts +5 -0
- package/src/types/hardware/star-laser/StarLaserCommand.ts +1 -0
- package/src/types/hardware/star-laser/StarLaserConfigureModuleOptions.ts +7 -0
- package/src/types/hardware/star-laser/StarLaserModuleStatus.ts +10 -0
- package/src/types/hardware/star-laser/StarLaserSendActionsOptions.ts +6 -0
- package/src/types/hardware/star-laser/StarLaserStatus.ts +1 -0
- package/src/types/hardware/star-laser/index.ts +5 -0
- package/src/types/hardware/steering-wheel/SteeringWheelModuleStatus.ts +4 -0
- package/src/types/hardware/steering-wheel/index.ts +1 -0
- package/src/types/index.ts +21 -0
- package/src/types/kart/Kart.ts +31 -0
- package/src/types/kart/KartShield.ts +4 -0
- package/src/types/kart/KartStatus.ts +2 -0
- package/src/types/kart/index.ts +2 -0
- package/src/types/kartTracking/CheckpointEvent.ts +9 -0
- package/src/types/kartTracking/KartTracking.ts +6 -0
- package/src/types/kartTracking/index.ts +2 -0
- package/src/types/powerUp/PowerUp.ts +50 -0
- package/src/types/powerUp/PowerUpName.ts +9 -0
- package/src/types/powerUp/PowerUpShield.ts +6 -0
- package/src/types/powerUp/PowerUpTarget.ts +12 -0
- package/src/types/powerUp/PowerUpType.ts +9 -0
- package/src/types/powerUp/index.ts +5 -0
- package/src/types/response/ErrorResponse.ts +6 -0
- package/src/types/response/Response.ts +4 -0
- package/src/types/response/SuccesResponse.ts +5 -0
- package/src/types/response/index.ts +3 -0
- package/src/types/socket/SocketHardwareModulesEventsParams.ts +106 -0
- package/src/types/socket/SocketHardwareOnDataEventsParams.ts +27 -0
- package/src/types/socket/SocketPowerUpEventsParams.ts +13 -0
- package/src/types/socket/clientToServer/SocketGameTrackClientToServerEventsParams.ts +7 -0
- package/src/types/socket/clientToServer/SocketKartClientToServerEventsParams.ts +11 -0
- package/src/types/socket/clientToServer/SocketWebAppClientToServerEventsParams.ts +11 -0
- package/src/types/socket/clientToServer/index.ts +3 -0
- package/src/types/socket/index.ts +7 -0
- package/src/types/socket/inputs/MacAddressGameTrackConnection.ts +7 -0
- package/src/types/socket/inputs/SocketInitRaspberryInput.ts +3 -0
- package/src/types/socket/inputs/SocketRegisterKartCheckpointInput.ts +12 -0
- package/src/types/socket/inputs/index.ts +3 -0
- package/src/types/socket/serverToClient/SocketGameTrackServerToClientEventParams.ts +14 -0
- package/src/types/socket/serverToClient/SocketKartServerToClientEventsParams.ts +47 -0
- package/src/types/socket/serverToClient/SocketWebAppServerToClientEventsParams.ts +23 -0
- package/src/types/socket/serverToClient/index.ts +3 -0
- package/src/types/socket/utils/SocketParamsToEvents.ts +16 -0
- package/src/types/socket/utils/index.ts +1 -0
- package/src/types/sounds/SoundName.ts +24 -0
- package/src/types/sounds/index.ts +1 -0
- package/src/types/user/User.ts +8 -0
- package/src/types/user/UserOrigin.ts +1 -0
- package/src/types/user/index.ts +2 -0
- package/src/types/utils/ArithmeticString.ts +17 -0
- package/src/types/utils/ObjectValues.ts +2 -0
- package/src/types/utils/index.ts +2 -0
- package/tsconfig.json +13 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
BallSensorDiskThrowerModuleCommands,
|
|
3
|
+
DiskSensorBallShooterModuleCommands,
|
|
4
|
+
FlagModuleCommands,
|
|
5
|
+
LeftStarBackLaserModuleCommands,
|
|
6
|
+
RGBModuleCommands,
|
|
7
|
+
RightStarFrontLaserModuleCommands,
|
|
8
|
+
SoundModuleCommands,
|
|
9
|
+
SpeedModuleCommands,
|
|
10
|
+
SteeringWheelModuleCommands,
|
|
11
|
+
} from '../command';
|
|
12
|
+
import type { Damage } from '../damage';
|
|
13
|
+
import type { PowerUpName } from './PowerUpName';
|
|
14
|
+
import type { PowerUpShield } from './PowerUpShield';
|
|
15
|
+
|
|
16
|
+
export type PowerUpLevel = 1 | 2 | 3 | 4 | 5;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* The Power-up command exclude the ScreenModuleCommands because
|
|
20
|
+
* the system needs to know to know in which kind of game is the kart.
|
|
21
|
+
*/
|
|
22
|
+
export type PowerUpCommand =
|
|
23
|
+
| BallSensorDiskThrowerModuleCommands
|
|
24
|
+
| DiskSensorBallShooterModuleCommands
|
|
25
|
+
| FlagModuleCommands
|
|
26
|
+
| RGBModuleCommands
|
|
27
|
+
| SpeedModuleCommands
|
|
28
|
+
| LeftStarBackLaserModuleCommands
|
|
29
|
+
| RightStarFrontLaserModuleCommands
|
|
30
|
+
| SteeringWheelModuleCommands
|
|
31
|
+
| SoundModuleCommands;
|
|
32
|
+
|
|
33
|
+
export interface PowerUp {
|
|
34
|
+
id: string;
|
|
35
|
+
name: PowerUpName;
|
|
36
|
+
imageName: string;
|
|
37
|
+
description: string;
|
|
38
|
+
level: PowerUpLevel;
|
|
39
|
+
|
|
40
|
+
/** Commands to be executed when the power-up is assigned */
|
|
41
|
+
assignationCommands: PowerUpCommand[];
|
|
42
|
+
/** Whenever the user activates the assigned power-up */
|
|
43
|
+
activationCommands: PowerUpCommand[];
|
|
44
|
+
shield?: PowerUpShield;
|
|
45
|
+
/**
|
|
46
|
+
* Represents damage that needs the backend to be propagated
|
|
47
|
+
* to other(s) kart(s)
|
|
48
|
+
*/
|
|
49
|
+
networkDamage?: Damage;
|
|
50
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ObjectValues } from '../utils';
|
|
2
|
+
|
|
3
|
+
const POWER_UP_TARGET = {
|
|
4
|
+
/** Affect the owner of the power-up */
|
|
5
|
+
Self: 'Self',
|
|
6
|
+
/** Affect a single Kart */
|
|
7
|
+
Any: 'Any',
|
|
8
|
+
/** Affect all the other Karts in game (must communicate to the server) */
|
|
9
|
+
All: 'All',
|
|
10
|
+
} as const;
|
|
11
|
+
|
|
12
|
+
export type PowerUpTarget = ObjectValues<typeof POWER_UP_TARGET>;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
ConfigDiskSensorBallShooterModuleOptions,
|
|
3
|
+
ConfigureBallSensorDiskThrowerModuleOptions,
|
|
4
|
+
FlagConfigurationOptions,
|
|
5
|
+
FlagShowMediaOptions,
|
|
6
|
+
PlaySoundOptions,
|
|
7
|
+
RGBConfigurationOptions,
|
|
8
|
+
RGBShowEffectOptions,
|
|
9
|
+
ScreenCountdownParams,
|
|
10
|
+
ScreenFinishViewInput,
|
|
11
|
+
ScreenUpdateGameViewInput,
|
|
12
|
+
SpeedChangeOptions,
|
|
13
|
+
SpeedConfiguration,
|
|
14
|
+
StarLaserConfigureModuleOptions,
|
|
15
|
+
StarLaserSendActionsOptions,
|
|
16
|
+
} from '../hardware';
|
|
17
|
+
|
|
18
|
+
export type SocketHardwareDataSubscriptionEventsParams = {
|
|
19
|
+
'hardware:data:subscribe': undefined;
|
|
20
|
+
'hardware:data:unsubscribe': undefined;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export type SocketHardwareBallSensorDiskThrowerModuleEventsParams = {
|
|
24
|
+
'hardware:ball-sensor-disk-thrower:activateSensor': undefined;
|
|
25
|
+
'hardware:ball-sensor-disk-thrower:deactivateSensor': undefined;
|
|
26
|
+
'hardware:ball-sensor-disk-thrower:configureModule': ConfigureBallSensorDiskThrowerModuleOptions;
|
|
27
|
+
'hardware:ball-sensor-disk-thrower:throwDisk': undefined;
|
|
28
|
+
'hardware:ball-sensor-disk-thrower:activateDiskThrower': undefined;
|
|
29
|
+
'hardware:ball-sensor-disk-thrower:deactivateDiskThrower': undefined;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
export type SocketHardwareDiskSensorBallShooterModuleEventsParams = {
|
|
33
|
+
'hardware:disk-sensor-ball-shooter:configure': ConfigDiskSensorBallShooterModuleOptions;
|
|
34
|
+
'hardware:disk-sensor-ball-shooter:prepareShooter': undefined;
|
|
35
|
+
'hardware:disk-sensor-ball-shooter:shootBall': undefined;
|
|
36
|
+
'hardware:disk-sensor-ball-shooter:activateSensor': undefined;
|
|
37
|
+
'hardware:disk-sensor-ball-shooter:deactivateSensor': undefined;
|
|
38
|
+
'hardware:disk-sensor-ball-shooter:calibrateSensor': undefined;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export type SocketHardwareFlagModuleEventsParams = {
|
|
42
|
+
'hardware:flag:activate': undefined;
|
|
43
|
+
'hardware:flag:deactivate': undefined;
|
|
44
|
+
'hardware:flag:configure': FlagConfigurationOptions;
|
|
45
|
+
'hardware:flag:showMediaIndefinitely': FlagShowMediaOptions;
|
|
46
|
+
'hardware:flag:showMediaTemporarily': FlagShowMediaOptions;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export type SocketHardwareRGBModuleEventsParams = {
|
|
50
|
+
'hardware:rgb:configure': RGBConfigurationOptions;
|
|
51
|
+
'hardware:rgb:showEffect': RGBShowEffectOptions;
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export type SocketHardwareSpeedModuleEventsParams = {
|
|
55
|
+
'hardware:speed:activate': undefined;
|
|
56
|
+
'hardware:speed:deactivate': undefined;
|
|
57
|
+
'hardware:speed:update': SpeedChangeOptions;
|
|
58
|
+
'hardware:speed:configure': SpeedConfiguration;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
export type SocketHardwareLeftStarBackLaserModuleEventsParams = {
|
|
62
|
+
'hardware:left-star-back-laser:action': StarLaserSendActionsOptions;
|
|
63
|
+
'hardware:left-star-back-laser:configure': StarLaserConfigureModuleOptions;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export type SocketHardwareRightStarFrontLaserModuleEventsParams = {
|
|
67
|
+
'hardware:right-star-front-laser:action': StarLaserSendActionsOptions;
|
|
68
|
+
'hardware:right-star-front-laser:configure': StarLaserConfigureModuleOptions;
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
export type SocketHardwareScreenModuleEventsParams = {
|
|
72
|
+
'hardware:screen:showHomeView': undefined;
|
|
73
|
+
'hardware:screen:showCountdownView': ScreenCountdownParams;
|
|
74
|
+
'hardware:screen:updateGameView': ScreenUpdateGameViewInput;
|
|
75
|
+
'hardware:screen:showScreenVictoryView': ScreenFinishViewInput;
|
|
76
|
+
'hardware:screen:showScreenDefeatView': ScreenFinishViewInput;
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
export type SocketHardwareSteeringWheelModuleEventsParams = {
|
|
80
|
+
'hardware:steering-wheel:turnLedOn': undefined;
|
|
81
|
+
'hardware:steering-wheel:turnLedOff': undefined;
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export type SocketHardwareSoundModuleEventsParams = {
|
|
85
|
+
'hardware:sound:play': PlaySoundOptions;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
// UNIQUE FOR GAME TRACK RPI
|
|
89
|
+
export type SocketHardwareEmergencyModuleEventsParams = {
|
|
90
|
+
'hardware:emergency:activate': undefined;
|
|
91
|
+
'hardware:emergency:deactivate': undefined;
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
// Just the union of all the events params
|
|
95
|
+
export type SocketHardwareModulesEventsParams = SocketHardwareBallSensorDiskThrowerModuleEventsParams &
|
|
96
|
+
SocketHardwareDiskSensorBallShooterModuleEventsParams &
|
|
97
|
+
SocketHardwareFlagModuleEventsParams &
|
|
98
|
+
SocketHardwareRGBModuleEventsParams &
|
|
99
|
+
SocketHardwareSpeedModuleEventsParams &
|
|
100
|
+
SocketHardwareDataSubscriptionEventsParams &
|
|
101
|
+
SocketHardwareLeftStarBackLaserModuleEventsParams &
|
|
102
|
+
SocketHardwareRightStarFrontLaserModuleEventsParams &
|
|
103
|
+
SocketHardwareScreenModuleEventsParams &
|
|
104
|
+
SocketHardwareSteeringWheelModuleEventsParams &
|
|
105
|
+
SocketHardwareSoundModuleEventsParams &
|
|
106
|
+
SocketHardwareEmergencyModuleEventsParams;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
BallSensorDiskThrowerModuleStatus,
|
|
3
|
+
DiskSensorBallShooterModuleStatus,
|
|
4
|
+
EmergencyModuleStatus,
|
|
5
|
+
FlagModuleStatus,
|
|
6
|
+
RGBModuleStatus,
|
|
7
|
+
SpeedModuleStatus,
|
|
8
|
+
StarLaserModuleStatus,
|
|
9
|
+
SteeringWheelModuleStatus,
|
|
10
|
+
} from '../hardware';
|
|
11
|
+
|
|
12
|
+
/** Data that are triggered from Hardware Modules of Kart */
|
|
13
|
+
export type SocketHardwareOnDataEventsParams = {
|
|
14
|
+
'hardware:disk-sensor-ball-shooter:onModuleStatus': DiskSensorBallShooterModuleStatus;
|
|
15
|
+
'hardware:ball-sensor-disk-thrower:onModuleStatus': BallSensorDiskThrowerModuleStatus;
|
|
16
|
+
'hardware:rgb:onModuleStatus': RGBModuleStatus;
|
|
17
|
+
'hardware:flag:onModuleStatus': FlagModuleStatus;
|
|
18
|
+
'hardware:speed:onModuleStatus': SpeedModuleStatus;
|
|
19
|
+
'hardware:left-star-back-laser:onModuleStatus': StarLaserModuleStatus;
|
|
20
|
+
'hardware:right-star-front-laser:onModuleStatus': StarLaserModuleStatus;
|
|
21
|
+
'hardware:steering-wheel:onModuleStatus': SteeringWheelModuleStatus;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
/** Data that are triggered from Hardware Modules of Game Track */
|
|
25
|
+
export type SocketGameTrackHardwareOnDataEventsParams = {
|
|
26
|
+
'hardware:emergency:onModuleStatus': EmergencyModuleStatus;
|
|
27
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { DamageEffectName } from '../damage';
|
|
2
|
+
import type { PowerUp } from '../powerUp';
|
|
3
|
+
|
|
4
|
+
export type SocketPowerUpEventsParams = {
|
|
5
|
+
/** Assign the Powerup, shouldOverride will force the assignation */
|
|
6
|
+
'powerUp:assign': { powerUpId: PowerUp['id']; shouldOverride?: boolean };
|
|
7
|
+
/** Affect the Kart by a Damage */
|
|
8
|
+
'powerUp:damage': { damageName: DamageEffectName };
|
|
9
|
+
/** Trigger the Powerup */
|
|
10
|
+
'powerUp:execute': { powerUpId?: PowerUp['id'] };
|
|
11
|
+
/** Sync PowerUps */
|
|
12
|
+
'powerUps:sync': { powerUps: PowerUp[] };
|
|
13
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export interface SocketGameTrackClientToServerEventsParams {
|
|
2
|
+
'game-track:init': { macAddress: string };
|
|
3
|
+
/** Emergency Button Pressed phisicaly */
|
|
4
|
+
'game-track:emergency:buttonPressed': { macAddress: string };
|
|
5
|
+
/** Emergency Button released phisicaly */
|
|
6
|
+
'game-track:emergency:buttonReleased': { macAddress: string };
|
|
7
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DamageEffectName } from '../../damage';
|
|
2
|
+
import type { SocketInitRaspberryInput, SocketRegisterKartCheckpointInput } from '../inputs';
|
|
3
|
+
|
|
4
|
+
export interface SocketKartClientToServerEventsParams {
|
|
5
|
+
'kart:init': SocketInitRaspberryInput;
|
|
6
|
+
'kart:checkpoint': SocketRegisterKartCheckpointInput;
|
|
7
|
+
/** Activate the damage of a powerUp */
|
|
8
|
+
'kart:damage:sent': { macAddress: string; damageName: DamageEffectName };
|
|
9
|
+
/** The Kart received damage */
|
|
10
|
+
'kart:damage:received': { macAddress: string; damageName: DamageEffectName };
|
|
11
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Game, GameType } from '../../game';
|
|
2
|
+
|
|
3
|
+
export interface SocketWebAppClientToServerEventsParams {
|
|
4
|
+
'karts:authenticate': { authToken: string };
|
|
5
|
+
'karts:list': undefined;
|
|
6
|
+
'karts:tracking:subscribe': { kartGuid: string };
|
|
7
|
+
'karts:tracking:unsubscribe': { kartGuid: string };
|
|
8
|
+
'game-changed:subscribe': { gameId: Game['id']; gameType: GameType };
|
|
9
|
+
'game-changed:unsubscribe': { gameId: Game['id']; gameType: GameType };
|
|
10
|
+
'game-tracks:list': undefined;
|
|
11
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './clientToServer';
|
|
2
|
+
export * from './inputs';
|
|
3
|
+
export * from './serverToClient';
|
|
4
|
+
export * from './SocketHardwareModulesEventsParams';
|
|
5
|
+
export * from './SocketHardwareOnDataEventsParams';
|
|
6
|
+
export * from './SocketPowerUpEventsParams';
|
|
7
|
+
export * from './utils';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Checkpoint } from '../../checkpoint';
|
|
2
|
+
|
|
3
|
+
export type SocketRegisterKartCheckpointInput = {
|
|
4
|
+
/** The macAddress is necessary to avoid extra process in the backend to find the macAddress */
|
|
5
|
+
macAddress: string;
|
|
6
|
+
checkpointAddress: Checkpoint['address'];
|
|
7
|
+
checkpointType: Checkpoint['type'];
|
|
8
|
+
/** Just Request the power-up when there is no a power-up already assigned */
|
|
9
|
+
shouldRequestPowerUp: boolean;
|
|
10
|
+
/** The real time when the event was generated on RPI */
|
|
11
|
+
originTimestampISO: string;
|
|
12
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { GameTrack } from '../../gameTrack';
|
|
2
|
+
import type { Response } from '../../response';
|
|
3
|
+
|
|
4
|
+
export interface SocketGameTrackEventsParams {
|
|
5
|
+
// Response from server (game-track:init)
|
|
6
|
+
'game-track:init:response': Response<GameTrack>;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface SocketGameTrackEventParams {
|
|
10
|
+
'game-track:emergency:activate': undefined;
|
|
11
|
+
'game-track:emergency:deactivate': undefined;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export type SocketGameTrackServerToClientEventsParams = SocketGameTrackEventsParams & SocketGameTrackEventParams;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { Game, GameType } from '../../game';
|
|
2
|
+
import type { GameTrack } from '../../gameTrack';
|
|
3
|
+
import type { Kart } from '../../kart';
|
|
4
|
+
import type { Response } from '../../response';
|
|
5
|
+
import type { SocketPowerUpEventsParams } from '../SocketPowerUpEventsParams';
|
|
6
|
+
|
|
7
|
+
interface BaseGameEventParams {
|
|
8
|
+
gameId: Game['id'];
|
|
9
|
+
gameType: GameType;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
// Add the kart: prefix to the SocketPowerUpEventsParams
|
|
13
|
+
export type SocketKartPowerUpEventsParams = {
|
|
14
|
+
[Key in keyof SocketPowerUpEventsParams as `kart:${Key}`]: SocketPowerUpEventsParams[Key];
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export interface SocketKartEventsParams {
|
|
18
|
+
'kart:updated': { kart: Kart };
|
|
19
|
+
// Response from server
|
|
20
|
+
'kart:init:response': Response<Kart>;
|
|
21
|
+
/** Whenever the Game Track config changed */
|
|
22
|
+
'kart:gameTrack:updated': { gameTrack: GameTrack };
|
|
23
|
+
/** When the physical button of the game track is pressed */
|
|
24
|
+
'kart:gameTrack:emergency:started': undefined;
|
|
25
|
+
/** When the physical button of the game track is released */
|
|
26
|
+
'kart:gameTrack:emergency:stopped': undefined;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export interface SocketGameEventParams {
|
|
30
|
+
/** Kart is selected for a game */
|
|
31
|
+
'kart:game:selected': BaseGameEventParams;
|
|
32
|
+
/** Kart Is eliminated from a game (game is in progress) */
|
|
33
|
+
'kart:game:eliminated': BaseGameEventParams;
|
|
34
|
+
'kart:game:yellow-flag:started': BaseGameEventParams;
|
|
35
|
+
'kart:game:yellow-flag:stopped': BaseGameEventParams;
|
|
36
|
+
'kart:game:red-flag:started': BaseGameEventParams;
|
|
37
|
+
'kart:game:red-flag:stopped': BaseGameEventParams;
|
|
38
|
+
|
|
39
|
+
// Critical Game Events that require the whole game state to be sent
|
|
40
|
+
'kart:game:started': { game: Game };
|
|
41
|
+
'kart:game:finished': { game: Game; isWinner: boolean };
|
|
42
|
+
'kart:game:sync': { game: Game };
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export type SocketKartServerToClientEventsParams = SocketKartEventsParams &
|
|
46
|
+
SocketGameEventParams &
|
|
47
|
+
SocketKartPowerUpEventsParams;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { Game } from '../../game';
|
|
2
|
+
import type { Kart } from '../../kart';
|
|
3
|
+
import type { CheckpointEvent } from '../../kartTracking';
|
|
4
|
+
import type { Response } from '../../response';
|
|
5
|
+
import type { MacAddressGameTrackConnection } from '../inputs';
|
|
6
|
+
import type { SocketHardwareOnDataEventsParams } from '../SocketHardwareOnDataEventsParams';
|
|
7
|
+
|
|
8
|
+
export interface SocketWebAppServerToClientEventsParams {
|
|
9
|
+
'karts:authenticate:response': Response<void>;
|
|
10
|
+
'karts:list:response': Response<Kart[]>;
|
|
11
|
+
'karts:onKartsUpdated': Kart[];
|
|
12
|
+
'karts:onHardwareData': {
|
|
13
|
+
kartGuid: string;
|
|
14
|
+
socketEvent: keyof SocketHardwareOnDataEventsParams;
|
|
15
|
+
payload: SocketHardwareOnDataEventsParams[keyof SocketHardwareOnDataEventsParams];
|
|
16
|
+
};
|
|
17
|
+
'karts:tracking:checkpointEvent': {
|
|
18
|
+
checkpointEvent: CheckpointEvent;
|
|
19
|
+
};
|
|
20
|
+
'game:changed': { game: Game };
|
|
21
|
+
'gameTracks:onGameTrackUpdated': MacAddressGameTrackConnection[];
|
|
22
|
+
'gameTracks:list:response': Response<MacAddressGameTrackConnection[]>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Map the Events Params Types to Event to be used on Socket.io */
|
|
2
|
+
export type EmptyEventParams = () => void;
|
|
3
|
+
export type EventParams<EventParams> = (payload: EventParams) => void;
|
|
4
|
+
//With Extra
|
|
5
|
+
export type EmptyEventParamsWithExtra<Extra> = (params: Extra) => void;
|
|
6
|
+
export type EventParamsWithExtra<EventParams, Extra> = (params: Extra & { payload: EventParams }) => void;
|
|
7
|
+
|
|
8
|
+
export type SocketParamsToEvents<Event, Extra = undefined> = {
|
|
9
|
+
[EventKey in keyof Event]: Event[EventKey] extends undefined
|
|
10
|
+
? Extra extends undefined
|
|
11
|
+
? EmptyEventParams
|
|
12
|
+
: EmptyEventParamsWithExtra<Extra>
|
|
13
|
+
: Extra extends undefined
|
|
14
|
+
? EventParams<Event[EventKey]>
|
|
15
|
+
: EventParamsWithExtra<Event[EventKey], Extra>;
|
|
16
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './SocketParamsToEvents';
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export type SoundName =
|
|
2
|
+
| 'battle_god_activation.mp3'
|
|
3
|
+
| 'battle_laser_activation.mp3'
|
|
4
|
+
| 'battle_laser_damage.mp3'
|
|
5
|
+
| 'battle_pulse_activation.mp3'
|
|
6
|
+
| 'battle_pulse_damage.mp3'
|
|
7
|
+
| 'battle_shield_activation.mp3'
|
|
8
|
+
| 'battle_shot_activation.mp3'
|
|
9
|
+
| 'battle_shot_damage.mp3'
|
|
10
|
+
| 'battle_star_damage.mp3'
|
|
11
|
+
| 'battle_trap_activation.mp3'
|
|
12
|
+
| 'battle_trap_damage.mp3'
|
|
13
|
+
| 'battle_turbo_activation.mp3'
|
|
14
|
+
| 'countdown_3_2_1.mp3'
|
|
15
|
+
| 'emergency_alert.mp3'
|
|
16
|
+
| 'engine_start.mp3'
|
|
17
|
+
| 'final_lap_mario_kart.mp3'
|
|
18
|
+
| 'kart_skiding.mp3'
|
|
19
|
+
| 'pick_coin_x2.mp3'
|
|
20
|
+
| 'power_up_selection.mp3'
|
|
21
|
+
| 'sad_trumpet_loser.mp3'
|
|
22
|
+
| 'system_started.mp3'
|
|
23
|
+
| 'warning_alert_this_is_not_a_test.mp3'
|
|
24
|
+
| 'winner_laugh.mp3';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './SoundName';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type UserOrigin = 'webapp' | 'hardware';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type ArithmeticOperator = '+' | '-' | '*' | '/';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The Value is determined by an arithmetic operator followed by a number.
|
|
5
|
+
*/
|
|
6
|
+
export type SimpleArithmeticString = `${ArithmeticOperator}${number}`;
|
|
7
|
+
|
|
8
|
+
export type KartContextVariable = '$kart.configuredSpeed';
|
|
9
|
+
|
|
10
|
+
export type ContextVariable = KartContextVariable;
|
|
11
|
+
|
|
12
|
+
export type ContextArithmeticString =
|
|
13
|
+
// Example: $kart.configuredSpeed + 1
|
|
14
|
+
`${ContextVariable} ${ArithmeticOperator} ${number}`;
|
|
15
|
+
|
|
16
|
+
// Unión de todos los posibles formatos de expresión
|
|
17
|
+
export type ArithmeticExpression = number | SimpleArithmeticString | ContextArithmeticString;
|
package/tsconfig.json
ADDED