Question by
FireBoy420 · Nov 05, 2019 at 01:25 PM ·
movement2d-platformermovement script
character falls through floor help me (box collider for floor, and person rigidbody, circle character&controller)
my character is 2d and falls through the floor, for reference here is my script for character controller:
public class ExampleClass : MonoBehaviour { CharacterController characterController;
public float speed = 6.0f;
public float jumpSpeed = 8.0f;
public float gravity = 20.0f;
private Vector3 moveDirection = Vector3.zero;
void Start()
{
characterController = GetComponent<CharacterController>();
}
void Update()
{
if (characterController.isGrounded)
{
// We are grounded, so recalculate
// move direction directly from axes
moveDirection = new Vector3(Input.GetAxis("Horizontal"), 0.0f, Input.GetAxis("Vertical"));
moveDirection *= speed;
if (Input.GetButton("Jump"))
{
moveDirection.y = jumpSpeed;
}
}
// Apply gravity. Gravity is multiplied by deltaTime twice (once here, and once below
// when the moveDirection is multiplied by deltaTime). This is because gravity should be applied
// as an acceleration (ms^-2)
moveDirection.y -= gravity * Time.deltaTime;
// Move the controller
characterController.Move(moveDirection * Time.deltaTime);
}
},public class PlayerController : MonoBehaviour {
public float moveSpeed = 3f;
float velX;
float velY;
bool facingRight = true;
Rigidbody2D rigBody;
// Start is called before the first frame update
void Start() {
rigBody = GetComponent<Rigidbody2D> ()
}
// Update is called once per frame
void Update() {
velX = Input.GetAxisRaw ("Horizontal");
velY = rigBody.velocity.y;
rigBody.velocity = new Vector2 (velX * moveSpeed, velY);
}
void LateUpdate ()
{
Vector3 localScale = transform.localScale;
if (velX > 0) {
facingRight = true;
} else if (velX < 0)
facingRight = false;
}
if (((facingRight) && (localScale.x < 0)) || ((!facingRight) && (localScale.x > 0))){
localScale.x *= -1;
}
transform.localScale = localScale;
}
}
Comment
Answer by FireBoy420 · Nov 05, 2019 at 01:26 PM
edit: i mean character controller and circle collider in the title
Your answer
Follow this Question
Related Questions
How to make a 2d platformer with a rolling ball as a player? 1 Answer
2D Movement System (Stop Movement on Collision) 1 Answer
2D Platformer, Icy material? 0 Answers
Switching lanes 1 Answer