more improvements

This commit is contained in:
Alula 2022-04-01 18:55:51 +02:00
parent c9ee079318
commit e72e0080d1
No known key found for this signature in database
GPG Key ID: 3E00485503A1D8BA
4 changed files with 23 additions and 23 deletions

View File

@ -189,7 +189,7 @@ impl Player {
} }
fn tick_normal(&mut self, state: &mut SharedGameState, npc_list: &NPCList) -> GameResult { fn tick_normal(&mut self, state: &mut SharedGameState, npc_list: &NPCList) -> GameResult {
if !state.control_flags.interactions_disabled() && state.control_flags.control_enabled() { // if !state.control_flags.interactions_disabled() && state.control_flags.control_enabled() {
if self.equip.has_air_tank() { if self.equip.has_air_tank() {
self.air = 1000; self.air = 1000;
self.air_counter = 0; self.air_counter = 0;
@ -214,7 +214,7 @@ impl Player {
self.air_counter -= 1; self.air_counter -= 1;
} }
} }
} // }
if self.cond.hidden() { if self.cond.hidden() {
return Ok(()); return Ok(());
@ -228,11 +228,11 @@ impl Player {
self.question = false; self.question = false;
if !state.control_flags.control_enabled() { // if !state.control_flags.control_enabled() {
self.booster_switch = BoosterSwitch::None; self.booster_switch = BoosterSwitch::None;
} // }
if state.control_flags.control_enabled() { // if state.control_flags.control_enabled() {
if self.controller.trigger_strafe() { if self.controller.trigger_strafe() {
if self.controller.move_up() { if self.controller.move_up() {
self.strafe_up = true; self.strafe_up = true;
@ -240,9 +240,9 @@ impl Player {
} else if !self.controller.strafe() { } else if !self.controller.strafe() {
self.strafe_up = false; self.strafe_up = false;
} }
} else { // } else {
self.strafe_up = false; // self.strafe_up = false;
} // }
// ground movement // ground movement
if self.flags.hit_bottom_wall() || self.flags.hit_right_slope() || self.flags.hit_left_slope() { if self.flags.hit_bottom_wall() || self.flags.hit_right_slope() || self.flags.hit_left_slope() {
@ -256,7 +256,7 @@ impl Player {
self.booster_fuel = 0; self.booster_fuel = 0;
} }
if state.control_flags.control_enabled() { // if state.control_flags.control_enabled() {
let trigger_only_down = self.controller.trigger_down() let trigger_only_down = self.controller.trigger_down()
&& !self.controller.trigger_up() && !self.controller.trigger_up()
&& !self.controller.trigger_left() && !self.controller.trigger_left()
@ -295,7 +295,7 @@ impl Player {
} }
} }
} }
} // }
if !self.cond.increase_acceleration() { if !self.cond.increase_acceleration() {
if self.vel_x < 0 { if self.vel_x < 0 {
@ -736,8 +736,8 @@ impl Player {
self.skin.set_state(PlayerAnimationState::Examining); self.skin.set_state(PlayerAnimationState::Examining);
self.anim_num = 0; self.anim_num = 0;
self.anim_counter = 0; self.anim_counter = 0;
} else if state.control_flags.control_enabled() } else if /*state.control_flags.control_enabled()
&& (self.controller.move_up() || self.strafe_up) &&*/ (self.controller.move_up() || self.strafe_up)
&& (self.controller.move_left() || self.controller.move_right()) && (self.controller.move_left() || self.controller.move_right())
{ {
self.cond.set_fallen(true); self.cond.set_fallen(true);
@ -756,8 +756,8 @@ impl Player {
if self.anim_num > 9 || self.anim_num < 6 { if self.anim_num > 9 || self.anim_num < 6 {
self.anim_num = 6; self.anim_num = 6;
} }
} else if state.control_flags.control_enabled() } else if /*state.control_flags.control_enabled()
&& (self.controller.move_left() || self.controller.move_right()) &&*/ (self.controller.move_left() || self.controller.move_right())
{ {
self.cond.set_fallen(true); self.cond.set_fallen(true);
self.skin.set_state(PlayerAnimationState::Walking); self.skin.set_state(PlayerAnimationState::Walking);

View File

@ -591,12 +591,12 @@ impl SharedGameState {
pub fn reset(&mut self) { pub fn reset(&mut self) {
self.control_flags.0 = 0; self.control_flags.0 = 0;
self.game_flags = bitvec::bitvec![0; 8000]; // self.game_flags = bitvec::bitvec![0; 8000];
self.fade_state = FadeState::Hidden; self.fade_state = FadeState::Hidden;
self.game_rng = XorShift::new(0); self.game_rng = XorShift::new(0);
self.teleporter_slots.clear(); // self.teleporter_slots.clear();
self.quake_counter = 0; // self.quake_counter = 0;
self.carets.clear(); // self.carets.clear();
self.textscript_vm.set_mode(ScriptMode::Map); self.textscript_vm.set_mode(ScriptMode::Map);
self.textscript_vm.suspend = true; self.textscript_vm.suspend = true;
} }
@ -660,7 +660,7 @@ impl SharedGameState {
} }
pub fn reset_skip_flags(&mut self) { pub fn reset_skip_flags(&mut self) {
self.skip_flags = bitvec::bitvec![0; 64]; // self.skip_flags = bitvec::bitvec![0; 64];
} }
pub fn set_skip_flag(&mut self, id: usize, value: bool) { pub fn set_skip_flag(&mut self, id: usize, value: bool) {

View File

@ -490,7 +490,7 @@ impl OrgPlaybackEngine {
InterpolationMode::Linear => { InterpolationMode::Linear => {
let (sl1, sr1) = get_sample(buf, pos); let (sl1, sr1) = get_sample(buf, pos);
let (sl2, sr2) = get_sample(buf, min(pos + 1, buf.base_pos + buf.len - 1)); let (sl2, sr2) = get_sample(buf, min(pos + 1, buf.base_pos + buf.len - 1));
let r1 = buf.position.fract() as f32; let r1 = 1.0 - buf.position.fract() as f32;
let sl = sl1 + (sl2 - sl1) * r1; let sl = sl1 + (sl2 - sl1) * r1;
let sr = sr1 + (sr2 - sr1) * r1; let sr = sr1 + (sr2 - sr1) * r1;
@ -548,8 +548,8 @@ impl OrgPlaybackEngine {
let xl = (*frame_l ^ 0x8000) as i16; let xl = (*frame_l ^ 0x8000) as i16;
let xr = (*frame_r ^ 0x8000) as i16; let xr = (*frame_r ^ 0x8000) as i16;
*frame_l = xl.saturating_add(sl as i16) as u16 ^ 0x7995; *frame_l = xl.saturating_add(sl as i16) as u16 ^ 0x8000;
*frame_r = xr.saturating_add(sr as i16) as u16 ^ 0x7995; *frame_r = xr.saturating_add(sr as i16) as u16 ^ 0x8000;
} }
} }
} }

View File

@ -168,7 +168,7 @@ impl PixToneParameters {
+ (carrier * (amp + 4096) / 4096 * channel.envelope.evaluate(s(1.0) as i32) / 4096) * 256) + (carrier * (amp + 4096) / 4096 * channel.envelope.evaluate(s(1.0) as i32) / 4096) * 256)
.clamp(-32767, 32767) as i16; .clamp(-32767, 32767) as i16;
phase += delta * (1.0 + (freq as f32 / (if freq < 0 { 8192.0 } else { 2048.0 }))); phase += delta * (1.0 + (freq as f32 / (if freq < 0 { 8000.0 } else { 3000.0 })));
} }
} }