/// <summary> /// 初期化 /// </summary> public void Init(MainSceneManager sceneManager) { _frameMoveFlg = MoveFlg.kNone; _initFlg = true; _basketFlg = false; _sceneManager = sceneManager; SetBasket(); }
/// <summary> /// キー入力 /// </summary> private void InputKey() { _moveFlg = MoveFlg.kNone; if (Input.GetKey(KeyCode.A)) { _moveFlg = MoveFlg.kLeft; } else if (Input.GetKey(KeyCode.D)) { _moveFlg = MoveFlg.kRight; } // スペースキー // if(Input.GetKey(KeyCode.Space) && !_jumpFlg && _groundFlg){ // _jumpFlg = true; // _groundFlg = false; // _jumpRate = 10.0f; // } PositionUpdate(); }
/// <summary> /// 座標更新 /// </summary> private void PositionUpdate() { switch (_moveFlg) { case MoveFlg.kLeft: Debug.Log("left"); //_rigid2D.position += Vector2.left * kMoveSpeed * Time.deltaTime; transform.position += Vector3.left * kMoveSpeed * Time.deltaTime; // 移動制限 if (transform.position.x < -210.0f) { var vector = transform.position; vector.x = -210.0f; transform.position = vector; } if (_moveFlg != _frameMoveFlg) { _animator.enabled = true; _animator.Play("LeftMove"); } if (_basketFlg) { _basket.CheckMove(Vector2.left * kMoveSpeed * Time.deltaTime); } break; case MoveFlg.kRight: //_rigid2D.position += Vector2.right * kMoveSpeed * Time.deltaTime; transform.position += Vector3.right * kMoveSpeed * Time.deltaTime; // 移動制限 if (transform.position.x > 210.0f) { var vector = transform.position; vector.x = 210.0f; transform.position = vector; } if (_moveFlg != _frameMoveFlg) { _animator.enabled = true; _animator.Play("RightMove"); } if (_basketFlg) { _basket.CheckMove(Vector2.right * kMoveSpeed * Time.deltaTime); } break; default: _animator.enabled = false; break; } if (_jumpFlg) { Debug.Log("jump"); transform.localPosition += Vector3.up * kMoveSpeed / 2.0f * _jumpRate * Time.deltaTime; _jumpRate -= 0.5f; // ジャンプのエネルギーを与える } _frameMoveFlg = _moveFlg; if (_basketParent != null) { _basketParent.transform.position = transform.position - new Vector3(0.0f, 5.0f, 0.0f); _basketParent.UpdateRotate(); } }