// Token: 0x0600303B RID: 12347 // RVA: 0x001378C0 File Offset: 0x00135AC0 internal static void smethod_3(List<Keys> list_0) { if (!Class808.GetState()) { return; } Class808.buttonState_1 = Class808.buttonState_0; Class808.buttonState_0 = Class808.wiimoteState_0.ButtonState; Class808.taikoDrumState_1 = Class808.taikoDrumState_0; Class808.taikoDrumState_0 = Class808.wiimoteState_0.TaikoDrumState; if (Class331.bool_0) { Class808.wiimote_0.SetLEDs(Class331.int_0 % 4 == 0, Class331.int_0 % 4 == 1, Class331.int_0 % 4 == 2, Class331.int_0 % 4 == 3); } bool flag = (!Class808.taikoDrumState_1.InnerLeft && Class808.taikoDrumState_0.InnerLeft) || (!Class808.buttonState_1.Down && Class808.buttonState_0.Down); bool flag2 = (!Class808.taikoDrumState_1.InnerRight && Class808.taikoDrumState_0.InnerRight) || (!Class808.buttonState_1.One && Class808.buttonState_0.One); bool flag3 = (!Class808.taikoDrumState_1.OuterLeft && Class808.taikoDrumState_0.OuterLeft) || (!Class808.buttonState_1.Up && Class808.buttonState_0.Up); bool flag4 = (!Class808.taikoDrumState_1.OuterRight && Class808.taikoDrumState_0.OuterRight) || (!Class808.buttonState_1.Two && Class808.buttonState_0.Two); if (!Class802.smethod_0()) { Class802.bool_4 |= flag; Class802.bool_6 |= flag2; Class802.bool_19 |= flag3; Class802.bool_21 |= flag4; Class802.bool_3 |= (Class808.taikoDrumState_0.InnerLeft || Class808.buttonState_0.Down); Class802.bool_5 |= (Class808.taikoDrumState_0.InnerRight || Class808.buttonState_0.One); Class802.bool_18 |= (Class808.taikoDrumState_0.OuterLeft || Class808.buttonState_0.Up); Class802.bool_20 |= (Class808.taikoDrumState_0.OuterRight || Class808.buttonState_0.Two); } OsuModes osuModes_ = Class115.osuModes_1; switch (osuModes_) { case OsuModes.Menu: if ((flag || flag2) && Class115.enum113_0 == Enum113.const_2) { Class62.Mode = PlayModes.Taiko; Class115.smethod_70(OsuModes.SelectPlay, false); Class331.smethod_60("menuhit", 1f, Enum112.flag_5); } if (Class808.buttonState_0.A && Class115.enum113_0 == Enum113.const_2) { Class62.Mode = PlayModes.Taiko; Class115.smethod_70(OsuModes.SelectPlay, false); Class331.smethod_60("menuhit", 1f, Enum112.flag_5); } if (Class808.buttonState_0.B) { list_0.Add(27); } break; case OsuModes.Edit: break; case OsuModes.Play: if (Class808.wiimoteState_0.BalanceBoardState.CenterOfGravity.X < 0f || Class808.buttonState_0.Left) { list_0.Add(Class795.smethod_3(Bindings.FruitsLeft)); } if (Class808.wiimoteState_0.BalanceBoardState.CenterOfGravity.X > 0f || Class808.buttonState_0.Right) { list_0.Add(Class795.smethod_3(Bindings.FruitsRight)); } if (Class808.buttonState_0.A || Class808.buttonState_0.B) { list_0.Add(Class795.smethod_3(Bindings.FruitsDash)); } break; default: if (osuModes_ == OsuModes.SelectPlay) { if (!Class808.taikoDrumState_0.InnerLeft && !Class808.taikoDrumState_0.InnerRight && !Class808.buttonState_0.Two) { if (!Class808.taikoDrumState_1.OuterLeft && !Class808.buttonState_0.Up && !Class808.buttonState_0.Right) { if (Class808.taikoDrumState_1.OuterRight || Class808.buttonState_0.Down || Class808.buttonState_0.Left) { list_0.Add(40); } } else { list_0.Add(38); } } else { list_0.Add(13); } if (Class808.buttonState_0.B || Class808.buttonState_0.One) { list_0.Add(27); } } break; } if (Class808.buttonState_0.Plus || (Class62.bool_11 && Class808.buttonState_0.Up) || Class808.buttonState_0.Right) { list_0.Add(38); } if (Class808.buttonState_0.Minus || (Class62.bool_11 && Class808.buttonState_0.Down) || Class808.buttonState_0.Left) { list_0.Add(40); } if (Class808.buttonState_0.Home) { list_0.Add(27); } if (Class808.buttonState_0.A) { if (Class62.bool_6 && !Class62.bool_11) { list_0.Add(27); return; } if (Class115.osuModes_1 == OsuModes.Play && !Class62.bool_11) { list_0.Add(Class795.smethod_3(Bindings.Skip)); return; } list_0.Add(13); } }
internal static void Update(List <Keys> keys) { if (!GetState()) { return; } buttonStateLast = buttonState; buttonState = State.ButtonState; taikoStateLast = taikoState; taikoState = State.TaikoDrumState; if (AudioEngine.SyncNewBeat) { Wiimote.SetLEDs(AudioEngine.SyncBeat % 4 == 0, AudioEngine.SyncBeat % 4 == 1, AudioEngine.SyncBeat % 4 == 2, AudioEngine.SyncBeat % 4 == 3); } bool il = (!taikoStateLast.InnerLeft && taikoState.InnerLeft) || (!buttonStateLast.Down && buttonState.Down); bool ir = (!taikoStateLast.InnerRight && taikoState.InnerRight) || (!buttonStateLast.One && buttonState.One); bool ol = (!taikoStateLast.OuterLeft && taikoState.OuterLeft) || (!buttonStateLast.Up && buttonState.Up); bool or = (!taikoStateLast.OuterRight && taikoState.OuterRight) || (!buttonStateLast.Two && buttonState.Two); if (!InputManager.ReplayMode) { InputManager.leftButton1i |= il; InputManager.leftButton2i |= ir; InputManager.rightButton1i |= ol; InputManager.rightButton2i |= or; InputManager.leftButton1 |= taikoState.InnerLeft || buttonState.Down; InputManager.leftButton2 |= taikoState.InnerRight || buttonState.One; InputManager.rightButton1 |= taikoState.OuterLeft || buttonState.Up; InputManager.rightButton2 |= taikoState.OuterRight || buttonState.Two; } switch (GameBase.Mode) { case OsuModes.Menu: if (il || ir) { if (GameBase.FadeState == FadeStates.Idle) { Player.Mode = PlayModes.Taiko; GameBase.ChangeMode(OsuModes.SelectPlay); AudioEngine.PlaySamplePositional(@"menuhit"); } } if (buttonState.A) { if (GameBase.FadeState == FadeStates.Idle) { Player.Mode = PlayModes.Taiko; GameBase.ChangeMode(OsuModes.SelectPlay); AudioEngine.PlaySamplePositional(@"menuhit"); } } if (buttonState.B) { keys.Add(Keys.Escape); } break; case OsuModes.SelectPlay: if (taikoState.InnerLeft || taikoState.InnerRight || buttonState.Two) { keys.Add(Keys.Enter); } else if (taikoStateLast.OuterLeft || buttonState.Up || buttonState.Right) { keys.Add(Keys.Up); } else if (taikoStateLast.OuterRight || buttonState.Down || buttonState.Left) { keys.Add(Keys.Down); } if (buttonState.B || buttonState.One) { keys.Add(Keys.Escape); } break; case OsuModes.Play: if (State.BalanceBoardState.CenterOfGravity.X < 0 || buttonState.Left) { keys.Add(BindingManager.For(Bindings.FruitsLeft)); } if (State.BalanceBoardState.CenterOfGravity.X > 0 || buttonState.Right) { keys.Add(BindingManager.For(Bindings.FruitsRight)); } if (buttonState.A || buttonState.B) { keys.Add(BindingManager.For(Bindings.FruitsDash)); } break; } if (buttonState.Plus || (Player.Paused && buttonState.Up || buttonState.Right)) { keys.Add(Keys.Up); } if (buttonState.Minus || (Player.Paused && buttonState.Down || buttonState.Left)) { keys.Add(Keys.Down); } if (buttonState.Home) { keys.Add(Keys.Escape); } if (buttonState.A) { if (Player.Failed && !Player.Paused) { keys.Add(Keys.Escape); } else if (GameBase.Mode == OsuModes.Play && !Player.Paused) { keys.Add(BindingManager.For(Bindings.Skip)); } else { keys.Add(Keys.Enter); } } }