protected virtual void Move() { // Lock move X during climbing. if (climb) { horizontalMove = 0; } // Fixed stuck wall in air. if (!charactorController.grounded && IsFacingWall()) { bool facingRight = charactorController.facingRight; if (horizontalMove > 0 && facingRight || horizontalMove < 0 && !facingRight) { horizontalMove = 0; } } // Fixed standing during crouch and has ceiling over head. bool nextCrouch = crouch; if (charactorController.wasCrouching && charactorController.ceiling) { nextCrouch = true; } charactorController.Move(horizontalMove * Time.fixedDeltaTime, nextCrouch, jump); }
private void FixedUpdate() { if (PhotonNetwork.IsConnected && !photonView.IsMine) { return; } #region On-screen jumping //Onscreen input if (controllerListener != null) { if (controllerListener.GetJumpDown()) { jump = true; } } #endregion //Move player controller.Move(horizontalMove * Time.fixedDeltaTime, false, jump); jump = false; }
private void FixedUpdate() { controller2D.Move(horizontal * moveSpeed * Time.deltaTime, isCrouching, isJumping); }
void FixedUpdate() { charactorController.Move(horizontalMove * Time.fixedDeltaTime, crouch, jump); // Raycast for ladder climbing RaycastHit2D topHit = Physics2D.Raycast(transform.position, Vector2.up, rayUpDistance, whatIsLadder); if (topHit.collider != null) { GameObject ladder = topHit.collider.gameObject; if (Input.GetKeyDown(KeyCode.W) || Input.GetKeyDown(KeyCode.S) || Input.GetKeyDown(KeyCode.UpArrow) || Input.GetKeyDown(KeyCode.DownArrow)) { gameObject.layer = LayerMask.NameToLayer("Climb"); climb = true; } //if (Input.GetKeyDown(KeyCode.UpArrow) || Input.GetKeyDown(KeyCode.DownArrow)) //{ // gameObject.layer = LayerMask.NameToLayer("Climb"); // climb = true; //} } else { gameObject.layer = LayerMask.NameToLayer("Player"); climb = false; } charactorController.Climb(verticalMove * Time.fixedDeltaTime, climb); RaycastHit2D hit = Physics2D.Raycast(new Vector2(transform.position.x + 0.15f * transform.localScale.x, transform.position.y), Vector2.right * transform.localScale.x, 0.5f, LayerMask.GetMask("Crate")); if (hit) { if (hit.transform.tag == "Crate") { if (Input.GetKey(KeyCode.Return)) { holdCrate = true; if ((transform.localScale.x < 0 && horizontalMove < 0) || (transform.localScale.x > 0 && horizontalMove > 0)) { //Debug.Log(hit.transform.name); hit.rigidbody.AddForce(new Vector2(transform.localScale.x * 20 * Time.deltaTime, 0), ForceMode2D.Force); hit.transform.gameObject.GetComponent <Crate>().ActiveCrate(); } } else { holdCrate = false; } } else { holdCrate = false; } } else { holdCrate = false; } Debug.DrawRay(new Vector2(transform.position.x + (0.15f * transform.localScale.x), transform.position.y), Vector2.right * transform.localScale.x * 0.5f, Color.green); jump = false; }
void FixedUpdate() { m_PlayerController.Move(m_PlayerHorizontalMove, m_PlayerVerticalMove, m_PlayerJump, m_PlayerRun); m_PlayerJump = false; }