feat(entities): migrar la configuració dels 3 enemics a data/entities/<type>/*.yaml
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
#include "core/locale/locale.hpp"
|
||||
#include "core/system/scene_context.hpp"
|
||||
#include "core/system/service_menu.hpp"
|
||||
#include "game/entities/enemy_registry.hpp"
|
||||
#include "game/entities/player_config.hpp"
|
||||
#include "game/stage_system/stage_loader.hpp"
|
||||
#include "game/systems/collision_system.hpp"
|
||||
@@ -64,6 +65,13 @@ GameScene::GameScene(SDLManager& sdl, SceneContext& context)
|
||||
std::exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
// Carregar les configuracions dels 3 enemics. Sense fallback: si falla,
|
||||
// abortem (els enemics no es poden construir sense els seus paràmetres).
|
||||
if (!EnemyRegistry::loadAll()) {
|
||||
std::cerr << "[GameScene] FATAL: no s'han pogut carregar els enemics YAML\n";
|
||||
std::exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
// Inicialitzar naves: P1 amb el shape del YAML, P2 amb override visual.
|
||||
ships_[0] = Ship(sdl.getRenderer(), *player_config); // Jugador 1: nau estàndard
|
||||
ships_[1] = Ship(sdl.getRenderer(), *player_config, "ship2.shp"); // Jugador 2: interceptor amb ales
|
||||
@@ -773,7 +781,7 @@ void GameScene::tocado(uint8_t player_id) {
|
||||
0.0F, // sense herència angular
|
||||
0.0F, // sin herencia visual
|
||||
Defaults::Sound::EXPLOSION2,
|
||||
Defaults::Palette::SHIP,
|
||||
ships_[player_id].getConfig().colors.normal,
|
||||
Defaults::Physics::Debris::ENEMY_LIFETIME,
|
||||
Defaults::Physics::Debris::ENEMY_FRICTION,
|
||||
Defaults::Physics::Debris::ENEMY_SEGMENT_MULTIPLIER);
|
||||
|
||||
Reference in New Issue
Block a user