afegit titol al TITOL
This commit is contained in:
@@ -150,7 +150,10 @@ void Enemic::comportament_pentagon(float delta_time) {
|
||||
// Obtenir límits segurs
|
||||
float min_x, max_x, min_y, max_y;
|
||||
Constants::obtenir_limits_zona_segurs(Defaults::Entities::ENEMY_RADIUS,
|
||||
min_x, max_x, min_y, max_y);
|
||||
min_x,
|
||||
max_x,
|
||||
min_y,
|
||||
max_y);
|
||||
|
||||
// Zigzag: canvi d'angle més freqüent en tocar límits
|
||||
if (new_y >= min_y && new_y <= max_y) {
|
||||
@@ -159,7 +162,7 @@ void Enemic::comportament_pentagon(float delta_time) {
|
||||
// Probabilitat més alta de canvi d'angle
|
||||
if (static_cast<float>(std::rand()) / RAND_MAX < Defaults::Enemies::Pentagon::CANVI_ANGLE_PROB) {
|
||||
float rand_angle = (static_cast<float>(std::rand()) / RAND_MAX) *
|
||||
Defaults::Enemies::Pentagon::CANVI_ANGLE_MAX;
|
||||
Defaults::Enemies::Pentagon::CANVI_ANGLE_MAX;
|
||||
angle_ += (std::rand() % 2 == 0) ? rand_angle : -rand_angle;
|
||||
}
|
||||
}
|
||||
@@ -169,7 +172,7 @@ void Enemic::comportament_pentagon(float delta_time) {
|
||||
} else {
|
||||
if (static_cast<float>(std::rand()) / RAND_MAX < Defaults::Enemies::Pentagon::CANVI_ANGLE_PROB) {
|
||||
float rand_angle = (static_cast<float>(std::rand()) / RAND_MAX) *
|
||||
Defaults::Enemies::Pentagon::CANVI_ANGLE_MAX;
|
||||
Defaults::Enemies::Pentagon::CANVI_ANGLE_MAX;
|
||||
angle_ += (std::rand() % 2 == 0) ? rand_angle : -rand_angle;
|
||||
}
|
||||
}
|
||||
@@ -214,7 +217,10 @@ void Enemic::comportament_quadrat(float delta_time) {
|
||||
// Obtenir límits segurs
|
||||
float min_x, max_x, min_y, max_y;
|
||||
Constants::obtenir_limits_zona_segurs(Defaults::Entities::ENEMY_RADIUS,
|
||||
min_x, max_x, min_y, max_y);
|
||||
min_x,
|
||||
max_x,
|
||||
min_y,
|
||||
max_y);
|
||||
|
||||
// Bounce on walls (simple reflection)
|
||||
if (new_y >= min_y && new_y <= max_y) {
|
||||
@@ -260,7 +266,10 @@ void Enemic::comportament_molinillo(float delta_time) {
|
||||
// Obtenir límits segurs
|
||||
float min_x, max_x, min_y, max_y;
|
||||
Constants::obtenir_limits_zona_segurs(Defaults::Entities::ENEMY_RADIUS,
|
||||
min_x, max_x, min_y, max_y);
|
||||
min_x,
|
||||
max_x,
|
||||
min_y,
|
||||
max_y);
|
||||
|
||||
// Rare angle changes on wall hits
|
||||
if (new_y >= min_y && new_y <= max_y) {
|
||||
@@ -268,7 +277,7 @@ void Enemic::comportament_molinillo(float delta_time) {
|
||||
} else {
|
||||
if (static_cast<float>(std::rand()) / RAND_MAX < Defaults::Enemies::Molinillo::CANVI_ANGLE_PROB) {
|
||||
float rand_angle = (static_cast<float>(std::rand()) / RAND_MAX) *
|
||||
Defaults::Enemies::Molinillo::CANVI_ANGLE_MAX;
|
||||
Defaults::Enemies::Molinillo::CANVI_ANGLE_MAX;
|
||||
angle_ += (std::rand() % 2 == 0) ? rand_angle : -rand_angle;
|
||||
}
|
||||
}
|
||||
@@ -278,7 +287,7 @@ void Enemic::comportament_molinillo(float delta_time) {
|
||||
} else {
|
||||
if (static_cast<float>(std::rand()) / RAND_MAX < Defaults::Enemies::Molinillo::CANVI_ANGLE_PROB) {
|
||||
float rand_angle = (static_cast<float>(std::rand()) / RAND_MAX) *
|
||||
Defaults::Enemies::Molinillo::CANVI_ANGLE_MAX;
|
||||
Defaults::Enemies::Molinillo::CANVI_ANGLE_MAX;
|
||||
angle_ += (std::rand() % 2 == 0) ? rand_angle : -rand_angle;
|
||||
}
|
||||
}
|
||||
@@ -313,17 +322,17 @@ void Enemic::actualitzar_palpitacio(float delta_time) {
|
||||
|
||||
// Randomize parameters
|
||||
float freq_range = Defaults::Enemies::Animation::PALPITACIO_FREQ_MAX -
|
||||
Defaults::Enemies::Animation::PALPITACIO_FREQ_MIN;
|
||||
Defaults::Enemies::Animation::PALPITACIO_FREQ_MIN;
|
||||
animacio_.palpitacio_frequencia = Defaults::Enemies::Animation::PALPITACIO_FREQ_MIN +
|
||||
(static_cast<float>(std::rand()) / RAND_MAX) * freq_range;
|
||||
|
||||
float amp_range = Defaults::Enemies::Animation::PALPITACIO_AMPLITUD_MAX -
|
||||
Defaults::Enemies::Animation::PALPITACIO_AMPLITUD_MIN;
|
||||
Defaults::Enemies::Animation::PALPITACIO_AMPLITUD_MIN;
|
||||
animacio_.palpitacio_amplitud = Defaults::Enemies::Animation::PALPITACIO_AMPLITUD_MIN +
|
||||
(static_cast<float>(std::rand()) / RAND_MAX) * amp_range;
|
||||
|
||||
float dur_range = Defaults::Enemies::Animation::PALPITACIO_DURACIO_MAX -
|
||||
Defaults::Enemies::Animation::PALPITACIO_DURACIO_MIN;
|
||||
Defaults::Enemies::Animation::PALPITACIO_DURACIO_MIN;
|
||||
animacio_.palpitacio_temps_restant = Defaults::Enemies::Animation::PALPITACIO_DURACIO_MIN +
|
||||
(static_cast<float>(std::rand()) / RAND_MAX) * dur_range;
|
||||
}
|
||||
@@ -360,7 +369,7 @@ void Enemic::actualitzar_rotacio_accelerada(float delta_time) {
|
||||
|
||||
// Randomize target speed (multiplier * base)
|
||||
float mult_range = Defaults::Enemies::Animation::ROTACIO_ACCEL_MULTIPLIER_MAX -
|
||||
Defaults::Enemies::Animation::ROTACIO_ACCEL_MULTIPLIER_MIN;
|
||||
Defaults::Enemies::Animation::ROTACIO_ACCEL_MULTIPLIER_MIN;
|
||||
float multiplier = Defaults::Enemies::Animation::ROTACIO_ACCEL_MULTIPLIER_MIN +
|
||||
(static_cast<float>(std::rand()) / RAND_MAX) * mult_range;
|
||||
|
||||
@@ -368,7 +377,7 @@ void Enemic::actualitzar_rotacio_accelerada(float delta_time) {
|
||||
|
||||
// Randomize duration
|
||||
float dur_range = Defaults::Enemies::Animation::ROTACIO_ACCEL_DURACIO_MAX -
|
||||
Defaults::Enemies::Animation::ROTACIO_ACCEL_DURACIO_MIN;
|
||||
Defaults::Enemies::Animation::ROTACIO_ACCEL_DURACIO_MIN;
|
||||
animacio_.drotacio_duracio = Defaults::Enemies::Animation::ROTACIO_ACCEL_DURACIO_MIN +
|
||||
(static_cast<float>(std::rand()) / RAND_MAX) * dur_range;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user