revisat balloon_formationc.cpp i credits.cpp

This commit is contained in:
2025-09-23 14:03:07 +02:00
parent 159528adc9
commit 3fafff026b
6 changed files with 200 additions and 200 deletions

View File

@@ -8,270 +8,270 @@
formation: 0
# Dos enemigos BALLOON3 uno a cada extremo
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0
formation: 1
# Dos enemigos BALLOON3 uno a cada cuarto. Ambos van hacia el centro
X3_25, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0
X3_75, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0
X3_25, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0
X3_75, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0
formation: 2
# Cuatro enemigos BALLOON1 uno detrás del otro. A la izquierda y hacia el centro
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 500
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 334
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 167
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.5
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.334
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.167
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.0
formation: 3
# Cuatro enemigos BALLOON1 uno detrás del otro. A la derecha y hacia el centro
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 500
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 334
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 167
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.5
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.334
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.167
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.0
formation: 4
# Tres enemigos BALLOON2. 0, 417, 834. Hacia la derecha
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 334
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 167
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.334
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.167
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0
formation: 5
# Tres enemigos BALLOON2. 50, 75, 1667. Hacia la izquierda
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 334
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 167
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.334
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.167
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0
formation: 6
# Tres enemigos BALLOON2. 0, 0, 0. Hacia la derecha
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 334
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 167
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.334
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.167
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0
formation: 7
# Tres enemigos BALLOON2. 100, 1667, 1667. Hacia la izquierda
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 334
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 167
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.334
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.167
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0
formation: 8
# Seis enemigos BALLOON0. 0, 0, 0, 0, 0, 0. Hacia la derecha
X0_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 834
X0_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 667
X0_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 500
X0_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 334
X0_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 167
X0_0, 5, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0
X0_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.834
X0_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.667
X0_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5
X0_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.334
X0_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.167
X0_0, 5, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0
formation: 9
# Seis enemigos BALLOON0. 100, 1667, 1667, 1667, 1667, 1667. Hacia la izquierda
X0_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 834
X0_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 667
X0_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 500
X0_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 334
X0_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 167
X0_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0
X0_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.834
X0_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.667
X0_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5
X0_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.334
X0_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.167
X0_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0
formation: 10
# Tres enemigos BALLOON3 seguidos desde la izquierda. Hacia la derecha
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 500
X3_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 250
X3_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.5
X3_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.25
X3_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0
formation: 11
# Tres enemigos BALLOON3 seguidos desde la derecha. Hacia la izquierda
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 500
X3_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 250
X3_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.5
X3_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.25
X3_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0
formation: 12
# Seis enemigos BALLOON1 uno detrás del otro. A la izquierda y hacia el centro
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 834
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 667
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 500
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 334
X1_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 167
X1_0, 5, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.834
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.667
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.5
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.334
X1_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.167
X1_0, 5, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.0
formation: 13
# Seis enemigos BALLOON1 uno detrás del otro. A la derecha y hacia el centro
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 834
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 667
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 500
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 334
X1_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 167
X1_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.834
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.667
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.5
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.334
X1_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.167
X1_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.0
formation: 14
# Cinco enemigos BALLOON2. Hacia la derecha. Separados
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 667
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 500
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 334
X2_0, 6, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 167
X2_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.667
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.5
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.334
X2_0, 6, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.167
X2_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0
formation: 15
# Cinco enemigos BALLOON2. Hacia la izquierda. Separados
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 667
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 500
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 334
X2_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 167
X2_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.667
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.5
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.334
X2_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.167
X2_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0
formation: 16
# Cinco enemigos BALLOON2. Hacia la derecha. Juntos
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 667
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 500
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 334
X2_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 167
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.667
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.5
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.334
X2_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.167
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0
formation: 17
# Cinco enemigos BALLOON2. Hacia la izquierda. Juntos
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 667
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 500
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 334
X2_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 167
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.667
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.5
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.334
X2_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.167
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0
formation: 18
# Doce enemigos BALLOON0. Hacia la derecha. Juntos
X0_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1834
X0_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1667
X0_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 25000
X0_0, 50, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1334
X0_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 70
X0_0, 83, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1000
X0_0, 100, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 830
X0_0, 7, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 40
X0_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 500
X0_0, 150, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 20
X0_0, 167, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 10
X0_0, 11, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0
X0_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.834
X0_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.667
X0_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 25.0
X0_0, 50, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.334
X0_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.07
X0_0, 83, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.0
X0_0, 100, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.83
X0_0, 7, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.04
X0_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5
X0_0, 150, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.02
X0_0, 167, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.01
X0_0, 11, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0
formation: 19
# Doce enemigos BALLOON0. Hacia la izquierda. Juntos
X0_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1834
X0_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1667
X0_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 25000
X0_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1334
X0_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 70
X0_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1000
X0_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 830
X0_100, -7, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 40
X0_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 500
X0_100, -9, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 20
X0_100, -10, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 10
X0_100, -11, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0
X0_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.834
X0_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.667
X0_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 25.0
X0_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.334
X0_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.07
X0_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.0
X0_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.83
X0_100, -7, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.04
X0_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5
X0_100, -9, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.02
X0_100, -10, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.01
X0_100, -11, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0
formation: 20
# Cuatro enemigos BALLOON3 seguidos desde la izquierda/derecha. Simétricos
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0
X3_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0
X3_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0
X3_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0
X3_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0
formation: 21
# Diez enemigos BALLOON1 uno detrás del otro. Izquierda/derecha. Simétricos
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 200
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 150
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 100
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 50
X1_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 200
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 150
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 100
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 50
X1_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.2
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.15
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.1
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.05
X1_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.0
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.2
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.15
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.1
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.05
X1_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.0
formation: 22
# Diez enemigos BALLOON2. Hacia la derecha/izquierda. Separados. Simétricos
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 667
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 500
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 334
X2_0, 6, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 167
X2_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 667
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 500
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 334
X2_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 167
X2_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.667
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.5
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.334
X2_0, 6, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.167
X2_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.667
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.5
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.334
X2_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.167
X2_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0
formation: 23
# Diez enemigos BALLOON2. Hacia la derecha. Juntos. Simétricos
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 667
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 500
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 334
X2_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 167
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 667
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 500
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 334
X2_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 167
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.667
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.5
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.334
X2_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.167
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.667
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.5
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.334
X2_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.167
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0
formation: 24
# Treinta enemigos BALLOON0. Del centro hacia los extremos. Juntos. Simétricos
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 83
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 167
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 250
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 334
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 417
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 500
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 584
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 667
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 750
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 834
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 917
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 16700
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 16784
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1167
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 83
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 167
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 250
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 334
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 417
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 500
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 584
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 667
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 750
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 834
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 917
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 16700
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 16784
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1167
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.083
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.167
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.25
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.334
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.417
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.584
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.667
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.75
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.834
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.917
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 16.7
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 16.784
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.167
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.083
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.167
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.25
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.334
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.417
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.584
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.667
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.75
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.834
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.917
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 16.7
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 16.784
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.167
formation: 25
# Treinta enemigos BALLOON0. Del centro hacia adentro. Juntos. Simétricos
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1167
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 16784
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 16700
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 917
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 834
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 750
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 667
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 584
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 500
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 417
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 334
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 250
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 167
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 83
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1167
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 16784
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 16700
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 917
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 834
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 750
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 667
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 584
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 500
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 417
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 334
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 250
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 167
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 83
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.167
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 16.784
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 16.7
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.917
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.834
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.75
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.667
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.584
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.417
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.334
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.25
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.167
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.083
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.167
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 16.784
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 16.7
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.917
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.834
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.75
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.667
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.584
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.417
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.334
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.25
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.167
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.083
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0

View File

@@ -70,7 +70,7 @@ Balloon::Balloon(const Config& config)
default_vy_ = param.balloon.settings.at(INDEX).vel;
sprite_->setRotate(config.creation_counter <= 0);
sprite_->setRotateAmount(vx_ > 0.0F ? 2.0 : -2.0);
sprite_->setRotateAmount(vx_ > 0.0F ? 120.0 : -120.0); // Convert from 2 degrees/frame to 120 degrees/second
break;
}

View File

@@ -77,7 +77,7 @@ class Balloon {
Size size = Size::EXTRALARGE;
float vel_x = VELX_POSITIVE;
float game_tempo = GAME_TEMPO.at(0);
Uint16 creation_counter = 0;
float creation_counter = 0.0f;
SDL_FRect play_area = {.x = 0.0F, .y = 0.0F, .w = 0.0F, .h = 0.0F};
std::shared_ptr<Texture> texture = nullptr;
std::vector<std::string> animation;

View File

@@ -155,7 +155,7 @@ auto BalloonFormations::parseBalloonLine(const std::string& line, const std::map
return std::nullopt;
}
int creation_time = DEFAULT_CREATION_TIME + evaluateExpression(tokens.at(6), variables);
float creation_time = evaluateExpression(tokens.at(6), variables); // Values in formations.txt are already in seconds
return SpawnParams(x + offset, y, vel_x, type, size, creation_time);
} catch (const std::exception&) {
@@ -168,7 +168,7 @@ auto BalloonFormations::evaluateExpression(const std::string& expr, const std::m
// Si es un número directo
if ((std::isdigit(trimmed_expr.at(0)) != 0) || (trimmed_expr.at(0) == '-' && trimmed_expr.length() > 1)) {
return std::stoi(trimmed_expr);
return std::stof(trimmed_expr);
}
// Si es una variable simple
@@ -205,7 +205,7 @@ auto BalloonFormations::evaluateSimpleExpression(const std::string& expr, const
}
// Si no se encuentra operador, intentar como variable o número
return variables.find(expr) != variables.end() ? variables.at(expr) : std::stoi(expr);
return variables.find(expr) != variables.end() ? variables.at(expr) : std::stof(expr);
}
auto BalloonFormations::trim(const std::string& str) -> std::string {

View File

@@ -20,13 +20,13 @@ class BalloonFormations {
float vel_x = 0.0F; // Velocidad inicial en el eje X
Balloon::Type type = Balloon::Type::BALLOON; // Tipo de globo
Balloon::Size size = Balloon::Size::SMALL; // Tamaño de globo
Uint16 creation_counter = 0; // Temporizador para la creación del globo
float creation_counter = 0.0f; // Temporizador para la creación del globo
// Constructor por defecto
SpawnParams() = default;
// Constructor con parámetros
SpawnParams(float x, float y, float vel_x, Balloon::Type type, Balloon::Size size, Uint16 creation_counter)
SpawnParams(float x, float y, float vel_x, Balloon::Type type, Balloon::Size size, float creation_counter)
: x(x),
y(y),
vel_x(vel_x),

View File

@@ -114,7 +114,7 @@ void BalloonManager::deployRandomFormation(int stage) {
.size = balloon.size,
.vel_x = balloon.vel_x,
.game_tempo = balloon_speed_,
.creation_counter = static_cast<Uint16>(creation_time_enabled_ ? balloon.creation_counter : 0)};
.creation_counter = creation_time_enabled_ ? balloon.creation_counter : 0.0f};
createBalloon(config);
}