パッケージ medipro.object.player

クラス PlayerModel


public class PlayerModel extends GameObjectModel
プレイヤーのモデル.
  • フィールド詳細

    • speedX

      double speedX
      現在の移動速度.
    • speedLimitX

      public double speedLimitX
      最大移動速度.
    • resitX

      public double resitX
      減速度.
    • accX

      public double accX
      加速度.
    • spritesIdleIndex

      int spritesIdleIndex
      移動していない時のスプライトのインデックス.
    • animationIndex

      int animationIndex
      現在のスプライトのインデックス.
    • imagePaths

      String[] imagePaths
      スプライトのパス.
    • animations

      int[] animations
      スプライトのアニメーション.
    • CHANGE_SPRITE_TIME

      static final float CHANGE_SPRITE_TIME
      スプライトのアニメーションの最大切り替え時間. changeSpriteTimerがこの値を超えたらスプライトを切り替える。
      関連項目:
    • direction

      byte direction
      向いている方向.
    • isWalking

      Boolean isWalking
      歩いているかどうか.
    • changeSpriteTimer

      float changeSpriteTimer
      スプライトの切り替え時間を計測するタイマー.
    • isDummies

      public boolean isDummies
      ダミーを持っているかどうか.
    • autoWalkerQueue

      private Queue<AutoWalker> autoWalkerQueue
      自動移動処理のキュー.
  • コンストラクタの詳細

    • PlayerModel

      public PlayerModel(World world)
      プレイヤーのモデルを生成する.
      パラメータ:
      world - オブジェクトが存在するワールド
  • メソッドの詳細

    • getDirection

      public byte getDirection()
      向いている方向を取得する.
      戻り値:
      向いている方向
    • moveRight

      public void moveRight()
      次のフレームで右に移動する. 実際に移動処理が行われるのはupdateMovement()のタイミング. directionisWalkingを更新する.
    • moveLeft

      public void moveLeft()
      次のフレームで左に移動する. 実際に移動処理が行われるのはupdateMovement()のタイミング. directionisWalkingを更新する.
    • update

      public void update(double dt)
      1フレーム分、モデルを更新する.
      パラメータ:
      dt - 前フレームからの経過時間
    • updateAnimation

      public void updateAnimation(double dt)
      1フレーム分、アニメーションを更新する. changeSpriteTimerを更新し、changeSpriteTimeを元にスプライトを切り替える. 速度が考慮され、speedXspeedLimitXに近いほど素早くスプライトが切り替わる.
      パラメータ:
      dt - 前フレームからの経過時間
    • updateMovement

      public void updateMovement(double dt)
      1フレーム分、移動処理を行う. スピードに加速度を加算し、位置を更新する. また、スピードに抵抗を加算する. さらに、スピードの上限を超えないようにする.
      パラメータ:
      dt - 前フレームからの経過時間
    • hasDummies

      public boolean hasDummies()
      ダミーを持っているかどうかを取得する.
      戻り値:
      ダミーを持っているかどうか
    • updateAutoMover

      public boolean updateAutoMover(double dt)
      自動移動処理を行う.
      パラメータ:
      dt - 前フレームからの経過時間
      戻り値:
      自動移動処理が行われたかどうか
    • pushAutoWalker

      public void pushAutoWalker(AutoWalker autoWalker)
      自動移動処理を追加する.
      パラメータ:
      autoWalker - 自動移動処理
    • isPlayerAutoWalking

      public boolean isPlayerAutoWalking()
      自動移動処理が行われているか.
      戻り値:
      自動移動処理が行われているか