//通常時の操作 private void Normal_Controlle() { //しゃがみ if (Input.GetAxisRaw("Vertical") < -0.05f && is_Landing) { if (!is_Squat) { _squat.Squat(); } } else { if (is_Squat) { _squat.Release_Squat(); } } //移動 if (is_Squat) { _transition.Slow_Down(); } else { if (Input.GetAxisRaw("Horizontal") > 0) { _transition.Transition(1); } else if (Input.GetAxisRaw("Horizontal") < 0) { _transition.Transition(-1); } else { _transition.Slow_Down(); } } //アクション無効化 if (can_Action == false) { return; } //ジャンプ操作 Jump(); //近接攻撃、キックの操作 Attack(); //カブトムシに乗る if (input.GetKeyDown(Key.Fly) && BeetlePowerManager.Instance.Get_Beetle_Power() > 0) { _getting_On_Beetle.Get_On_Beetle(); shoot_Time = 0; //ショットのインターバルをリセット is_Buffered_Input = false; //ショットの先行入力をリセット is_Played_Alert = false; //警告音を鳴らしたかどうかをリセット } //落下中重力下げる if (_rigid.velocity.y < -1f) { if (_rigid.gravityScale > default_Gravity - 5f) { _rigid.gravityScale = default_Gravity - 20f; } } else { if (_rigid.gravityScale < default_Gravity - 5f) { _rigid.gravityScale = default_Gravity; } } }
//通常時の操作 private void Normal_Controlle() { //しゃがみ if (Input.GetAxisRaw("Vertical") < -0.05f && is_Landing) { if (!is_Squat) { _squat.Squat(); } } else { if (is_Squat) { _squat.Release_Squat(); } } //移動 if (Input.GetAxisRaw("Horizontal") > 0) { _transition.Transition(1); } else if (Input.GetAxisRaw("Horizontal") < 0) { _transition.Transition(-1); } else { _transition.Slow_Down(); } if (is_Squat) { _transition.Slow_Down(); } //ジャンプ if (input.GetKeyDown(Key.Jump)) { //地面にいるときはそのままジャンプ if (is_Landing) { _jump.Jump(); } //地面から離れている時 else { //数フレーム前に地面にいた時はジャンプする if (leave_Land_Frame_Count < 3) { _jump.Jump(); leave_Land_Frame_Count = 3; } //ボタン押下後数フレーム間着地しないか監視する else { start_Jump_Frame_Count = true; jump_Frame_Count = 0; } } } //ボタン押下後数フレーム以内に着地したときジャンプする if (start_Jump_Frame_Count) { jump_Frame_Count++; if (is_Landing && jump_Frame_Count < 10) { _jump.Jump(); start_Jump_Frame_Count = false; jump_Frame_Count = 0; } } //地面から離れた後のフレームカウントする if (is_Landing) { leave_Land_Frame_Count = 0; } else { leave_Land_Frame_Count++; } //減速 if (input.GetKeyUp(Key.Jump)) { _jump.Slow_Down(); } //近接攻撃 Attack(); //カブトムシに乗る if (input.GetKeyDown(Key.Fly) && BeetlePowerManager.Instance.Get_Beetle_Power() > 0) { _getting_On_Beetle.Get_On_Beetle(); is_Played_Alert = false; //警告音を鳴らしたかどうかをリセット } //落下中重力下げる if (_rigid.velocity.y < -1f) { if (_rigid.gravityScale > default_Gravity - 5f) { _rigid.gravityScale = default_Gravity - 20f; } } else { if (_rigid.gravityScale < default_Gravity - 5f) { _rigid.gravityScale = default_Gravity; } } }