mirror of
https://github.com/zoriya/Bomberman.git
synced 2026-05-29 08:52:06 +00:00
44 lines
1.5 KiB
C++
44 lines
1.5 KiB
C++
//
|
|
// Created by HENRY Benjamin on 02/06/2021.
|
|
// Edited by AUGIER Tom on 02/06/2021.
|
|
//
|
|
|
|
#pragma once
|
|
|
|
#include "Entity/Entity.hpp"
|
|
#include "Component/Collision/CollisionComponent.hpp"
|
|
|
|
namespace BBM {
|
|
class Bonus {
|
|
public:
|
|
//! @param bonus bonus
|
|
//! @param player the entity on which the effect will be applied
|
|
//! @brief Apply bonus effect that allows players to carry one more bomb than before
|
|
static void BombUpBonus(WAL::Entity &player, const WAL::Entity &bonus, CollisionComponent::CollidedAxis axis);
|
|
|
|
//! @param bonus bonus
|
|
//! @param player the entity on which the effect will be applied
|
|
//! @brief Apply bonus effect that expend the explosion range of the bomb
|
|
static void ExplosionRangeBonus(WAL::Entity &player, const WAL::Entity &bonus, CollisionComponent::CollidedAxis axis);
|
|
|
|
//! @param bonus bonus
|
|
//! @param player the entity on which the effect will be applied
|
|
//! @brief Apply bonus effect that allows to run faster
|
|
static void SpeedUpBonus(WAL::Entity &player, const WAL::Entity &bonus, CollisionComponent::CollidedAxis axis);
|
|
|
|
//! @param bonus bonus
|
|
//! @param player the entity on which the effect will be applied
|
|
//! @brief Apply bonus effect that allows to pass trough breakbable walls
|
|
static void NoClipBonus(WAL::Entity &player, const WAL::Entity &bonus, CollisionComponent::CollidedAxis axis);
|
|
|
|
enum BonusType {
|
|
NOTHING,
|
|
BOMBSTOCK,
|
|
SPEEDUP,
|
|
EXPLOSIONINC,
|
|
NOCLIP
|
|
};
|
|
|
|
static BonusType getRandomBonusType();
|
|
};
|
|
} |