mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Merge branch 'gnarlings' into 'master'
Gnarlings See merge request veloren/veloren!3194
This commit is contained in:
commit
6c7c0eefae
@ -63,16 +63,64 @@
|
||||
secondary: "common.abilities.hammersimple.doublestrike",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Axe Simple"): (
|
||||
primary: "common.abilities.axesimple.doublestrike",
|
||||
secondary: "common.abilities.axesimple.doublestrike",
|
||||
// TODO: Later investigate if we want to make this back to a simple axe when more things need a simpler axe ability set
|
||||
Custom("Gnarling Axe"): (
|
||||
primary: "common.abilities.gnarling.axe.chop",
|
||||
secondary: "common.abilities.gnarling.axe.chop",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Dagger Simple"): (
|
||||
primary: "common.abilities.daggersimple.singlestrike",
|
||||
secondary: "common.abilities.daggersimple.singlestrike",
|
||||
Custom("Gnarling Dagger"): (
|
||||
primary: "common.abilities.gnarling.dagger.stab",
|
||||
secondary: "common.abilities.gnarling.dagger.stab",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Gnarling Blowgun"): (
|
||||
primary: "common.abilities.gnarling.blowgun.dart",
|
||||
secondary: "common.abilities.gnarling.blowgun.dart",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Gnarling Chieftain"): (
|
||||
primary: "common.abilities.gnarling.chieftain.flamestrike",
|
||||
secondary: "common.abilities.gnarling.chieftain.firebarrage",
|
||||
abilities: [
|
||||
(None, "common.abilities.gnarling.chieftain.fireshockwave"),
|
||||
(None, "common.abilities.gnarling.chieftain.redtotem"),
|
||||
(None, "common.abilities.gnarling.chieftain.greentotem"),
|
||||
(None, "common.abilities.gnarling.chieftain.whitetotem"),
|
||||
],
|
||||
),
|
||||
Custom("Gnarling Totem Red"): (
|
||||
primary: "common.abilities.gnarling.totem.red",
|
||||
secondary: "common.abilities.gnarling.totem.red",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Gnarling Totem Green"): (
|
||||
primary: "common.abilities.gnarling.totem.green",
|
||||
secondary: "common.abilities.gnarling.totem.green",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Gnarling Totem White"): (
|
||||
primary: "common.abilities.gnarling.totem.white",
|
||||
secondary: "common.abilities.gnarling.totem.white",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Deadwood"): (
|
||||
primary: "common.abilities.custom.deadwood.lifestealbeam",
|
||||
secondary: "common.abilities.custom.deadwood.dash",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Mandragora"): (
|
||||
primary: "common.abilities.custom.mandragora.basic",
|
||||
secondary: "common.abilities.custom.mandragora.scream",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Wood Golem"): (
|
||||
primary: "common.abilities.custom.woodgolem.strike",
|
||||
secondary: "common.abilities.custom.woodgolem.spin",
|
||||
abilities: [
|
||||
(None, "common.abilities.custom.woodgolem.shockwave")
|
||||
],
|
||||
),
|
||||
Custom("Sword Simple"): (
|
||||
primary: "common.abilities.swordsimple.doublestrike",
|
||||
secondary: "common.abilities.swordsimple.dash",
|
||||
@ -86,14 +134,17 @@
|
||||
Custom("Bow Simple"): (
|
||||
primary: "common.abilities.bowsimple.basic",
|
||||
secondary: "common.abilities.bowsimple.basic",
|
||||
abilities: [
|
||||
],
|
||||
abilities: [],
|
||||
),
|
||||
Tool(Blowgun): (
|
||||
primary: "common.abilities.blowgun.basic",
|
||||
secondary: "common.abilities.blowgun.basic",
|
||||
abilities: [
|
||||
],
|
||||
Custom("Axe Simple"): (
|
||||
primary: "common.abilities.axesimple.doublestrike",
|
||||
secondary: "common.abilities.axesimple.doublestrike",
|
||||
abilities: [],
|
||||
),
|
||||
Custom("Dagger Simple"): (
|
||||
primary: "common.abilities.daggersimple.singlestrike",
|
||||
secondary: "common.abilities.daggersimple.singlestrike",
|
||||
abilities: [],
|
||||
),
|
||||
Tool(Dagger): (
|
||||
primary: "common.abilities.dagger.tempbasic",
|
||||
|
@ -53,4 +53,4 @@ ComboMelee(
|
||||
scales_from_combo: 0,
|
||||
is_interruptible: false,
|
||||
ori_modifier: 0.7,
|
||||
)
|
||||
)
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 5.0,
|
||||
angle: 120.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 4.0,
|
||||
angle: 45.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
28
assets/common/abilities/custom/deadwood/dash.ron
Normal file
28
assets/common/abilities/custom/deadwood/dash.ron
Normal file
@ -0,0 +1,28 @@
|
||||
DashMelee(
|
||||
energy_cost: 0,
|
||||
melee_constructor: (
|
||||
kind: Bash(
|
||||
damage: 8.0,
|
||||
poise: 25.0,
|
||||
knockback: 4.0,
|
||||
energy_regen: 0.0,
|
||||
),
|
||||
scaled: Some(Bash(
|
||||
damage: 15.0,
|
||||
poise: 0.0,
|
||||
knockback: 17.0,
|
||||
energy_regen: 0.0,
|
||||
)),
|
||||
range: 4,
|
||||
angle: 45.0,
|
||||
),
|
||||
energy_drain: 0,
|
||||
forward_speed: 3,
|
||||
buildup_duration: 0.5,
|
||||
charge_duration: 1.0,
|
||||
swing_duration: 0.1,
|
||||
recover_duration: 1.0,
|
||||
ori_modifier: 0.1,
|
||||
charge_through: true,
|
||||
is_interruptible: false,
|
||||
)
|
14
assets/common/abilities/custom/deadwood/lifestealbeam.ron
Normal file
14
assets/common/abilities/custom/deadwood/lifestealbeam.ron
Normal file
@ -0,0 +1,14 @@
|
||||
BasicBeam(
|
||||
buildup_duration: 0.25,
|
||||
recover_duration: 0.25,
|
||||
beam_duration: 1,
|
||||
damage: 3.0,
|
||||
tick_rate: 2.0,
|
||||
range: 25.0,
|
||||
max_angle: 1.0,
|
||||
damage_effect: Some(Lifesteal(0.15)),
|
||||
energy_regen: 2.5,
|
||||
energy_drain: 0,
|
||||
ori_rate: 0.3,
|
||||
specifier: LifestealBeam,
|
||||
)
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 4.0,
|
||||
angle: 60.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
17
assets/common/abilities/custom/mandragora/basic.ron
Normal file
17
assets/common/abilities/custom/mandragora/basic.ron
Normal file
@ -0,0 +1,17 @@
|
||||
BasicMelee(
|
||||
energy_cost: 0,
|
||||
buildup_duration: 0.2,
|
||||
swing_duration: 0.05,
|
||||
recover_duration: 0.3,
|
||||
melee_constructor: (
|
||||
kind: Bash(
|
||||
damage: 4,
|
||||
poise: 5,
|
||||
knockback: 0,
|
||||
energy_regen: 0,
|
||||
),
|
||||
range: 3,
|
||||
angle: 30,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
21
assets/common/abilities/custom/mandragora/scream.ron
Normal file
21
assets/common/abilities/custom/mandragora/scream.ron
Normal file
@ -0,0 +1,21 @@
|
||||
SpinMelee(
|
||||
buildup_duration: 0.5,
|
||||
swing_duration: 0.3,
|
||||
recover_duration: 0.5,
|
||||
melee_constructor: (
|
||||
kind: SonicWave(
|
||||
damage: 5,
|
||||
poise: 100,
|
||||
knockback: 20,
|
||||
),
|
||||
range: 10,
|
||||
angle: 360.0,
|
||||
),
|
||||
energy_cost: 0.0,
|
||||
is_infinite: false,
|
||||
movement_behavior: Stationary,
|
||||
is_interruptible: false,
|
||||
forward_speed: 0.0,
|
||||
num_spins: 1,
|
||||
specifier: None,
|
||||
)
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 5.0,
|
||||
angle: 60.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 0.8,
|
||||
angle: 50.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 5.0,
|
||||
angle: 60.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
17
assets/common/abilities/custom/woodgolem/shockwave.ron
Normal file
17
assets/common/abilities/custom/woodgolem/shockwave.ron
Normal file
@ -0,0 +1,17 @@
|
||||
Shockwave(
|
||||
energy_cost: 0,
|
||||
buildup_duration: 1.5,
|
||||
swing_duration: 0.12,
|
||||
recover_duration: 1.2,
|
||||
damage: 20.0,
|
||||
poise_damage: 30,
|
||||
knockback: (strength: 30.0, direction: TowardsUp),
|
||||
shockwave_angle: 90.0,
|
||||
shockwave_vertical_angle: 90.0,
|
||||
shockwave_speed: 15.0,
|
||||
shockwave_duration: 2.0,
|
||||
requires_ground: true,
|
||||
move_efficiency: 0.0,
|
||||
damage_kind: Crushing,
|
||||
specifier: Ground,
|
||||
)
|
22
assets/common/abilities/custom/woodgolem/spin.ron
Normal file
22
assets/common/abilities/custom/woodgolem/spin.ron
Normal file
@ -0,0 +1,22 @@
|
||||
SpinMelee(
|
||||
buildup_duration: 0.35,
|
||||
swing_duration: 0.3,
|
||||
recover_duration: 0.2,
|
||||
melee_constructor: (
|
||||
kind: Bash(
|
||||
damage: 15.0,
|
||||
poise: 30.0,
|
||||
knockback: 20.0,
|
||||
energy_regen: 0.0,
|
||||
),
|
||||
range: 7.5,
|
||||
angle: 360.0,
|
||||
),
|
||||
energy_cost: 0,
|
||||
is_infinite: false,
|
||||
movement_behavior: Stationary,
|
||||
is_interruptible: false,
|
||||
forward_speed: 0.0,
|
||||
num_spins: 1,
|
||||
specifier: None,
|
||||
)
|
17
assets/common/abilities/custom/woodgolem/strike.ron
Normal file
17
assets/common/abilities/custom/woodgolem/strike.ron
Normal file
@ -0,0 +1,17 @@
|
||||
BasicMelee(
|
||||
energy_cost: 0,
|
||||
buildup_duration: 0.8,
|
||||
swing_duration: 0.1,
|
||||
recover_duration: 0.5,
|
||||
melee_constructor: (
|
||||
kind: Bash(
|
||||
damage: 10.0,
|
||||
poise: 25.0,
|
||||
knockback: 15.0,
|
||||
energy_regen: 0.0,
|
||||
),
|
||||
range: 4.0,
|
||||
angle: 45.0,
|
||||
),
|
||||
ori_modifier: 0.4,
|
||||
)
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 4.0,
|
||||
angle: 20.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 3.5,
|
||||
angle: 20.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
@ -31,4 +31,4 @@ ComboMelee(
|
||||
scales_from_combo: 0,
|
||||
is_interruptible: false,
|
||||
ori_modifier: 0.7,
|
||||
)
|
||||
)
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 3.5,
|
||||
angle: 15.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 3.5,
|
||||
angle: 20.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
17
assets/common/abilities/gnarling/axe/chop.ron
Normal file
17
assets/common/abilities/gnarling/axe/chop.ron
Normal file
@ -0,0 +1,17 @@
|
||||
BasicMelee(
|
||||
energy_cost: 0,
|
||||
buildup_duration: 0.2,
|
||||
swing_duration: 0.05,
|
||||
recover_duration: 0.3,
|
||||
melee_constructor: (
|
||||
kind: Slash(
|
||||
damage: 6,
|
||||
poise: 5,
|
||||
knockback: 0,
|
||||
energy_regen: 0,
|
||||
),
|
||||
range: 3,
|
||||
angle: 30,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
@ -3,13 +3,13 @@ BasicRanged(
|
||||
buildup_duration: 0.5,
|
||||
recover_duration: 0.3,
|
||||
projectile: Arrow(
|
||||
damage: 3.5,
|
||||
knockback: 5.0,
|
||||
energy_regen: 4.0,
|
||||
damage: 4,
|
||||
knockback: 0,
|
||||
energy_regen: 0,
|
||||
),
|
||||
projectile_body: Object(Arrow),
|
||||
projectile_body: Object(Dart),
|
||||
projectile_light: None,
|
||||
projectile_speed: 100.0,
|
||||
projectile_speed: 80.0,
|
||||
num_projectiles: 1,
|
||||
projectile_spread: 0.0,
|
||||
)
|
15
assets/common/abilities/gnarling/chieftain/firebarrage.ron
Normal file
15
assets/common/abilities/gnarling/chieftain/firebarrage.ron
Normal file
@ -0,0 +1,15 @@
|
||||
BasicRanged(
|
||||
energy_cost: 0,
|
||||
buildup_duration: 0.55,
|
||||
recover_duration: 0.4,
|
||||
projectile: Fireball(
|
||||
damage: 9.0,
|
||||
radius: 2.0,
|
||||
energy_regen: 10.0,
|
||||
min_falloff: 0.5,
|
||||
),
|
||||
projectile_body: Object(BoltFire),
|
||||
projectile_speed: 25,
|
||||
num_projectiles: 8,
|
||||
projectile_spread: 0.125,
|
||||
)
|
17
assets/common/abilities/gnarling/chieftain/fireshockwave.ron
Normal file
17
assets/common/abilities/gnarling/chieftain/fireshockwave.ron
Normal file
@ -0,0 +1,17 @@
|
||||
Shockwave(
|
||||
energy_cost: 0,
|
||||
buildup_duration: 0.65,
|
||||
swing_duration: 0.1,
|
||||
recover_duration: 0.4,
|
||||
damage: 20,
|
||||
poise_damage: 0,
|
||||
knockback: ( strength: 25, direction: Away),
|
||||
shockwave_angle: 360,
|
||||
shockwave_vertical_angle: 90,
|
||||
shockwave_speed: 10,
|
||||
shockwave_duration: 1,
|
||||
requires_ground: false,
|
||||
move_efficiency: 0,
|
||||
damage_kind: Energy,
|
||||
specifier: Fire,
|
||||
)
|
23
assets/common/abilities/gnarling/chieftain/flamestrike.ron
Normal file
23
assets/common/abilities/gnarling/chieftain/flamestrike.ron
Normal file
@ -0,0 +1,23 @@
|
||||
BasicMelee(
|
||||
energy_cost: 0,
|
||||
buildup_duration: 0.4,
|
||||
swing_duration: 0.1,
|
||||
recover_duration: 0.3,
|
||||
melee_constructor: (
|
||||
kind: Bash(
|
||||
damage: 8,
|
||||
poise: 10,
|
||||
knockback: 0,
|
||||
energy_regen: 0,
|
||||
),
|
||||
range: 7.5,
|
||||
angle: 60.0,
|
||||
damage_effect: Some(Buff((
|
||||
kind: Burning,
|
||||
dur_secs: 10.0,
|
||||
strength: DamageFraction(0.5),
|
||||
chance: 0.5,
|
||||
))),
|
||||
),
|
||||
ori_modifier: 0.7,
|
||||
)
|
15
assets/common/abilities/gnarling/chieftain/greentotem.ron
Normal file
15
assets/common/abilities/gnarling/chieftain/greentotem.ron
Normal file
@ -0,0 +1,15 @@
|
||||
BasicSummon(
|
||||
buildup_duration: 0.25,
|
||||
cast_duration: 0.5,
|
||||
recover_duration: 0.25,
|
||||
summon_amount: 1,
|
||||
summon_distance: (1, 4),
|
||||
summon_info: (
|
||||
body: Object(GnarlingTotemGreen),
|
||||
scale: None,
|
||||
has_health: true,
|
||||
loadout_config: None,
|
||||
skillset_config: None,
|
||||
),
|
||||
duration: None,
|
||||
)
|
15
assets/common/abilities/gnarling/chieftain/redtotem.ron
Normal file
15
assets/common/abilities/gnarling/chieftain/redtotem.ron
Normal file
@ -0,0 +1,15 @@
|
||||
BasicSummon(
|
||||
buildup_duration: 0.25,
|
||||
cast_duration: 0.5,
|
||||
recover_duration: 0.25,
|
||||
summon_amount: 1,
|
||||
summon_distance: (1, 4),
|
||||
summon_info: (
|
||||
body: Object(GnarlingTotemRed),
|
||||
scale: None,
|
||||
has_health: true,
|
||||
loadout_config: None,
|
||||
skillset_config: None,
|
||||
),
|
||||
duration: None,
|
||||
)
|
15
assets/common/abilities/gnarling/chieftain/whitetotem.ron
Normal file
15
assets/common/abilities/gnarling/chieftain/whitetotem.ron
Normal file
@ -0,0 +1,15 @@
|
||||
BasicSummon(
|
||||
buildup_duration: 0.25,
|
||||
cast_duration: 0.5,
|
||||
recover_duration: 0.25,
|
||||
summon_amount: 1,
|
||||
summon_distance: (1, 4),
|
||||
summon_info: (
|
||||
body: Object(GnarlingTotemWhite),
|
||||
scale: None,
|
||||
has_health: true,
|
||||
loadout_config: None,
|
||||
skillset_config: None,
|
||||
),
|
||||
duration: None,
|
||||
)
|
17
assets/common/abilities/gnarling/dagger/stab.ron
Normal file
17
assets/common/abilities/gnarling/dagger/stab.ron
Normal file
@ -0,0 +1,17 @@
|
||||
BasicMelee(
|
||||
energy_cost: 0,
|
||||
buildup_duration: 0.1,
|
||||
swing_duration: 0.05,
|
||||
recover_duration: 0.25,
|
||||
melee_constructor: (
|
||||
kind: Stab(
|
||||
damage: 4,
|
||||
poise: 0,
|
||||
knockback: 0,
|
||||
energy_regen: 0,
|
||||
),
|
||||
range: 2,
|
||||
angle: 15,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
24
assets/common/abilities/gnarling/totem/green.ron
Normal file
24
assets/common/abilities/gnarling/totem/green.ron
Normal file
@ -0,0 +1,24 @@
|
||||
BasicAura(
|
||||
buildup_duration: 0.25,
|
||||
cast_duration: 0.5,
|
||||
recover_duration: 0.25,
|
||||
targets: InGroup,
|
||||
auras: [
|
||||
(
|
||||
kind: Regeneration,
|
||||
strength: 5,
|
||||
duration: Some(5),
|
||||
category: Magical,
|
||||
),
|
||||
(
|
||||
kind: ProtectingWard,
|
||||
strength: 0.50,
|
||||
duration: Some(5),
|
||||
category: Magical,
|
||||
),
|
||||
],
|
||||
aura_duration: 2,
|
||||
range: 50,
|
||||
energy_cost: 0,
|
||||
scales_with_combo: false,
|
||||
)
|
18
assets/common/abilities/gnarling/totem/red.ron
Normal file
18
assets/common/abilities/gnarling/totem/red.ron
Normal file
@ -0,0 +1,18 @@
|
||||
BasicAura(
|
||||
buildup_duration: 0.25,
|
||||
cast_duration: 0.5,
|
||||
recover_duration: 0.25,
|
||||
targets: OutOfGroup,
|
||||
auras: [
|
||||
(
|
||||
kind: Burning,
|
||||
strength: 0.5,
|
||||
duration: Some(5),
|
||||
category: Magical,
|
||||
),
|
||||
],
|
||||
aura_duration: 2,
|
||||
range: 50,
|
||||
energy_cost: 0,
|
||||
scales_with_combo: false,
|
||||
)
|
18
assets/common/abilities/gnarling/totem/white.ron
Normal file
18
assets/common/abilities/gnarling/totem/white.ron
Normal file
@ -0,0 +1,18 @@
|
||||
BasicAura(
|
||||
buildup_duration: 0.25,
|
||||
cast_duration: 0.5,
|
||||
recover_duration: 0.25,
|
||||
targets: InGroup,
|
||||
auras: [
|
||||
(
|
||||
kind: Hastened,
|
||||
strength: 0.5,
|
||||
duration: Some(5),
|
||||
category: Magical,
|
||||
),
|
||||
],
|
||||
aura_duration: 2,
|
||||
range: 50,
|
||||
energy_cost: 0,
|
||||
scales_with_combo: false,
|
||||
)
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 4.5,
|
||||
angle: 20.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
@ -3,15 +3,17 @@ BasicAura(
|
||||
cast_duration: 0.5,
|
||||
recover_duration: 0.25,
|
||||
targets: InGroup,
|
||||
aura: (
|
||||
kind: Regeneration,
|
||||
strength: 0.2,
|
||||
duration: Some(10.0),
|
||||
category: Magical,
|
||||
),
|
||||
auras: [
|
||||
(
|
||||
kind: Regeneration,
|
||||
strength: 0.2,
|
||||
duration: Some(10.0),
|
||||
category: Magical,
|
||||
),
|
||||
],
|
||||
aura_duration: 1.0,
|
||||
range: 25.0,
|
||||
energy_cost: 20.0,
|
||||
scales_with_combo: true,
|
||||
specifier: HealingAura,
|
||||
specifier: Some(HealingAura),
|
||||
)
|
||||
|
@ -3,15 +3,17 @@ BasicAura(
|
||||
cast_duration: 0.5,
|
||||
recover_duration: 0.25,
|
||||
targets: InGroup,
|
||||
aura: (
|
||||
kind: ProtectingWard,
|
||||
strength: 0.20,
|
||||
duration: Some(10.0),
|
||||
category: Magical,
|
||||
),
|
||||
auras: [
|
||||
(
|
||||
kind: ProtectingWard,
|
||||
strength: 0.20,
|
||||
duration: Some(10.0),
|
||||
category: Magical,
|
||||
),
|
||||
],
|
||||
aura_duration: 1.0,
|
||||
range: 25.0,
|
||||
energy_cost: 40.0,
|
||||
scales_with_combo: false,
|
||||
specifier: WardingAura,
|
||||
specifier: Some(WardingAura),
|
||||
)
|
||||
|
@ -13,4 +13,5 @@ BasicMelee(
|
||||
range: 3.0,
|
||||
angle: 90.0,
|
||||
),
|
||||
ori_modifier: 1.0,
|
||||
)
|
||||
|
15
assets/common/entity/dungeon/gnarling/chieftain.ron
Normal file
15
assets/common/entity/dungeon/gnarling/chieftain.ron
Normal file
@ -0,0 +1,15 @@
|
||||
(
|
||||
name: Name("Gnarling Chieftain"),
|
||||
body: RandomWith("gnarling"),
|
||||
alignment: Alignment(Enemy),
|
||||
loadout: Extended(
|
||||
hands: TwoHanded(Item("common.items.npc_weapons.biped_small.gnarling.chieftain")),
|
||||
base_asset: Loadout("common.loadout.dungeon.gnarling.chieftain"),
|
||||
inventory: [],
|
||||
),
|
||||
loot: LootTable("common.loot_tables.dungeon.tier-0.boss"),
|
||||
meta: [
|
||||
// Done for health reasons
|
||||
SkillSetAsset("common.skillset.preset.rank5.fullskill"),
|
||||
],
|
||||
)
|
@ -4,9 +4,9 @@
|
||||
alignment: Alignment(Enemy),
|
||||
loadout: Extended(
|
||||
hands: TwoHanded(Item("common.items.npc_weapons.biped_small.gnarling.logger")),
|
||||
base_asset: Loadout("common.loadout.dungeon.tier-0.logger"),
|
||||
base_asset: Loadout("common.loadout.dungeon.gnarling.logger"),
|
||||
inventory: [],
|
||||
),
|
||||
loot: LootTable("common.loot_tables.dungeon.tier-0.enemy"),
|
||||
meta: [],
|
||||
)
|
||||
)
|
@ -1,12 +1,12 @@
|
||||
(
|
||||
name: Name("Gnarling Chieftain"),
|
||||
body: RandomWith("gnarling"),
|
||||
EntityConfig (
|
||||
name: Name("Mandragora"),
|
||||
body: RandomWith("mandragora"),
|
||||
alignment: Alignment(Enemy),
|
||||
loadout: Extended(
|
||||
hands: TwoHanded(Item("common.items.npc_weapons.biped_small.gnarling.chieftain")),
|
||||
base_asset: Loadout("common.loadout.dungeon.tier-0.gnarling_chieftain"),
|
||||
hands: TwoHanded(Item("common.items.npc_weapons.biped_small.mandragora")),
|
||||
base_asset: Loadout("common.loadout.dungeon.gnarling.mandragora"),
|
||||
inventory: [],
|
||||
),
|
||||
loot: LootTable("common.loot_tables.dungeon.tier-0.enemy"),
|
||||
meta: [],
|
||||
)
|
||||
)
|
@ -4,9 +4,9 @@
|
||||
alignment: Alignment(Enemy),
|
||||
loadout: Extended(
|
||||
hands: TwoHanded(Item("common.items.npc_weapons.biped_small.gnarling.mugger")),
|
||||
base_asset: Loadout("common.loadout.dungeon.tier-0.mugger"),
|
||||
base_asset: Loadout("common.loadout.dungeon.gnarling.mugger"),
|
||||
inventory: [],
|
||||
),
|
||||
loot: LootTable("common.loot_tables.dungeon.tier-0.enemy"),
|
||||
meta: [],
|
||||
)
|
||||
)
|
@ -4,9 +4,9 @@
|
||||
alignment: Alignment(Enemy),
|
||||
loadout: Extended(
|
||||
hands: TwoHanded(Item("common.items.npc_weapons.biped_small.gnarling.stalker")),
|
||||
base_asset: Loadout("common.loadout.dungeon.tier-0.stalker"),
|
||||
base_asset: Loadout("common.loadout.dungeon.gnarling.stalker"),
|
||||
inventory: [],
|
||||
),
|
||||
loot: LootTable("common.loot_tables.dungeon.tier-0.enemy"),
|
||||
meta: [],
|
||||
)
|
||||
)
|
@ -1,8 +1,8 @@
|
||||
(
|
||||
name: Name("Deadwood"),
|
||||
body: RandomWith("deadwood"),
|
||||
EntityConfig (
|
||||
name: Name("Wooden Golem"),
|
||||
body: RandomWith("woodgolem"),
|
||||
alignment: Alignment(Enemy),
|
||||
loadout: FromBody,
|
||||
loot: LootTable("common.loot_tables.dungeon.tier-0.miniboss"),
|
||||
meta: [],
|
||||
)
|
||||
)
|
@ -1,12 +1,12 @@
|
||||
ItemDef(
|
||||
name: "Gnarling Chieftain",
|
||||
description: "Ceremonial attire used by members.",
|
||||
description: "Only worn by the most spiritual of Gnarlings.",
|
||||
kind: Armor((
|
||||
kind: Chest("GnarlingChieftain"),
|
||||
stats: (
|
||||
protection: Some(Normal(2.0)),
|
||||
poise_resilience: Some(Normal(1.0)),
|
||||
energy_max: Some(2.7),
|
||||
protection: Some(Normal(80.0)),
|
||||
poise_resilience: Some(Normal(60.0)),
|
||||
energy_max: Some(120.0),
|
||||
energy_reward: Some(0.027),
|
||||
crit_power: Some(0.025),
|
||||
),
|
||||
|
@ -1,6 +1,6 @@
|
||||
ItemDef(
|
||||
name: "Gnarling Chieftain",
|
||||
description: "Ceremonial attire used by members.",
|
||||
description: "Only worn by the most spiritual of Gnarlings.",
|
||||
kind: Armor((
|
||||
kind: Foot("GnarlingChieftain"),
|
||||
stats: (
|
||||
|
@ -1,6 +1,6 @@
|
||||
ItemDef(
|
||||
name: "Gnarling Chieftain",
|
||||
description: "Ceremonial attire used by members..",
|
||||
description: "Only worn by the most spiritual of Gnarlings.",
|
||||
kind: Armor((
|
||||
kind: Hand("GnarlingChieftain"),
|
||||
stats: (
|
||||
|
@ -1,6 +1,6 @@
|
||||
ItemDef(
|
||||
name: "Gnarling Chieftain",
|
||||
description: "Ceremonial attire used by members.",
|
||||
description: "Only worn by the most spiritual of Gnarlings.",
|
||||
kind: Armor((
|
||||
kind: Head("GnarlingChieftain"),
|
||||
stats: (
|
||||
|
@ -1,6 +1,6 @@
|
||||
ItemDef(
|
||||
name: "Gnarling Chieftain",
|
||||
description: "Ceremonial attire used by members..",
|
||||
description: "Only worn by the most spiritual of Gnarlings.",
|
||||
kind: Armor((
|
||||
kind: Pants("GnarlingChieftain"),
|
||||
stats: (
|
||||
|
@ -1,6 +1,6 @@
|
||||
ItemDef(
|
||||
name: "Gnarling Chieftain",
|
||||
description: "Ceremonial attire used by members.",
|
||||
description: "Only worn by the most spiritual of Gnarlings.",
|
||||
kind: Armor((
|
||||
kind: Belt("GnarlingChieftain"),
|
||||
stats: (
|
||||
|
@ -0,0 +1,16 @@
|
||||
ItemDef(
|
||||
name: "Mandragora",
|
||||
description: "Ceremonial attire used by members.",
|
||||
kind: Armor((
|
||||
kind: Chest("Mandragora"),
|
||||
stats: (
|
||||
protection: Some(Normal(26.0)),
|
||||
poise_resilience: Some(Normal(4.0)),
|
||||
energy_max: Some(3.4),
|
||||
energy_reward: Some(0.81),
|
||||
crit_power: Some(0.075),
|
||||
),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
)
|
@ -0,0 +1,16 @@
|
||||
ItemDef(
|
||||
name: "Mandragora",
|
||||
description: "Ceremonial attire used by members.",
|
||||
kind: Armor((
|
||||
kind: Foot("Mandragora"),
|
||||
stats: (
|
||||
protection: Some(Normal(26.0)),
|
||||
poise_resilience: Some(Normal(4.0)),
|
||||
energy_max: Some(3.4),
|
||||
energy_reward: Some(0.81),
|
||||
crit_power: Some(0.075),
|
||||
),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
)
|
@ -0,0 +1,16 @@
|
||||
ItemDef(
|
||||
name: "Mandragora",
|
||||
description: "Ceremonial attire used by members.",
|
||||
kind: Armor((
|
||||
kind: Hand("Mandragora"),
|
||||
stats: (
|
||||
protection: Some(Normal(26.0)),
|
||||
poise_resilience: Some(Normal(4.0)),
|
||||
energy_max: Some(3.4),
|
||||
energy_reward: Some(0.81),
|
||||
crit_power: Some(0.075),
|
||||
),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
)
|
@ -0,0 +1,16 @@
|
||||
ItemDef(
|
||||
name: "Mandragora",
|
||||
description: "Ceremonial attire used by members.",
|
||||
kind: Armor((
|
||||
kind: Pants("Mandragora"),
|
||||
stats: (
|
||||
protection: Some(Normal(26.0)),
|
||||
poise_resilience: Some(Normal(4.0)),
|
||||
energy_max: Some(3.4),
|
||||
energy_reward: Some(0.81),
|
||||
crit_power: Some(0.075),
|
||||
),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
)
|
@ -0,0 +1,16 @@
|
||||
ItemDef(
|
||||
name: "Mandragora",
|
||||
description: "Ceremonial attire used by members.",
|
||||
kind: Armor((
|
||||
kind: Belt("Mandragora"),
|
||||
stats: (
|
||||
protection: Some(Normal(26.0)),
|
||||
poise_resilience: Some(Normal(4.0)),
|
||||
energy_max: Some(3.4),
|
||||
energy_reward: Some(0.81),
|
||||
crit_power: Some(0.075),
|
||||
),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
)
|
13
assets/common/items/npc_armor/golem/woodgolem.ron
Normal file
13
assets/common/items/npc_armor/golem/woodgolem.ron
Normal file
@ -0,0 +1,13 @@
|
||||
ItemDef(
|
||||
name: "Wood Golem Armor",
|
||||
description: "Yeet",
|
||||
kind: Armor((
|
||||
kind: Chest("Wood Golem"),
|
||||
stats: (
|
||||
protection: Some(Normal(60.0)),
|
||||
poise_resilience: Some(Normal(60.0)),
|
||||
),
|
||||
)),
|
||||
quality: Common,
|
||||
tags: [],
|
||||
)
|
@ -6,10 +6,10 @@ ItemDef(
|
||||
hands: Two,
|
||||
stats: Direct((
|
||||
equip_time_secs: 0.0,
|
||||
power: 0.3,
|
||||
effect_power: 0.8,
|
||||
speed: 0.6,
|
||||
crit_chance: 0.26764706,
|
||||
power: 1.0,
|
||||
effect_power: 1.0,
|
||||
speed: 1.0,
|
||||
crit_chance: 0.1,
|
||||
range: 1.0,
|
||||
energy_efficiency: 1.0,
|
||||
buff_strength: 1.0,
|
||||
@ -17,5 +17,5 @@ ItemDef(
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Staff Simple")),
|
||||
ability_spec: Some(Custom("Gnarling Chieftain")),
|
||||
)
|
@ -0,0 +1,21 @@
|
||||
ItemDef(
|
||||
name: "Gnarling Green Totem",
|
||||
description: "Yeet",
|
||||
kind: Tool((
|
||||
kind: Natural,
|
||||
hands: Two,
|
||||
stats: Direct((
|
||||
equip_time_secs: 0.01,
|
||||
power: 1.0,
|
||||
effect_power: 1.0,
|
||||
speed: 1.0,
|
||||
crit_chance: 0.1,
|
||||
range: 1.0,
|
||||
energy_efficiency: 1.0,
|
||||
buff_strength: 1.0,
|
||||
)),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Gnarling Totem Green")),
|
||||
)
|
@ -6,10 +6,10 @@ ItemDef(
|
||||
hands: Two,
|
||||
stats: Direct((
|
||||
equip_time_secs: 0.0,
|
||||
power: 0.3,
|
||||
power: 1.0,
|
||||
effect_power: 1.0,
|
||||
speed: 1.0,
|
||||
crit_chance: 0.12037037,
|
||||
crit_chance: 0.1,
|
||||
range: 1.0,
|
||||
energy_efficiency: 1.0,
|
||||
buff_strength: 1.0,
|
||||
@ -17,5 +17,6 @@ ItemDef(
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Axe Simple")),
|
||||
// TODO: Later investigate if we want to make this back to a simple axe when more things need a simpler axe ability set
|
||||
ability_spec: Some(Custom("Gnarling Axe")),
|
||||
)
|
@ -17,5 +17,6 @@ ItemDef(
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Dagger Simple")),
|
||||
// TODO: Later investigate if we want to make this back to a simple dagger when more things need a simpler dagger ability set
|
||||
ability_spec: Some(Custom("Gnarling Dagger")),
|
||||
)
|
@ -0,0 +1,21 @@
|
||||
ItemDef(
|
||||
name: "Gnarling Red Totem",
|
||||
description: "Yeet",
|
||||
kind: Tool((
|
||||
kind: Natural,
|
||||
hands: Two,
|
||||
stats: Direct((
|
||||
equip_time_secs: 0.01,
|
||||
power: 1.0,
|
||||
effect_power: 1.0,
|
||||
speed: 1.0,
|
||||
crit_chance: 0.1,
|
||||
range: 1.0,
|
||||
energy_efficiency: 1.0,
|
||||
buff_strength: 1.0,
|
||||
)),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Gnarling Totem Red")),
|
||||
)
|
@ -17,5 +17,5 @@ ItemDef(
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: None,
|
||||
ability_spec: Some(Custom("Gnarling Blowgun")),
|
||||
)
|
@ -0,0 +1,21 @@
|
||||
ItemDef(
|
||||
name: "Gnarling White Totem",
|
||||
description: "Yeet",
|
||||
kind: Tool((
|
||||
kind: Natural,
|
||||
hands: Two,
|
||||
stats: Direct((
|
||||
equip_time_secs: 0.01,
|
||||
power: 1.0,
|
||||
effect_power: 1.0,
|
||||
speed: 1.0,
|
||||
crit_chance: 0.1,
|
||||
range: 1.0,
|
||||
energy_efficiency: 1.0,
|
||||
buff_strength: 1.0,
|
||||
)),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Gnarling Totem White")),
|
||||
)
|
21
assets/common/items/npc_weapons/biped_small/mandragora.ron
Normal file
21
assets/common/items/npc_weapons/biped_small/mandragora.ron
Normal file
@ -0,0 +1,21 @@
|
||||
ItemDef(
|
||||
name: "Mandragora",
|
||||
description: "Testing",
|
||||
kind: Tool((
|
||||
kind: Natural,
|
||||
hands: Two,
|
||||
stats: Direct((
|
||||
equip_time_secs: 0.0,
|
||||
power: 1.0,
|
||||
effect_power: 1.0,
|
||||
speed: 1.0,
|
||||
crit_chance: 0.1,
|
||||
range: 1.0,
|
||||
energy_efficiency: 1.0,
|
||||
buff_strength: 1.0,
|
||||
)),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Mandragora")),
|
||||
)
|
21
assets/common/items/npc_weapons/unique/deadwood.ron
Normal file
21
assets/common/items/npc_weapons/unique/deadwood.ron
Normal file
@ -0,0 +1,21 @@
|
||||
ItemDef(
|
||||
name: "Deadwood",
|
||||
description: "testing123",
|
||||
kind: Tool((
|
||||
kind: Natural,
|
||||
hands: Two,
|
||||
stats: Direct((
|
||||
equip_time_secs: 0.01,
|
||||
power: 1.0,
|
||||
effect_power: 1.0,
|
||||
speed: 1.0,
|
||||
crit_chance: 0.1,
|
||||
range: 1.0,
|
||||
energy_efficiency: 1.0,
|
||||
buff_strength: 1.0,
|
||||
)),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Deadwood")),
|
||||
)
|
21
assets/common/items/npc_weapons/unique/wood_golem_fist.ron
Normal file
21
assets/common/items/npc_weapons/unique/wood_golem_fist.ron
Normal file
@ -0,0 +1,21 @@
|
||||
ItemDef(
|
||||
name: "Wood Golem Fists",
|
||||
description: "Yeet",
|
||||
kind: Tool((
|
||||
kind: Natural,
|
||||
hands: Two,
|
||||
stats: Direct((
|
||||
equip_time_secs: 0.001,
|
||||
power: 1.0,
|
||||
effect_power: 1.0,
|
||||
speed: 1.0,
|
||||
crit_chance: 0.1,
|
||||
range: 1.0,
|
||||
energy_efficiency: 1.0,
|
||||
buff_strength: 1.0,
|
||||
)),
|
||||
)),
|
||||
quality: Low,
|
||||
tags: [],
|
||||
ability_spec: Some(Custom("Wood Golem")),
|
||||
)
|
6
assets/common/loadout/dungeon/gnarling/mandragora.ron
Normal file
6
assets/common/loadout/dungeon/gnarling/mandragora.ron
Normal file
@ -0,0 +1,6 @@
|
||||
({
|
||||
Armor(Feet): Item("common.items.npc_armor.biped_small.mandragora.foot.mandragora"),
|
||||
Armor(Hands): Item("common.items.npc_armor.biped_small.mandragora.hand.mandragora"),
|
||||
Armor(Chest): Item("common.items.npc_armor.biped_small.mandragora.chest.mandragora"),
|
||||
Armor(Legs): Item("common.items.npc_armor.biped_small.mandragora.pants.mandragora"),
|
||||
})
|
BIN
assets/voxygen/element/de_buffs/buff_haste_0.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/de_buffs/buff_haste_0.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/gnarling.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/gnarling.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/gnarling_bg.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/gnarling_bg.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/gnarling_hover.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/gnarling_hover.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/mindflayer.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/mindflayer.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/mindflayer_bg.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/mindflayer_bg.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/mindflayer_hover.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/mindflayer_hover.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/minotaur.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/minotaur.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/minotaur_bg.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/minotaur_bg.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/buttons/minotaur_hover.png
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/element/ui/map/buttons/minotaur_hover.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/element/ui/map/icons/dif_5.png
(Stored with Git LFS)
BIN
assets/voxygen/element/ui/map/icons/dif_5.png
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/element/ui/map/icons/dif_6.png
(Stored with Git LFS)
BIN
assets/voxygen/element/ui/map/icons/dif_6.png
(Stored with Git LFS)
Binary file not shown.
@ -21,6 +21,8 @@
|
||||
"buff.desc.protectingward": "You are protected, somewhat, from attacks.",
|
||||
"buff.title.frenzied": "Frenzied",
|
||||
"buff.desc.frenzied": "You are imbued with unnatural speed and can ignore minor injuries.",
|
||||
"buff.title.hastened": "Hastened",
|
||||
"buff.desc.hastened": "Your movements and attacks are faster.",
|
||||
// Debuffs
|
||||
"buff.title.bleed": "Bleeding",
|
||||
"buff.desc.bleed": "Inflicts regular damage.",
|
||||
|
@ -31,6 +31,7 @@
|
||||
"hud.map.change_map_mode": "Change Map Mode",
|
||||
"hud.map.toggle_minimap_voxel": "Toggle Minimap Voxel View",
|
||||
"hud.map.zoom_minimap_explanation": "Zoom in the Minimap to see\nthe area around you in higher detail",
|
||||
"hud.map.gnarling": "Gnarling Fortification",
|
||||
},
|
||||
|
||||
|
||||
|
@ -73,6 +73,7 @@ const int ICE_SPIKES = 31;
|
||||
const int DRIP = 32;
|
||||
const int TORNADO = 33;
|
||||
const int DEATH = 34;
|
||||
const int ENERGY_BUFFING = 35;
|
||||
|
||||
// meters per second squared (acceleration)
|
||||
const float earth_gravity = 9.807;
|
||||
@ -568,6 +569,16 @@ void main() {
|
||||
spin_in_axis(vec3(rand6, rand7, rand8), percent() * 10 + 3 * rand9)
|
||||
);
|
||||
break;
|
||||
case ENERGY_BUFFING:
|
||||
f_reflect = 0.0;
|
||||
spiral_radius = start_end(1 - pow(abs(rand5), 5), 1) * length(inst_dir);
|
||||
attr = Attr(
|
||||
spiral_motion(vec3(0, 0, rand3 + 1), spiral_radius, lifetime, abs(rand0), rand1 * 2 * PI) + vec3(0, 0, rand2),
|
||||
vec3(6 * abs(rand4) * (1 - slow_start(2)) * pow(spiral_radius / length(inst_dir), 0.5)),
|
||||
vec4(vec3(1.4), 1),
|
||||
spin_in_axis(vec3(rand6, rand7, rand8), rand9 * 3)
|
||||
);
|
||||
break;
|
||||
default:
|
||||
attr = Attr(
|
||||
linear_motion(
|
||||
|
@ -37,7 +37,7 @@
|
||||
vox_spec: ("npc.gnarling.chieftain.chest", (-4.5, -3.5, -1.0)),
|
||||
),
|
||||
"Mandragora": (
|
||||
vox_spec: ("npc.mandragora.male.chest", (-11.0, -11.0, -6.5)),
|
||||
vox_spec: ("npc.mandragora.male.chest", (-11.0, -11.0, 0.0)),
|
||||
),
|
||||
"Kappa": (
|
||||
vox_spec: ("npc.kappa.male.chest", (-6.5, -8.0, -7.0)),
|
||||
|
@ -1179,4 +1179,8 @@
|
||||
vox_spec: ("weapon.biped_small.axe.strategian", (-0.5, -6.0, -4.0)),
|
||||
color: None
|
||||
),
|
||||
"common.items.npc_weapons.biped_small.mandragora": (
|
||||
vox_spec: ("armor.empty", (0.0, 0.0, 0.0)),
|
||||
color: None
|
||||
),
|
||||
})
|
||||
|
BIN
assets/voxygen/voxel/object/gnarling_totem_green.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/object/gnarling_totem_green.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/object/gnarling_totem_red.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/object/gnarling_totem_red.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/object/gnarling_totem_white.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/object/gnarling_totem_white.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -819,4 +819,44 @@
|
||||
central: ("armor.empty"),
|
||||
)
|
||||
),
|
||||
Dart: (
|
||||
bone0: (
|
||||
offset: (-0.5, -5.5, -1.5),
|
||||
central: ("weapon.projectile.dart"),
|
||||
),
|
||||
bone1: (
|
||||
offset: (0.0, 0.0, 0.0),
|
||||
central: ("armor.empty"),
|
||||
)
|
||||
),
|
||||
GnarlingTotemRed: (
|
||||
bone0: (
|
||||
offset: (-6.0, -5.0, 0.0),
|
||||
central: ("object.gnarling_totem_red"),
|
||||
),
|
||||
bone1: (
|
||||
offset: (0.0, 0.0, 0.0),
|
||||
central: ("armor.empty"),
|
||||
)
|
||||
),
|
||||
GnarlingTotemGreen: (
|
||||
bone0: (
|
||||
offset: (-9.0, -5.0, 0.0),
|
||||
central: ("object.gnarling_totem_green"),
|
||||
),
|
||||
bone1: (
|
||||
offset: (0.0, 0.0, 0.0),
|
||||
central: ("armor.empty"),
|
||||
)
|
||||
),
|
||||
GnarlingTotemWhite: (
|
||||
bone0: (
|
||||
offset: (-8.0, -5.0, 0.0),
|
||||
central: ("object.gnarling_totem_white"),
|
||||
),
|
||||
bone1: (
|
||||
offset: (0.0, 0.0, 0.0),
|
||||
central: ("armor.empty"),
|
||||
)
|
||||
),
|
||||
})
|
||||
|
BIN
assets/voxygen/voxel/weapon/biped_small/staff/chieftain.vox
(Stored with Git LFS)
BIN
assets/voxygen/voxel/weapon/biped_small/staff/chieftain.vox
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/voxel/weapon/projectile/dart.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/weapon/projectile/dart.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -16,7 +16,6 @@
|
||||
/// 1) Set every probability to 0.0 and left one with any other number
|
||||
/// and you will have map full of dungeons of same level
|
||||
([
|
||||
(0, 0.25),
|
||||
(1, 0.20),
|
||||
(2, 0.20),
|
||||
(3, 0.15),
|
||||
|
@ -144,6 +144,7 @@ pub enum SiteKind {
|
||||
Castle,
|
||||
Cave,
|
||||
Tree,
|
||||
Gnarling,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
|
@ -207,6 +207,7 @@ lazy_static! {
|
||||
BuffKind::Wet => "wet",
|
||||
BuffKind::Ensnared => "ensnared",
|
||||
BuffKind::Poisoned => "poisoned",
|
||||
BuffKind::Hastened => "hastened",
|
||||
};
|
||||
let mut buff_parser = HashMap::new();
|
||||
BuffKind::iter().for_each(|kind| {buff_parser.insert(string_from_buff(kind).to_string(), kind);});
|
||||
|
@ -394,6 +394,7 @@ pub enum CharacterAbility {
|
||||
swing_duration: f32,
|
||||
recover_duration: f32,
|
||||
melee_constructor: MeleeConstructor,
|
||||
ori_modifier: f32,
|
||||
},
|
||||
BasicRanged {
|
||||
energy_cost: f32,
|
||||
@ -551,12 +552,12 @@ pub enum CharacterAbility {
|
||||
cast_duration: f32,
|
||||
recover_duration: f32,
|
||||
targets: combat::GroupTarget,
|
||||
aura: aura::AuraBuffConstructor,
|
||||
auras: Vec<aura::AuraBuffConstructor>,
|
||||
aura_duration: f32,
|
||||
range: f32,
|
||||
energy_cost: f32,
|
||||
scales_with_combo: bool,
|
||||
specifier: aura::Specifier,
|
||||
specifier: Option<aura::Specifier>,
|
||||
},
|
||||
Blink {
|
||||
buildup_duration: f32,
|
||||
@ -610,6 +611,7 @@ impl Default for CharacterAbility {
|
||||
angle: 15.0,
|
||||
damage_effect: None,
|
||||
},
|
||||
ori_modifier: 1.0,
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -697,6 +699,7 @@ impl CharacterAbility {
|
||||
ref mut swing_duration,
|
||||
ref mut recover_duration,
|
||||
ref mut melee_constructor,
|
||||
ori_modifier: _,
|
||||
} => {
|
||||
*buildup_duration /= stats.speed;
|
||||
*swing_duration /= stats.speed;
|
||||
@ -961,13 +964,7 @@ impl CharacterAbility {
|
||||
ref mut cast_duration,
|
||||
ref mut recover_duration,
|
||||
targets: _,
|
||||
aura:
|
||||
aura::AuraBuffConstructor {
|
||||
kind: _,
|
||||
ref mut strength,
|
||||
duration: _,
|
||||
category: _,
|
||||
},
|
||||
ref mut auras,
|
||||
aura_duration: _,
|
||||
ref mut range,
|
||||
ref mut energy_cost,
|
||||
@ -977,9 +974,18 @@ impl CharacterAbility {
|
||||
*buildup_duration /= stats.speed;
|
||||
*cast_duration /= stats.speed;
|
||||
*recover_duration /= stats.speed;
|
||||
// Do we want to make buff_strength affect this instead of power?
|
||||
// Look into during modular weapon transition
|
||||
*strength *= stats.power;
|
||||
auras.iter_mut().for_each(
|
||||
|aura::AuraBuffConstructor {
|
||||
kind: _,
|
||||
ref mut strength,
|
||||
duration: _,
|
||||
category: _,
|
||||
}| {
|
||||
// Do we want to make buff_strength affect this instead of power?
|
||||
// Look into during modular weapon transition
|
||||
*strength *= stats.power;
|
||||
},
|
||||
);
|
||||
*range *= stats.range;
|
||||
*energy_cost /= stats.energy_efficiency;
|
||||
},
|
||||
@ -1076,7 +1082,6 @@ impl CharacterAbility {
|
||||
}
|
||||
|
||||
#[must_use = "method returns new ability and doesn't mutate the original value"]
|
||||
#[warn(clippy::pedantic)]
|
||||
pub fn adjusted_by_skills(mut self, skillset: &SkillSet, tool: Option<ToolKind>) -> Self {
|
||||
match tool {
|
||||
Some(ToolKind::Sword) => self.adjusted_by_sword_skills(skillset),
|
||||
@ -1092,7 +1097,6 @@ impl CharacterAbility {
|
||||
self
|
||||
}
|
||||
|
||||
#[warn(clippy::pedantic)]
|
||||
fn adjusted_by_mining_skills(&mut self, skillset: &SkillSet) {
|
||||
use skills::MiningSkill::Speed;
|
||||
|
||||
@ -1114,7 +1118,6 @@ impl CharacterAbility {
|
||||
}
|
||||
}
|
||||
|
||||
#[warn(clippy::pedantic)]
|
||||
fn adjusted_by_general_skills(&mut self, skillset: &SkillSet) {
|
||||
if let CharacterAbility::Roll {
|
||||
ref mut energy_cost,
|
||||
@ -1236,7 +1239,6 @@ impl CharacterAbility {
|
||||
}
|
||||
}
|
||||
|
||||
#[warn(clippy::pedantic)]
|
||||
fn adjusted_by_axe_skills(&mut self, skillset: &SkillSet) {
|
||||
#![allow(clippy::enum_glob_use)]
|
||||
use skills::{AxeSkill::*, Skill::Axe};
|
||||
@ -1330,7 +1332,6 @@ impl CharacterAbility {
|
||||
}
|
||||
}
|
||||
|
||||
#[warn(clippy::pedantic)]
|
||||
fn adjusted_by_hammer_skills(&mut self, skillset: &SkillSet) {
|
||||
#![allow(clippy::enum_glob_use)]
|
||||
use skills::{HammerSkill::*, Skill::Hammer};
|
||||
@ -1433,7 +1434,6 @@ impl CharacterAbility {
|
||||
}
|
||||
}
|
||||
|
||||
#[warn(clippy::pedantic)]
|
||||
fn adjusted_by_bow_skills(&mut self, skillset: &SkillSet) {
|
||||
#![allow(clippy::enum_glob_use)]
|
||||
use skills::{BowSkill::*, Skill::Bow};
|
||||
@ -1534,7 +1534,6 @@ impl CharacterAbility {
|
||||
}
|
||||
}
|
||||
|
||||
#[warn(clippy::pedantic)]
|
||||
fn adjusted_by_staff_skills(&mut self, skillset: &SkillSet) {
|
||||
#![allow(clippy::enum_glob_use)]
|
||||
use skills::{Skill::Staff, StaffSkill::*};
|
||||
@ -1604,7 +1603,6 @@ impl CharacterAbility {
|
||||
}
|
||||
}
|
||||
|
||||
#[warn(clippy::pedantic)]
|
||||
fn adjusted_by_sceptre_skills(&mut self, skillset: &SkillSet) {
|
||||
#![allow(clippy::enum_glob_use)]
|
||||
use skills::{SceptreSkill::*, Skill::Sceptre};
|
||||
@ -1638,20 +1636,24 @@ impl CharacterAbility {
|
||||
}
|
||||
},
|
||||
CharacterAbility::BasicAura {
|
||||
ref mut aura,
|
||||
ref mut auras,
|
||||
ref mut range,
|
||||
ref mut energy_cost,
|
||||
specifier: aura::Specifier::HealingAura,
|
||||
specifier: Some(aura::Specifier::HealingAura),
|
||||
..
|
||||
} => {
|
||||
let modifiers = SKILL_MODIFIERS.sceptre_tree.healing_aura;
|
||||
if let Ok(level) = skillset.skill_level(Sceptre(HHeal)) {
|
||||
aura.strength *= modifiers.strength.powi(level.into());
|
||||
auras.iter_mut().for_each(|ref mut aura| {
|
||||
aura.strength *= modifiers.strength.powi(level.into());
|
||||
});
|
||||
}
|
||||
if let Ok(level) = skillset.skill_level(Sceptre(HDuration)) {
|
||||
if let Some(ref mut duration) = aura.duration {
|
||||
*duration *= modifiers.duration.powi(level.into());
|
||||
}
|
||||
auras.iter_mut().for_each(|ref mut aura| {
|
||||
if let Some(ref mut duration) = aura.duration {
|
||||
*duration *= modifiers.duration.powi(level.into());
|
||||
}
|
||||
});
|
||||
}
|
||||
if let Ok(level) = skillset.skill_level(Sceptre(HRange)) {
|
||||
*range *= modifiers.range.powi(level.into());
|
||||
@ -1661,20 +1663,24 @@ impl CharacterAbility {
|
||||
}
|
||||
},
|
||||
CharacterAbility::BasicAura {
|
||||
ref mut aura,
|
||||
ref mut auras,
|
||||
ref mut range,
|
||||
ref mut energy_cost,
|
||||
specifier: aura::Specifier::WardingAura,
|
||||
specifier: Some(aura::Specifier::WardingAura),
|
||||
..
|
||||
} => {
|
||||
let modifiers = SKILL_MODIFIERS.sceptre_tree.warding_aura;
|
||||
if let Ok(level) = skillset.skill_level(Sceptre(AStrength)) {
|
||||
aura.strength *= modifiers.strength.powi(level.into());
|
||||
auras.iter_mut().for_each(|ref mut aura| {
|
||||
aura.strength *= modifiers.strength.powi(level.into());
|
||||
});
|
||||
}
|
||||
if let Ok(level) = skillset.skill_level(Sceptre(ADuration)) {
|
||||
if let Some(ref mut duration) = aura.duration {
|
||||
*duration *= modifiers.duration.powi(level.into());
|
||||
}
|
||||
auras.iter_mut().for_each(|ref mut aura| {
|
||||
if let Some(ref mut duration) = aura.duration {
|
||||
*duration *= modifiers.duration.powi(level.into());
|
||||
}
|
||||
});
|
||||
}
|
||||
if let Ok(level) = skillset.skill_level(Sceptre(ARange)) {
|
||||
*range *= modifiers.range.powi(level.into());
|
||||
@ -1696,6 +1702,7 @@ impl From<(&CharacterAbility, AbilityInfo, &JoinData<'_>)> for CharacterState {
|
||||
swing_duration,
|
||||
recover_duration,
|
||||
melee_constructor,
|
||||
ori_modifier,
|
||||
energy_cost: _,
|
||||
} => CharacterState::BasicMelee(basic_melee::Data {
|
||||
static_data: basic_melee::StaticData {
|
||||
@ -1703,6 +1710,7 @@ impl From<(&CharacterAbility, AbilityInfo, &JoinData<'_>)> for CharacterState {
|
||||
swing_duration: Duration::from_secs_f32(*swing_duration),
|
||||
recover_duration: Duration::from_secs_f32(*recover_duration),
|
||||
melee_constructor: *melee_constructor,
|
||||
ori_modifier: *ori_modifier,
|
||||
ability_info,
|
||||
},
|
||||
timer: Duration::default(),
|
||||
@ -2080,7 +2088,7 @@ impl From<(&CharacterAbility, AbilityInfo, &JoinData<'_>)> for CharacterState {
|
||||
cast_duration,
|
||||
recover_duration,
|
||||
targets,
|
||||
aura,
|
||||
auras,
|
||||
aura_duration,
|
||||
range,
|
||||
energy_cost: _,
|
||||
@ -2092,7 +2100,7 @@ impl From<(&CharacterAbility, AbilityInfo, &JoinData<'_>)> for CharacterState {
|
||||
cast_duration: Duration::from_secs_f32(*cast_duration),
|
||||
recover_duration: Duration::from_secs_f32(*recover_duration),
|
||||
targets: *targets,
|
||||
aura: *aura,
|
||||
auras: auras.clone(),
|
||||
aura_duration: Duration::from_secs_f32(*aura_duration),
|
||||
range: *range,
|
||||
ability_info,
|
||||
|
@ -484,6 +484,7 @@ pub struct ActionState {
|
||||
pub counter: f32,
|
||||
pub condition: bool,
|
||||
pub int_counter: u8,
|
||||
pub initialized: bool,
|
||||
}
|
||||
|
||||
impl Agent {
|
||||
|
@ -58,7 +58,7 @@ pub enum AuraChange {
|
||||
}
|
||||
|
||||
/// Used by the aura system to filter entities when applying an effect.
|
||||
#[derive(Clone, Debug, Deserialize, Serialize)]
|
||||
#[derive(Copy, Clone, Debug, Deserialize, Serialize)]
|
||||
pub enum AuraTarget {
|
||||
/// Targets the group of the entity specified by the `Uid`. This is useful
|
||||
/// for auras which should only affect a player's party.
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user