Scan to open on your phone
Point a camera at the QR code - it opens this exact paste, no app needed.
https://codepastes.com/zzgsn6swrb6dcghjuntitledPlain Text
using UnityEngine;
[RequireComponent(typeof(CharacterController))]
public class MobilePlayerController : MonoBehaviour
{
public float moveSpeed = 5f;
public float runSpeed = 8f;
public float jumpHeight = 1.5f;
public float gravity = -20f;
public Transform cameraTransform;
private CharacterController controller;
private Vector3 velocity;
private Vector2 moveInput;
private bool jumpRequested;
private bool running;
void Awake()
{
controller = GetComponent<CharacterController>();
}
public void SetMoveInput(Vector2 input)
{
moveInput = Vector2.ClampMagnitude(input, 1f);
}
public void Jump()
{
jumpRequested = true;
}
public void SetRunning(bool value)
{
running = value;
}
void Update()
{
Vector3 forward = cameraTransform
? cameraTransform.forward
: transform.forward;
Vector3 right = cameraTransform
? cameraTransform.right
: transform.right;
forward.y = 0;
right.y = 0;
forward.Normalize();
right.Normalize();
Vector3 move = forward * moveInput.y
+ right * moveInput.x;
float speed = running ? runSpeed : moveSpeed;
controller.Move(move * speed * Time.deltaTime);
if (move.sqrMagnitude > 0.01f)
{
transform.rotation = Quaternion.Slerp(
transform.rotation,
Quaternion.LookRotation(move),
12f * Time.deltaTime
);
}
if (controller.isGrounded && velocity.y < 0)
velocity.y = -2f;
if (jumpRequested && controller.isGrounded)
velocity.y = Mathf.Sqrt(jumpHeight * -2f * gravity);
jumpRequested = false;
velocity.y += gravity * Time.deltaTime;
controller.Move(velocity * Time.deltaTime);
}
}
1,940 chars · codepastes.com