プログラミング学習日記

プログラミング学習時のメモ帳。

Unity<自機の移動>

間違っている場所あったら優しく教えてね

自機の移動。

左右の矢印キーを押している間のみ一定速度で移動するようにする。

今回は加速度は考えないものとする。

ただし、RigidBodyによる重力場であるとする。

 public float speed;    //inspecterでspeed調整を可能に

 public float JumpPower;

 private float dire; 

 private bool jump  = false ;

 void UpDate ( ){

    Vector3 PlayerV = Player.GetComponent<RigidBody2D>( ).velocity;

    If ( Input.GetKey( KeyCode.rightArrow ) ) {              //GetKeyは押している間true

        dire = 1.0f;

        Player.GetComponent<RigidBody2D>( ).velocity = new Vector3 ( dire * speed , PlayerV.y , 0);

       } else If ( Input.GetKey( KeyCode.leftArrow ) ) {

        dire = -1.0f;

        Player.GetComponent<RigidBody2D>( ).velocity = new Vector3 ( dire * speed , PlayerV.y , 0);

      } else {

        Player.GetComponent<RigidBody2D>( ).velocity = new Vector3 ( 0 , PlayerV.y ,0)

     } 

//ジャンプ操作

if ( Input.GetkeyDown(KeyCode.space) && !jump ){

        Player.GetComponent<RigidBody2D>( ).velocity = new Vector3 ( PlayerV.x , JumpPower , 0 );

    jump = true;

  }

   }

  

    

    

ブログを見ていただきありがとうございました