//* ────________________________________* //* methods ───────────────────────────────-* //* -----------------------------------------------------------------------* /// <summary>方向ボタンの状態を更新します。</summary> /// /// <param name="state">最新の入力情報。</param> /// <param name="entity">この状態を適用されているオブジェクト。</param> /// <param name="privateMembers"> /// オブジェクトと状態クラスのみがアクセス可能なフィールド。 /// </param> /// <param name="gameTime">前フレームが開始してからの経過時間。</param> protected override void refleshAxis( GamePadState state, CInputXBOX360 entity, CInputXBOX360.CPrivateMembers privateMembers, GameTime gameTime) { privateMembers.axisVector = vectorGetter(state.ThumbSticks); for (int i = buttons.Length; --i >= 0;) { entity.dirInputState[i].refresh(state.IsButtonDown(buttons[i])); } EDirectionFlags axisFlags; CHelper.createVector(entity.dirInputState, out axisFlags); privateMembers.axisFlag = axisFlags; }
//* ────________________________________* //* methods ───────────────────────────────-* //* -----------------------------------------------------------------------* /// <summary>方向ボタンの状態を更新します。</summary> /// /// <param name="state">最新の入力情報。</param> /// <param name="entity">この状態を適用されているオブジェクト。</param> /// <param name="privateMembers"> /// オブジェクトと状態クラスのみがアクセス可能なフィールド。 /// </param> /// <param name="gameTime">前フレームが開始してからの経過時間。</param> protected override void refleshAxis( GamePadState state, CInputXBOX360 entity, CInputXBOX360.CPrivateMembers privateMembers, GameTime gameTime) { GamePadDPad dpad = state.DPad; for (int i = entity.dirInputState.Length; --i >= 0;) { entity.dirInputState[i].refresh(matchList[i](dpad)); } EDirectionFlags axisFlags; Vector2 axisVector; CHelper.createVector(entity.dirInputState, out axisVector, out axisFlags); privateMembers.axisVector = axisVector; privateMembers.axisFlag = axisFlags; }
//* ────________________________________* //* methods ───────────────────────────────-* //* -----------------------------------------------------------------------* /// <summary>方向ボタンの状態を更新します。</summary> /// <remarks>この状態では方向ボタンを持たないので、何も処理しません。</remarks> /// /// <param name="state">最新の入力情報。</param> /// <param name="entity">この状態を適用されているオブジェクト。</param> /// <param name="privateMembers"> /// オブジェクトと状態クラスのみがアクセス可能なフィールド。 /// </param> /// <param name="gameTime">前フレームが開始してからの経過時間。</param> protected override void refleshAxis( GamePadState state, CInputXBOX360 entity, CInputXBOX360.CPrivateMembers privateMembers, GameTime gameTime) { }