Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class PlayerController : MonoBehaviour
- {
- public float movespeed = 5f;
- public Transform movePoint;
- public LayerMask whatStopsMovement;
- // Start is called before the first frame update
- void Start()
- {
- movePoint.parent = null;
- }
- // Update is called once per frame
- void Update()
- {
- transform.position = Vector3.MoveTowards(transform.position, movePoint.position, movespeed * Time.deltaTime);
- if(Vector3.Distance(transform.position, movePoint.position) <= .05f) {
- if(Mathf.Abs(Input.GetAxisRaw("Horizontal")) == 1f) {
- if(!Physics2D.OverlapCircle(movePoint.position + new Vector3(Input.GetAxisRaw("Horizontal"), 0f, 0f), 2f, whatStopsMovement)) {
- movePoint.position += new Vector3(Input.GetAxisRaw("Horizontal"), 0f, 0f);
- }
- }
- if(Mathf.Abs(Input.GetAxisRaw("Vertical")) == 1f) {
- if(!Physics2D.OverlapCircle(movePoint.position + new Vector3(0f, Input.GetAxisRaw("Vertical"), 0f), 2f, whatStopsMovement)) {
- movePoint.position += new Vector3(0f, Input.GetAxisRaw("Vertical"), 0f);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment