0
0
mirror of https://github.com/Nimac0/SDL_Minigame synced 2026-01-12 07:53:43 +00:00

powerups work + sprites for each powerup added

This commit is contained in:
Nimac0 2024-01-30 15:29:02 +01:00
parent c49ce18ed0
commit b814fa3298
7 changed files with 10 additions and 23 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -8,7 +8,7 @@ using Team = std::size_t;
constexpr std::size_t MAX_COMPONENTS = 32;
constexpr std::size_t MAX_GROUPS = 32;
constexpr std::size_t MAX_STATS = 32;
constexpr std::size_t MAX_TEAMS = 8; //
constexpr std::size_t MAX_TEAMS = 8;
constexpr int SCREEN_SIZE_HEIGHT = 640;
constexpr int SCREEN_SIZE_WIDTH = 800;
@ -22,7 +22,7 @@ constexpr int MAP_SIZE_Y = 20;
constexpr int SPAWN_ATTEMPTS = 30;
constexpr int BUFF_DURATION = 5000;
constexpr int BUFF_DURATION = 6000;
constexpr int BUFF_VALUE = 1;

View File

@ -17,8 +17,8 @@ public:
std::map<PowerupType, std::string> powerupDictionary = {
{PowerupType::HEART, "assets/heart.png"},
{PowerupType::WALKINGSPEED, "assets/heart.png"},
{PowerupType::SHOOTINGSPEED, "assets/heart.png"}
{PowerupType::HEART, "assets/heart_powerup.png"},
{PowerupType::WALKINGSPEED, "assets/movement_speed_powerup.png"},
{PowerupType::SHOOTINGSPEED, "assets/atk_speed_powerup.png"}
};
};

View File

@ -75,6 +75,5 @@ void KeyboardController::update()
void KeyboardController::modifyAtkSpeed(int8_t modifier)
{
this->fireCooldown -= modifier * 500;
std::cout << "curr fire cooldown: " << this->fireCooldown << std::endl;
this->fireCooldown -= modifier * 400;
}

View File

@ -34,7 +34,6 @@ void PowerupComponent::update()
{},
true)) != nullptr)
{
std::cout << "collided with powerup" << std::endl;
(this->*pickupFunc)(player);
this->entity->destroy();
}
@ -42,7 +41,8 @@ void PowerupComponent::update()
void PowerupComponent::heartEffect(Entity* player)
{
player->getComponent<HealthComponent>().modifyHealth(1);
if(player->getComponent<HealthComponent>().getHealth() < 5)
player->getComponent<HealthComponent>().modifyHealth(1);
}
void PowerupComponent::movementSpeedEffect(Entity* player)

View File

@ -10,18 +10,6 @@ void StatEffectsComponent::init()
void StatEffectsComponent::update()
{
/*int i = 0;
std::transform(this->buffs.begin(), this->buffs.end(), this->buffs.begin(),
[this, &i](uint8_t statDuration) {
i++;
uint8_t newDur = statDuration - 1;
if (statDuration > 0 && newDur == 0) {
if (statDuration > 1)
std::cout << (int) statDuration << (int) newDur << std::endl;
this->modifyStatValue((Stats)i, BUFF_VALUE * -1);
}
return newDur;
});*/
for (int i = 0; i < MAX_STATS; i++)
{
if (this->buffs.at(i) == 0) continue;
@ -39,7 +27,7 @@ void StatEffectsComponent::modifyStatDur(Stats stat, uint8_t duration)
this->buffs.at((uint8_t)stat) += duration;
}
void StatEffectsComponent::modifyStatValue(Stats stat, int modifier)
void StatEffectsComponent::modifyStatValue(Stats stat, int modifier) //modifier is basically there so the modifyfuncs in the components know if stats should be increased or decreased
{
switch (stat)
{

View File

@ -81,5 +81,5 @@ void TransformComponent::update()
void TransformComponent::modifySpeed(int8_t modifier)
{
this->speed += modifier * 2;
this->speed += modifier;
}