mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Modified how most abilites that could scale were scaled.
This commit is contained in:
parent
96b4c67419
commit
490915d384
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 90,
|
base_damage: 90,
|
||||||
max_damage: 110,
|
|
||||||
damage_increase: 10,
|
damage_increase: 10,
|
||||||
knockback: 8.0,
|
knockback: 8.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 160,
|
|
||||||
damage_increase: 15,
|
damage_increase: 15,
|
||||||
knockback: 12.0,
|
knockback: 12.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -32,5 +30,6 @@ ComboMelee(
|
|||||||
energy_increase: 30,
|
energy_increase: 30,
|
||||||
speed_increase: 0.075,
|
speed_increase: 0.075,
|
||||||
max_speed_increase: 1.6,
|
max_speed_increase: 1.6,
|
||||||
|
scales_from_combo: 2,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -1,10 +1,10 @@
|
|||||||
ChargedRanged(
|
ChargedRanged(
|
||||||
energy_cost: 1,
|
energy_cost: 1,
|
||||||
energy_drain: 300,
|
energy_drain: 300,
|
||||||
initial_damage: 50,
|
initial_damage: 10,
|
||||||
max_damage: 250,
|
scaled_damage: 240,
|
||||||
initial_knockback: 10.0,
|
initial_knockback: 10.0,
|
||||||
max_knockback: 20.0,
|
scaled_knockback: 10.0,
|
||||||
speed: 1.0,
|
speed: 1.0,
|
||||||
buildup_duration: 100,
|
buildup_duration: 100,
|
||||||
charge_duration: 1500,
|
charge_duration: 1500,
|
||||||
@ -13,5 +13,5 @@ ChargedRanged(
|
|||||||
projectile_light: None,
|
projectile_light: None,
|
||||||
projectile_gravity: Some(Gravity(0.2)),
|
projectile_gravity: Some(Gravity(0.2)),
|
||||||
initial_projectile_speed: 100.0,
|
initial_projectile_speed: 100.0,
|
||||||
max_projectile_speed: 500.0,
|
scaled_projectile_speed: 400.0,
|
||||||
)
|
)
|
||||||
|
@ -2,9 +2,9 @@ ChargedMelee(
|
|||||||
energy_cost: 1,
|
energy_cost: 1,
|
||||||
energy_drain: 300,
|
energy_drain: 300,
|
||||||
initial_damage: 10,
|
initial_damage: 10,
|
||||||
max_damage: 170,
|
scaled_damage: 160,
|
||||||
initial_knockback: 10.0,
|
initial_knockback: 10.0,
|
||||||
max_knockback: 60.0,
|
scaled_knockback: 50.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
max_angle: 30.0,
|
max_angle: 30.0,
|
||||||
speed: 1.0,
|
speed: 1.0,
|
||||||
|
@ -2,7 +2,6 @@ ComboMelee(
|
|||||||
stage_data: [(
|
stage_data: [(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 150,
|
|
||||||
damage_increase: 10,
|
damage_increase: 10,
|
||||||
knockback: 0.0,
|
knockback: 0.0,
|
||||||
range: 4.5,
|
range: 4.5,
|
||||||
@ -17,5 +16,6 @@ ComboMelee(
|
|||||||
energy_increase: 50,
|
energy_increase: 50,
|
||||||
speed_increase: 0.05,
|
speed_increase: 0.05,
|
||||||
max_speed_increase: 1.4,
|
max_speed_increase: 1.4,
|
||||||
|
scales_from_combo: 2,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -1,9 +1,9 @@
|
|||||||
DashMelee(
|
DashMelee(
|
||||||
energy_cost: 100,
|
energy_cost: 100,
|
||||||
base_damage: 80,
|
base_damage: 80,
|
||||||
max_damage: 240,
|
scaled_damage: 160,
|
||||||
base_knockback: 8.0,
|
base_knockback: 8.0,
|
||||||
max_knockback: 15.0,
|
scaled_knockback: 7.0,
|
||||||
range: 5.0,
|
range: 5.0,
|
||||||
angle: 45.0,
|
angle: 45.0,
|
||||||
energy_drain: 600,
|
energy_drain: 600,
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 10,
|
damage_increase: 10,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 4.0,
|
range: 4.0,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 80,
|
base_damage: 80,
|
||||||
max_damage: 110,
|
|
||||||
damage_increase: 15,
|
damage_increase: 15,
|
||||||
knockback: 12.0,
|
knockback: 12.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 170,
|
|
||||||
damage_increase: 20,
|
damage_increase: 20,
|
||||||
knockback: 14.0,
|
knockback: 14.0,
|
||||||
range: 6.0,
|
range: 6.0,
|
||||||
@ -45,5 +42,6 @@ ComboMelee(
|
|||||||
energy_increase: 25,
|
energy_increase: 25,
|
||||||
speed_increase: 0.1,
|
speed_increase: 0.1,
|
||||||
max_speed_increase: 1.8,
|
max_speed_increase: 1.8,
|
||||||
|
scales_from_combo: 2,
|
||||||
is_interruptible: true,
|
is_interruptible: true,
|
||||||
)
|
)
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 100,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -19,5 +18,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 120,
|
base_damage: 120,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 80,
|
base_damage: 80,
|
||||||
max_damage: 80,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 130,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -45,5 +42,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -1,9 +1,9 @@
|
|||||||
DashMelee(
|
DashMelee(
|
||||||
energy_cost: 0,
|
energy_cost: 0,
|
||||||
base_damage: 150,
|
base_damage: 150,
|
||||||
max_damage: 260,
|
scaled_damage: 110,
|
||||||
base_knockback: 8.0,
|
base_knockback: 8.0,
|
||||||
max_knockback: 25.0,
|
scaled_knockback: 17.0,
|
||||||
range: 5.0,
|
range: 5.0,
|
||||||
angle: 45.0,
|
angle: 45.0,
|
||||||
energy_drain: 0,
|
energy_drain: 0,
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 100,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 4.5,
|
range: 4.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 80,
|
base_damage: 80,
|
||||||
max_damage: 80,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 130,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -45,5 +42,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
DashMelee(
|
DashMelee(
|
||||||
energy_cost: 0,
|
energy_cost: 0,
|
||||||
base_damage: 30,
|
base_damage: 30,
|
||||||
max_damage: 40,
|
scaled_damage: 10,
|
||||||
base_knockback: 8.0,
|
base_knockback: 8.0,
|
||||||
max_knockback: 15.0,
|
scaled_knockback: 7.0,
|
||||||
range: 2.0,
|
range: 2.0,
|
||||||
angle: 45.0,
|
angle: 45.0,
|
||||||
energy_drain: 0,
|
energy_drain: 0,
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 100,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 2.0,
|
knockback: 2.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 130,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 2.0,
|
knockback: 2.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 130,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 2.0,
|
knockback: 2.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -42,7 +39,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 4,
|
stage: 4,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 130,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 8.0,
|
knockback: 8.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -58,5 +54,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 60,
|
base_damage: 60,
|
||||||
max_damage: 60,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -19,5 +18,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -2,9 +2,9 @@ ChargedMelee(
|
|||||||
energy_cost: 0,
|
energy_cost: 0,
|
||||||
energy_drain: 0,
|
energy_drain: 0,
|
||||||
initial_damage: 160,
|
initial_damage: 160,
|
||||||
max_damage: 200,
|
scaled_damage: 40,
|
||||||
initial_knockback: 10.0,
|
initial_knockback: 10.0,
|
||||||
max_knockback: 30.0,
|
scaled_knockback: 20.0,
|
||||||
range: 6.0,
|
range: 6.0,
|
||||||
max_angle: 90.0,
|
max_angle: 90.0,
|
||||||
speed: 1.0,
|
speed: 1.0,
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 100,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 120,
|
base_damage: 120,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 130,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -45,5 +42,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 120,
|
base_damage: 120,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -19,5 +18,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 120,
|
base_damage: 120,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 120,
|
base_damage: 120,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 120,
|
base_damage: 120,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -45,5 +42,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
DashMelee(
|
DashMelee(
|
||||||
energy_cost: 0,
|
energy_cost: 0,
|
||||||
base_damage: 150,
|
base_damage: 150,
|
||||||
max_damage: 190,
|
scaled_damage: 40,
|
||||||
base_knockback: 8.0,
|
base_knockback: 8.0,
|
||||||
max_knockback: 25.0,
|
scaled_knockback: 17.0,
|
||||||
range: 4.0,
|
range: 4.0,
|
||||||
angle: 45.0,
|
angle: 45.0,
|
||||||
energy_drain: 0,
|
energy_drain: 0,
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 100,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 80,
|
base_damage: 80,
|
||||||
max_damage: 80,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -32,5 +30,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 100,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 8.0,
|
knockback: 8.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 80,
|
base_damage: 80,
|
||||||
max_damage: 80,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 8.0,
|
knockback: 8.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -32,5 +30,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
DashMelee(
|
DashMelee(
|
||||||
energy_cost: 0,
|
energy_cost: 0,
|
||||||
base_damage: 130,
|
base_damage: 130,
|
||||||
max_damage: 150,
|
scaled_damage: 20,
|
||||||
base_knockback: 8.0,
|
base_knockback: 8.0,
|
||||||
max_knockback: 15.0,
|
scaled_knockback: 7.0,
|
||||||
range: 2.0,
|
range: 2.0,
|
||||||
angle: 45.0,
|
angle: 45.0,
|
||||||
energy_drain: 0,
|
energy_drain: 0,
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 150,
|
base_damage: 150,
|
||||||
max_damage: 150,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 150,
|
base_damage: 150,
|
||||||
max_damage: 150,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 150,
|
base_damage: 150,
|
||||||
max_damage: 150,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -45,5 +42,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 30,
|
base_damage: 30,
|
||||||
max_damage: 30,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
@ -19,5 +18,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 150,
|
base_damage: 150,
|
||||||
max_damage: 150,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 7.5,
|
range: 7.5,
|
||||||
@ -19,5 +18,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 170,
|
base_damage: 170,
|
||||||
max_damage: 170,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 7.5,
|
range: 7.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 190,
|
base_damage: 190,
|
||||||
max_damage: 190,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 5.5,
|
range: 5.5,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 230,
|
base_damage: 230,
|
||||||
max_damage: 230,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 5.5,
|
range: 5.5,
|
||||||
@ -45,5 +42,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
||||||
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 150,
|
base_damage: 150,
|
||||||
max_damage: 150,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 5.0,
|
knockback: 5.0,
|
||||||
range: 5.5,
|
range: 5.5,
|
||||||
@ -19,5 +18,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
@ -3,7 +3,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 170,
|
base_damage: 170,
|
||||||
max_damage: 170,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 4.5,
|
range: 4.5,
|
||||||
@ -16,7 +15,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 2,
|
stage: 2,
|
||||||
base_damage: 190,
|
base_damage: 190,
|
||||||
max_damage: 190,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 4.0,
|
range: 4.0,
|
||||||
@ -29,7 +27,6 @@ ComboMelee(
|
|||||||
(
|
(
|
||||||
stage: 3,
|
stage: 3,
|
||||||
base_damage: 230,
|
base_damage: 230,
|
||||||
max_damage: 230,
|
|
||||||
damage_increase: 0,
|
damage_increase: 0,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 4.0,
|
range: 4.0,
|
||||||
@ -45,5 +42,6 @@ ComboMelee(
|
|||||||
energy_increase: 0,
|
energy_increase: 0,
|
||||||
speed_increase: 0.0,
|
speed_increase: 0.0,
|
||||||
max_speed_increase: 1.0,
|
max_speed_increase: 1.0,
|
||||||
|
scales_from_combo: 0,
|
||||||
is_interruptible: false,
|
is_interruptible: false,
|
||||||
)
|
)
|
||||||
|
@ -49,7 +49,7 @@ impl From<&CharacterState> for CharacterAbilityType {
|
|||||||
CharacterState::SpinMelee(data) => Self::SpinMelee(data.stage_section),
|
CharacterState::SpinMelee(data) => Self::SpinMelee(data.stage_section),
|
||||||
CharacterState::ChargedMelee(data) => Self::ChargedMelee(data.stage_section),
|
CharacterState::ChargedMelee(data) => Self::ChargedMelee(data.stage_section),
|
||||||
CharacterState::ChargedRanged(_) => Self::ChargedRanged,
|
CharacterState::ChargedRanged(_) => Self::ChargedRanged,
|
||||||
CharacterState::Shockwave(_) => Self::ChargedRanged,
|
CharacterState::Shockwave(_) => Self::Shockwave,
|
||||||
CharacterState::BasicBeam(_) => Self::BasicBeam,
|
CharacterState::BasicBeam(_) => Self::BasicBeam,
|
||||||
CharacterState::RepeaterRanged(_) => Self::RepeaterRanged,
|
CharacterState::RepeaterRanged(_) => Self::RepeaterRanged,
|
||||||
_ => Self::BasicMelee,
|
_ => Self::BasicMelee,
|
||||||
@ -101,9 +101,9 @@ pub enum CharacterAbility {
|
|||||||
DashMelee {
|
DashMelee {
|
||||||
energy_cost: u32,
|
energy_cost: u32,
|
||||||
base_damage: u32,
|
base_damage: u32,
|
||||||
max_damage: u32,
|
scaled_damage: u32,
|
||||||
base_knockback: f32,
|
base_knockback: f32,
|
||||||
max_knockback: f32,
|
scaled_knockback: f32,
|
||||||
range: f32,
|
range: f32,
|
||||||
angle: f32,
|
angle: f32,
|
||||||
energy_drain: u32,
|
energy_drain: u32,
|
||||||
@ -130,6 +130,7 @@ pub enum CharacterAbility {
|
|||||||
energy_increase: u32,
|
energy_increase: u32,
|
||||||
speed_increase: f32,
|
speed_increase: f32,
|
||||||
max_speed_increase: f32,
|
max_speed_increase: f32,
|
||||||
|
scales_from_combo: u32,
|
||||||
is_interruptible: bool,
|
is_interruptible: bool,
|
||||||
},
|
},
|
||||||
LeapMelee {
|
LeapMelee {
|
||||||
@ -163,9 +164,9 @@ pub enum CharacterAbility {
|
|||||||
energy_cost: u32,
|
energy_cost: u32,
|
||||||
energy_drain: u32,
|
energy_drain: u32,
|
||||||
initial_damage: u32,
|
initial_damage: u32,
|
||||||
max_damage: u32,
|
scaled_damage: u32,
|
||||||
initial_knockback: f32,
|
initial_knockback: f32,
|
||||||
max_knockback: f32,
|
scaled_knockback: f32,
|
||||||
range: f32,
|
range: f32,
|
||||||
max_angle: f32,
|
max_angle: f32,
|
||||||
speed: f32,
|
speed: f32,
|
||||||
@ -178,9 +179,9 @@ pub enum CharacterAbility {
|
|||||||
energy_cost: u32,
|
energy_cost: u32,
|
||||||
energy_drain: u32,
|
energy_drain: u32,
|
||||||
initial_damage: u32,
|
initial_damage: u32,
|
||||||
max_damage: u32,
|
scaled_damage: u32,
|
||||||
initial_knockback: f32,
|
initial_knockback: f32,
|
||||||
max_knockback: f32,
|
scaled_knockback: f32,
|
||||||
speed: f32,
|
speed: f32,
|
||||||
buildup_duration: u64,
|
buildup_duration: u64,
|
||||||
charge_duration: u64,
|
charge_duration: u64,
|
||||||
@ -189,7 +190,7 @@ pub enum CharacterAbility {
|
|||||||
projectile_light: Option<LightEmitter>,
|
projectile_light: Option<LightEmitter>,
|
||||||
projectile_gravity: Option<Gravity>,
|
projectile_gravity: Option<Gravity>,
|
||||||
initial_projectile_speed: f32,
|
initial_projectile_speed: f32,
|
||||||
max_projectile_speed: f32,
|
scaled_projectile_speed: f32,
|
||||||
},
|
},
|
||||||
Shockwave {
|
Shockwave {
|
||||||
energy_cost: u32,
|
energy_cost: u32,
|
||||||
@ -362,14 +363,14 @@ impl CharacterAbility {
|
|||||||
},
|
},
|
||||||
DashMelee {
|
DashMelee {
|
||||||
ref mut base_damage,
|
ref mut base_damage,
|
||||||
ref mut max_damage,
|
ref mut scaled_damage,
|
||||||
ref mut buildup_duration,
|
ref mut buildup_duration,
|
||||||
ref mut swing_duration,
|
ref mut swing_duration,
|
||||||
ref mut recover_duration,
|
ref mut recover_duration,
|
||||||
..
|
..
|
||||||
} => {
|
} => {
|
||||||
*base_damage = (*base_damage as f32 * power) as u32;
|
*base_damage = (*base_damage as f32 * power) as u32;
|
||||||
*max_damage = (*max_damage as f32 * power) as u32;
|
*scaled_damage = (*scaled_damage as f32 * power) as u32;
|
||||||
*buildup_duration = (*buildup_duration as f32 / speed) as u64;
|
*buildup_duration = (*buildup_duration as f32 / speed) as u64;
|
||||||
*swing_duration = (*swing_duration as f32 / speed) as u64;
|
*swing_duration = (*swing_duration as f32 / speed) as u64;
|
||||||
*recover_duration = (*recover_duration as f32 / speed) as u64;
|
*recover_duration = (*recover_duration as f32 / speed) as u64;
|
||||||
@ -421,7 +422,7 @@ impl CharacterAbility {
|
|||||||
},
|
},
|
||||||
ChargedMelee {
|
ChargedMelee {
|
||||||
ref mut initial_damage,
|
ref mut initial_damage,
|
||||||
ref mut max_damage,
|
ref mut scaled_damage,
|
||||||
speed: ref mut ability_speed,
|
speed: ref mut ability_speed,
|
||||||
ref mut charge_duration,
|
ref mut charge_duration,
|
||||||
ref mut swing_duration,
|
ref mut swing_duration,
|
||||||
@ -429,7 +430,7 @@ impl CharacterAbility {
|
|||||||
..
|
..
|
||||||
} => {
|
} => {
|
||||||
*initial_damage = (*initial_damage as f32 * power) as u32;
|
*initial_damage = (*initial_damage as f32 * power) as u32;
|
||||||
*max_damage = (*max_damage as f32 * power) as u32;
|
*scaled_damage = (*scaled_damage as f32 * power) as u32;
|
||||||
*ability_speed *= speed;
|
*ability_speed *= speed;
|
||||||
*charge_duration = (*charge_duration as f32 / speed) as u64;
|
*charge_duration = (*charge_duration as f32 / speed) as u64;
|
||||||
*swing_duration = (*swing_duration as f32 / speed) as u64;
|
*swing_duration = (*swing_duration as f32 / speed) as u64;
|
||||||
@ -437,7 +438,7 @@ impl CharacterAbility {
|
|||||||
},
|
},
|
||||||
ChargedRanged {
|
ChargedRanged {
|
||||||
ref mut initial_damage,
|
ref mut initial_damage,
|
||||||
ref mut max_damage,
|
ref mut scaled_damage,
|
||||||
speed: ref mut ability_speed,
|
speed: ref mut ability_speed,
|
||||||
ref mut buildup_duration,
|
ref mut buildup_duration,
|
||||||
ref mut charge_duration,
|
ref mut charge_duration,
|
||||||
@ -445,7 +446,7 @@ impl CharacterAbility {
|
|||||||
..
|
..
|
||||||
} => {
|
} => {
|
||||||
*initial_damage = (*initial_damage as f32 * power) as u32;
|
*initial_damage = (*initial_damage as f32 * power) as u32;
|
||||||
*max_damage = (*max_damage as f32 * power) as u32;
|
*scaled_damage = (*scaled_damage as f32 * power) as u32;
|
||||||
*ability_speed *= speed;
|
*ability_speed *= speed;
|
||||||
*buildup_duration = (*buildup_duration as f32 / speed) as u64;
|
*buildup_duration = (*buildup_duration as f32 / speed) as u64;
|
||||||
*charge_duration = (*charge_duration as f32 / speed) as u64;
|
*charge_duration = (*charge_duration as f32 / speed) as u64;
|
||||||
@ -654,9 +655,9 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
CharacterAbility::DashMelee {
|
CharacterAbility::DashMelee {
|
||||||
energy_cost: _,
|
energy_cost: _,
|
||||||
base_damage,
|
base_damage,
|
||||||
max_damage,
|
scaled_damage,
|
||||||
base_knockback,
|
base_knockback,
|
||||||
max_knockback,
|
scaled_knockback,
|
||||||
range,
|
range,
|
||||||
angle,
|
angle,
|
||||||
energy_drain,
|
energy_drain,
|
||||||
@ -670,9 +671,9 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
} => CharacterState::DashMelee(dash_melee::Data {
|
} => CharacterState::DashMelee(dash_melee::Data {
|
||||||
static_data: dash_melee::StaticData {
|
static_data: dash_melee::StaticData {
|
||||||
base_damage: *base_damage,
|
base_damage: *base_damage,
|
||||||
max_damage: *max_damage,
|
scaled_damage: *scaled_damage,
|
||||||
base_knockback: *base_knockback,
|
base_knockback: *base_knockback,
|
||||||
max_knockback: *max_knockback,
|
scaled_knockback: *scaled_knockback,
|
||||||
range: *range,
|
range: *range,
|
||||||
angle: *angle,
|
angle: *angle,
|
||||||
energy_drain: *energy_drain,
|
energy_drain: *energy_drain,
|
||||||
@ -718,6 +719,7 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
energy_increase,
|
energy_increase,
|
||||||
speed_increase,
|
speed_increase,
|
||||||
max_speed_increase,
|
max_speed_increase,
|
||||||
|
scales_from_combo,
|
||||||
is_interruptible,
|
is_interruptible,
|
||||||
} => CharacterState::ComboMelee(combo_melee::Data {
|
} => CharacterState::ComboMelee(combo_melee::Data {
|
||||||
static_data: combo_melee::StaticData {
|
static_data: combo_melee::StaticData {
|
||||||
@ -728,6 +730,7 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
energy_increase: *energy_increase,
|
energy_increase: *energy_increase,
|
||||||
speed_increase: 1.0 - *speed_increase,
|
speed_increase: 1.0 - *speed_increase,
|
||||||
max_speed_increase: *max_speed_increase - 1.0,
|
max_speed_increase: *max_speed_increase - 1.0,
|
||||||
|
scales_from_combo: *scales_from_combo,
|
||||||
is_interruptible: *is_interruptible,
|
is_interruptible: *is_interruptible,
|
||||||
ability_key: key,
|
ability_key: key,
|
||||||
},
|
},
|
||||||
@ -805,9 +808,9 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
energy_cost,
|
energy_cost,
|
||||||
energy_drain,
|
energy_drain,
|
||||||
initial_damage,
|
initial_damage,
|
||||||
max_damage,
|
scaled_damage,
|
||||||
initial_knockback,
|
initial_knockback,
|
||||||
max_knockback,
|
scaled_knockback,
|
||||||
speed,
|
speed,
|
||||||
charge_duration,
|
charge_duration,
|
||||||
swing_duration,
|
swing_duration,
|
||||||
@ -820,9 +823,9 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
energy_cost: *energy_cost,
|
energy_cost: *energy_cost,
|
||||||
energy_drain: *energy_drain,
|
energy_drain: *energy_drain,
|
||||||
initial_damage: *initial_damage,
|
initial_damage: *initial_damage,
|
||||||
max_damage: *max_damage,
|
scaled_damage: *scaled_damage,
|
||||||
initial_knockback: *initial_knockback,
|
initial_knockback: *initial_knockback,
|
||||||
max_knockback: *max_knockback,
|
scaled_knockback: *scaled_knockback,
|
||||||
speed: *speed,
|
speed: *speed,
|
||||||
range: *range,
|
range: *range,
|
||||||
max_angle: *max_angle,
|
max_angle: *max_angle,
|
||||||
@ -841,9 +844,9 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
energy_cost: _,
|
energy_cost: _,
|
||||||
energy_drain,
|
energy_drain,
|
||||||
initial_damage,
|
initial_damage,
|
||||||
max_damage,
|
scaled_damage,
|
||||||
initial_knockback,
|
initial_knockback,
|
||||||
max_knockback,
|
scaled_knockback,
|
||||||
speed,
|
speed,
|
||||||
buildup_duration,
|
buildup_duration,
|
||||||
charge_duration,
|
charge_duration,
|
||||||
@ -852,7 +855,7 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
projectile_light,
|
projectile_light,
|
||||||
projectile_gravity,
|
projectile_gravity,
|
||||||
initial_projectile_speed,
|
initial_projectile_speed,
|
||||||
max_projectile_speed,
|
scaled_projectile_speed,
|
||||||
} => CharacterState::ChargedRanged(charged_ranged::Data {
|
} => CharacterState::ChargedRanged(charged_ranged::Data {
|
||||||
static_data: charged_ranged::StaticData {
|
static_data: charged_ranged::StaticData {
|
||||||
buildup_duration: Duration::from_millis(*buildup_duration),
|
buildup_duration: Duration::from_millis(*buildup_duration),
|
||||||
@ -860,15 +863,15 @@ impl From<(&CharacterAbility, AbilityKey)> for CharacterState {
|
|||||||
recover_duration: Duration::from_millis(*recover_duration),
|
recover_duration: Duration::from_millis(*recover_duration),
|
||||||
energy_drain: *energy_drain,
|
energy_drain: *energy_drain,
|
||||||
initial_damage: *initial_damage,
|
initial_damage: *initial_damage,
|
||||||
max_damage: *max_damage,
|
scaled_damage: *scaled_damage,
|
||||||
speed: *speed,
|
speed: *speed,
|
||||||
initial_knockback: *initial_knockback,
|
initial_knockback: *initial_knockback,
|
||||||
max_knockback: *max_knockback,
|
scaled_knockback: *scaled_knockback,
|
||||||
projectile_body: *projectile_body,
|
projectile_body: *projectile_body,
|
||||||
projectile_light: *projectile_light,
|
projectile_light: *projectile_light,
|
||||||
projectile_gravity: *projectile_gravity,
|
projectile_gravity: *projectile_gravity,
|
||||||
initial_projectile_speed: *initial_projectile_speed,
|
initial_projectile_speed: *initial_projectile_speed,
|
||||||
max_projectile_speed: *max_projectile_speed,
|
scaled_projectile_speed: *scaled_projectile_speed,
|
||||||
ability_key: key,
|
ability_key: key,
|
||||||
},
|
},
|
||||||
timer: Duration::default(),
|
timer: Duration::default(),
|
||||||
|
@ -18,12 +18,12 @@ pub struct StaticData {
|
|||||||
pub energy_cost: u32,
|
pub energy_cost: u32,
|
||||||
/// How much damage is dealt with no charge
|
/// How much damage is dealt with no charge
|
||||||
pub initial_damage: u32,
|
pub initial_damage: u32,
|
||||||
/// How much damage is dealt with max charge
|
/// How much the damage is scaled by
|
||||||
pub max_damage: u32,
|
pub scaled_damage: u32,
|
||||||
/// How much knockback there is with no charge
|
/// How much knockback there is with no charge
|
||||||
pub initial_knockback: f32,
|
pub initial_knockback: f32,
|
||||||
/// How much knockback there is at max charge
|
/// How much the knockback is scaled by
|
||||||
pub max_knockback: f32,
|
pub scaled_knockback: f32,
|
||||||
/// Max range
|
/// Max range
|
||||||
pub range: f32,
|
pub range: f32,
|
||||||
/// Max angle (45.0 will give you a 90.0 angle window)
|
/// Max angle (45.0 will give you a 90.0 angle window)
|
||||||
@ -148,17 +148,13 @@ impl CharacterBehavior for Data {
|
|||||||
exhausted: true,
|
exhausted: true,
|
||||||
..*self
|
..*self
|
||||||
});
|
});
|
||||||
let mut damage = Damage {
|
let damage = Damage {
|
||||||
source: DamageSource::Melee,
|
source: DamageSource::Melee,
|
||||||
value: self.static_data.max_damage as f32,
|
value: self.static_data.initial_damage as f32
|
||||||
|
+ self.charge_amount * self.static_data.scaled_damage as f32,
|
||||||
};
|
};
|
||||||
damage.interpolate_damage(
|
|
||||||
self.charge_amount,
|
|
||||||
self.static_data.initial_damage as f32,
|
|
||||||
);
|
|
||||||
let knockback = self.static_data.initial_knockback
|
let knockback = self.static_data.initial_knockback
|
||||||
+ (self.static_data.max_knockback - self.static_data.initial_knockback)
|
+ self.charge_amount * self.static_data.scaled_knockback;
|
||||||
* self.charge_amount;
|
|
||||||
|
|
||||||
// Hit attempt
|
// Hit attempt
|
||||||
data.updater.insert(data.entity, Attacking {
|
data.updater.insert(data.entity, Attacking {
|
||||||
|
@ -28,12 +28,12 @@ pub struct StaticData {
|
|||||||
pub energy_drain: u32,
|
pub energy_drain: u32,
|
||||||
/// How much damage is dealt with no charge
|
/// How much damage is dealt with no charge
|
||||||
pub initial_damage: u32,
|
pub initial_damage: u32,
|
||||||
/// How much damage is dealt with max charge
|
/// How much the damage scales as it is charged
|
||||||
pub max_damage: u32,
|
pub scaled_damage: u32,
|
||||||
/// How much knockback there is with no charge
|
/// How much knockback there is with no charge
|
||||||
pub initial_knockback: f32,
|
pub initial_knockback: f32,
|
||||||
/// How much knockback there is at max charge
|
/// How much the knockback scales as it is charged
|
||||||
pub max_knockback: f32,
|
pub scaled_knockback: f32,
|
||||||
/// Speed stat of the weapon
|
/// Speed stat of the weapon
|
||||||
pub speed: f32,
|
pub speed: f32,
|
||||||
/// Projectile information
|
/// Projectile information
|
||||||
@ -41,7 +41,7 @@ pub struct StaticData {
|
|||||||
pub projectile_light: Option<LightEmitter>,
|
pub projectile_light: Option<LightEmitter>,
|
||||||
pub projectile_gravity: Option<Gravity>,
|
pub projectile_gravity: Option<Gravity>,
|
||||||
pub initial_projectile_speed: f32,
|
pub initial_projectile_speed: f32,
|
||||||
pub max_projectile_speed: f32,
|
pub scaled_projectile_speed: f32,
|
||||||
/// What key is used to press ability
|
/// What key is used to press ability
|
||||||
pub ability_key: AbilityKey,
|
pub ability_key: AbilityKey,
|
||||||
}
|
}
|
||||||
@ -100,15 +100,13 @@ impl CharacterBehavior for Data {
|
|||||||
let charge_frac = (self.timer.as_secs_f32()
|
let charge_frac = (self.timer.as_secs_f32()
|
||||||
/ self.static_data.charge_duration.as_secs_f32())
|
/ self.static_data.charge_duration.as_secs_f32())
|
||||||
.min(1.0);
|
.min(1.0);
|
||||||
let mut damage = Damage {
|
let damage = Damage {
|
||||||
source: DamageSource::Projectile,
|
source: DamageSource::Projectile,
|
||||||
value: self.static_data.max_damage as f32,
|
value: self.static_data.initial_damage as f32
|
||||||
|
+ charge_frac * self.static_data.scaled_damage as f32,
|
||||||
};
|
};
|
||||||
damage.interpolate_damage(charge_frac, self.static_data.initial_damage as f32);
|
let knockback = self.static_data.initial_knockback
|
||||||
let knockback = self.static_data.initial_knockback as f32
|
+ charge_frac * self.static_data.scaled_knockback;
|
||||||
+ (charge_frac
|
|
||||||
* (self.static_data.max_knockback - self.static_data.initial_knockback)
|
|
||||||
as f32);
|
|
||||||
// Fire
|
// Fire
|
||||||
let projectile = Projectile {
|
let projectile = Projectile {
|
||||||
hit_solid: vec![projectile::Effect::Stick],
|
hit_solid: vec![projectile::Effect::Stick],
|
||||||
@ -140,9 +138,7 @@ impl CharacterBehavior for Data {
|
|||||||
light: self.static_data.projectile_light,
|
light: self.static_data.projectile_light,
|
||||||
gravity: self.static_data.projectile_gravity,
|
gravity: self.static_data.projectile_gravity,
|
||||||
speed: self.static_data.initial_projectile_speed
|
speed: self.static_data.initial_projectile_speed
|
||||||
+ charge_frac
|
+ charge_frac * self.static_data.scaled_projectile_speed,
|
||||||
* (self.static_data.max_projectile_speed
|
|
||||||
- self.static_data.initial_projectile_speed),
|
|
||||||
});
|
});
|
||||||
|
|
||||||
update.character = CharacterState::ChargedRanged(Data {
|
update.character = CharacterState::ChargedRanged(Data {
|
||||||
|
@ -15,8 +15,6 @@ pub struct Stage<T> {
|
|||||||
pub stage: u32,
|
pub stage: u32,
|
||||||
/// Initial damage of stage
|
/// Initial damage of stage
|
||||||
pub base_damage: u32,
|
pub base_damage: u32,
|
||||||
/// Max damage of stage
|
|
||||||
pub max_damage: u32,
|
|
||||||
/// Damage scaling per combo
|
/// Damage scaling per combo
|
||||||
pub damage_increase: u32,
|
pub damage_increase: u32,
|
||||||
/// Knockback of stage
|
/// Knockback of stage
|
||||||
@ -41,7 +39,6 @@ impl Stage<u64> {
|
|||||||
Stage::<Duration> {
|
Stage::<Duration> {
|
||||||
stage: self.stage,
|
stage: self.stage,
|
||||||
base_damage: self.base_damage,
|
base_damage: self.base_damage,
|
||||||
max_damage: self.max_damage,
|
|
||||||
damage_increase: self.damage_increase,
|
damage_increase: self.damage_increase,
|
||||||
knockback: self.knockback,
|
knockback: self.knockback,
|
||||||
range: self.range,
|
range: self.range,
|
||||||
@ -55,7 +52,6 @@ impl Stage<u64> {
|
|||||||
|
|
||||||
pub fn adjusted_by_stats(mut self, power: f32, speed: f32) -> Self {
|
pub fn adjusted_by_stats(mut self, power: f32, speed: f32) -> Self {
|
||||||
self.base_damage = (self.base_damage as f32 * power) as u32;
|
self.base_damage = (self.base_damage as f32 * power) as u32;
|
||||||
self.max_damage = (self.max_damage as f32 * power) as u32;
|
|
||||||
self.damage_increase = (self.damage_increase as f32 * power) as u32;
|
self.damage_increase = (self.damage_increase as f32 * power) as u32;
|
||||||
self.base_buildup_duration = (self.base_buildup_duration as f32 / speed) as u64;
|
self.base_buildup_duration = (self.base_buildup_duration as f32 / speed) as u64;
|
||||||
self.base_swing_duration = (self.base_swing_duration as f32 / speed) as u64;
|
self.base_swing_duration = (self.base_swing_duration as f32 / speed) as u64;
|
||||||
@ -82,6 +78,8 @@ pub struct StaticData {
|
|||||||
pub speed_increase: f32,
|
pub speed_increase: f32,
|
||||||
/// (100% + max_speed_increase) is the max attack speed
|
/// (100% + max_speed_increase) is the max attack speed
|
||||||
pub max_speed_increase: f32,
|
pub max_speed_increase: f32,
|
||||||
|
/// Number of times damage scales with combo
|
||||||
|
pub scales_from_combo: u32,
|
||||||
/// Whether the state can be interrupted by other abilities
|
/// Whether the state can be interrupted by other abilities
|
||||||
pub is_interruptible: bool,
|
pub is_interruptible: bool,
|
||||||
/// What key is used to press ability
|
/// What key is used to press ability
|
||||||
@ -153,11 +151,12 @@ impl CharacterBehavior for Data {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Hit attempt
|
// Hit attempt
|
||||||
let damage = self.static_data.stage_data[stage_index].max_damage.min(
|
let damage = self.static_data.stage_data[stage_index].base_damage
|
||||||
self.static_data.stage_data[stage_index].base_damage
|
+ self
|
||||||
+ self.combo / self.static_data.num_stages
|
.static_data
|
||||||
* self.static_data.stage_data[stage_index].damage_increase,
|
.scales_from_combo
|
||||||
);
|
.min(self.combo / self.static_data.num_stages)
|
||||||
|
* self.static_data.stage_data[stage_index].damage_increase;
|
||||||
data.updater.insert(data.entity, Attacking {
|
data.updater.insert(data.entity, Attacking {
|
||||||
damages: vec![(Some(GroupTarget::OutOfGroup), Damage {
|
damages: vec![(Some(GroupTarget::OutOfGroup), Damage {
|
||||||
source: DamageSource::Melee,
|
source: DamageSource::Melee,
|
||||||
|
@ -15,12 +15,12 @@ use vek::Vec3;
|
|||||||
pub struct StaticData {
|
pub struct StaticData {
|
||||||
/// How much damage the attack initially does
|
/// How much damage the attack initially does
|
||||||
pub base_damage: u32,
|
pub base_damage: u32,
|
||||||
/// How much damage the attack does at max charge distance
|
/// How much the attack scales in damage
|
||||||
pub max_damage: u32,
|
pub scaled_damage: u32,
|
||||||
/// How much the attack knocks the target back initially
|
/// How much the attack knocks the target back initially
|
||||||
pub base_knockback: f32,
|
pub base_knockback: f32,
|
||||||
/// How much knockback happens at max charge distance
|
/// How much the attack scales in knockback
|
||||||
pub max_knockback: f32,
|
pub scaled_knockback: f32,
|
||||||
/// Range of the attack
|
/// Range of the attack
|
||||||
pub range: f32,
|
pub range: f32,
|
||||||
/// Angle of the attack
|
/// Angle of the attack
|
||||||
@ -125,18 +125,13 @@ impl CharacterBehavior for Data {
|
|||||||
if !self.exhausted {
|
if !self.exhausted {
|
||||||
// Hit attempt (also checks if player is moving)
|
// Hit attempt (also checks if player is moving)
|
||||||
if update.vel.0.distance_squared(Vec3::zero()) > 1.0 {
|
if update.vel.0.distance_squared(Vec3::zero()) > 1.0 {
|
||||||
let mut damage = Damage {
|
let damage = Damage {
|
||||||
source: DamageSource::Melee,
|
source: DamageSource::Melee,
|
||||||
value: self.static_data.max_damage as f32,
|
value: self.static_data.base_damage as f32
|
||||||
|
+ charge_frac * self.static_data.scaled_damage as f32,
|
||||||
};
|
};
|
||||||
damage.interpolate_damage(
|
let knockback = self.static_data.base_knockback
|
||||||
charge_frac,
|
+ charge_frac * self.static_data.scaled_knockback;
|
||||||
self.static_data.base_damage as f32,
|
|
||||||
);
|
|
||||||
let knockback = (self.static_data.max_knockback
|
|
||||||
- self.static_data.base_knockback)
|
|
||||||
* charge_frac
|
|
||||||
+ self.static_data.base_knockback;
|
|
||||||
data.updater.insert(data.entity, Attacking {
|
data.updater.insert(data.entity, Attacking {
|
||||||
damages: vec![(Some(GroupTarget::OutOfGroup), damage)],
|
damages: vec![(Some(GroupTarget::OutOfGroup), damage)],
|
||||||
range: self.static_data.range,
|
range: self.static_data.range,
|
||||||
|
@ -126,7 +126,6 @@ fn matches_ability_stage() {
|
|||||||
stage_data: vec![states::combo_melee::Stage {
|
stage_data: vec![states::combo_melee::Stage {
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 10,
|
damage_increase: 10,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 4.0,
|
range: 4.0,
|
||||||
@ -141,6 +140,7 @@ fn matches_ability_stage() {
|
|||||||
energy_increase: 20,
|
energy_increase: 20,
|
||||||
speed_increase: 0.05,
|
speed_increase: 0.05,
|
||||||
max_speed_increase: 1.8,
|
max_speed_increase: 1.8,
|
||||||
|
scales_from_combo: 2,
|
||||||
is_interruptible: true,
|
is_interruptible: true,
|
||||||
ability_key: states::utils::AbilityKey::Mouse1,
|
ability_key: states::utils::AbilityKey::Mouse1,
|
||||||
},
|
},
|
||||||
@ -187,7 +187,6 @@ fn ignores_different_ability_stage() {
|
|||||||
stage_data: vec![states::combo_melee::Stage {
|
stage_data: vec![states::combo_melee::Stage {
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 100,
|
base_damage: 100,
|
||||||
max_damage: 120,
|
|
||||||
damage_increase: 10,
|
damage_increase: 10,
|
||||||
knockback: 10.0,
|
knockback: 10.0,
|
||||||
range: 4.0,
|
range: 4.0,
|
||||||
@ -202,6 +201,7 @@ fn ignores_different_ability_stage() {
|
|||||||
energy_increase: 20,
|
energy_increase: 20,
|
||||||
speed_increase: 0.05,
|
speed_increase: 0.05,
|
||||||
max_speed_increase: 1.8,
|
max_speed_increase: 1.8,
|
||||||
|
scales_from_combo: 2,
|
||||||
is_interruptible: true,
|
is_interruptible: true,
|
||||||
ability_key: states::utils::AbilityKey::Mouse1,
|
ability_key: states::utils::AbilityKey::Mouse1,
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user