Merge branch 'expandedreality/energy-regen' into 'master'

Energy now does not regen when climbing,gliding,and swimming

Closes #483

See merge request veloren/veloren!800
This commit is contained in:
Ben Simpson 2020-02-14 01:15:47 +00:00
commit 636bf7d343

View File

@ -1,5 +1,5 @@
use crate::{
comp::{ActionState, CharacterState, Energy, EnergySource, HealthSource, Stats},
comp::{ActionState, CharacterState, Energy, EnergySource, HealthSource, MovementState, Stats},
event::{EventBus, ServerEvent},
state::DeltaTime,
};
@ -97,6 +97,27 @@ impl<'a> System<'a> for Sys {
}
},
}
match character_state.movement {
MovementState::Climb => {
if energy.get_unchecked().regen_rate != 0.0 {
energy.get_mut_unchecked().regen_rate = 0.0
}
},
MovementState::Glide => {
if energy.get_unchecked().regen_rate != 0.0 {
energy.get_mut_unchecked().regen_rate = 0.0
}
},
MovementState::Swim => {
if energy.get_unchecked().regen_rate != 0.0 {
energy.get_mut_unchecked().regen_rate = 0.0
}
},
_ => {
continue;
},
}
}
}
}