diff --git a/src/player/mod.rs b/src/player/mod.rs index cfde63e..332d1ba 100644 --- a/src/player/mod.rs +++ b/src/player/mod.rs @@ -189,7 +189,7 @@ impl Player { } 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() { self.air = 1000; self.air_counter = 0; @@ -214,7 +214,7 @@ impl Player { self.air_counter -= 1; } } - } + // } if self.cond.hidden() { return Ok(()); @@ -228,11 +228,11 @@ impl Player { self.question = false; - if !state.control_flags.control_enabled() { + // if !state.control_flags.control_enabled() { 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.move_up() { self.strafe_up = true; @@ -240,9 +240,9 @@ impl Player { } else if !self.controller.strafe() { self.strafe_up = false; } - } else { - self.strafe_up = false; - } + // } else { + // self.strafe_up = false; + // } // ground movement 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; } - if state.control_flags.control_enabled() { + // if state.control_flags.control_enabled() { let trigger_only_down = self.controller.trigger_down() && !self.controller.trigger_up() && !self.controller.trigger_left() @@ -295,7 +295,7 @@ impl Player { } } } - } + // } if !self.cond.increase_acceleration() { if self.vel_x < 0 { @@ -736,8 +736,8 @@ impl Player { self.skin.set_state(PlayerAnimationState::Examining); self.anim_num = 0; self.anim_counter = 0; - } else if state.control_flags.control_enabled() - && (self.controller.move_up() || self.strafe_up) + } else if /*state.control_flags.control_enabled() + &&*/ (self.controller.move_up() || self.strafe_up) && (self.controller.move_left() || self.controller.move_right()) { self.cond.set_fallen(true); @@ -756,8 +756,8 @@ impl Player { if self.anim_num > 9 || self.anim_num < 6 { self.anim_num = 6; } - } else if state.control_flags.control_enabled() - && (self.controller.move_left() || self.controller.move_right()) + } else if /*state.control_flags.control_enabled() + &&*/ (self.controller.move_left() || self.controller.move_right()) { self.cond.set_fallen(true); self.skin.set_state(PlayerAnimationState::Walking); diff --git a/src/shared_game_state.rs b/src/shared_game_state.rs index c467090..8c04d3d 100644 --- a/src/shared_game_state.rs +++ b/src/shared_game_state.rs @@ -591,12 +591,12 @@ impl SharedGameState { pub fn reset(&mut self) { 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.game_rng = XorShift::new(0); - self.teleporter_slots.clear(); - self.quake_counter = 0; - self.carets.clear(); + // self.teleporter_slots.clear(); + // self.quake_counter = 0; + // self.carets.clear(); self.textscript_vm.set_mode(ScriptMode::Map); self.textscript_vm.suspend = true; } @@ -660,7 +660,7 @@ impl SharedGameState { } 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) { diff --git a/src/sound/org_playback.rs b/src/sound/org_playback.rs index ce951fe..4007c80 100644 --- a/src/sound/org_playback.rs +++ b/src/sound/org_playback.rs @@ -490,7 +490,7 @@ impl OrgPlaybackEngine { InterpolationMode::Linear => { let (sl1, sr1) = get_sample(buf, pos); 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 sr = sr1 + (sr2 - sr1) * r1; @@ -548,8 +548,8 @@ impl OrgPlaybackEngine { let xl = (*frame_l ^ 0x8000) as i16; let xr = (*frame_r ^ 0x8000) as i16; - *frame_l = xl.saturating_add(sl as i16) as u16 ^ 0x7995; - *frame_r = xr.saturating_add(sr 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 ^ 0x8000; } } } diff --git a/src/sound/pixtone.rs b/src/sound/pixtone.rs index 0fdc676..b1888e8 100644 --- a/src/sound/pixtone.rs +++ b/src/sound/pixtone.rs @@ -168,7 +168,7 @@ impl PixToneParameters { + (carrier * (amp + 4096) / 4096 * channel.envelope.evaluate(s(1.0) as i32) / 4096) * 256) .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 }))); } }