Im making a small game about the Area 51 raid and I want the score increase when I go right and decrease when I go left (going to negative if at 0). With the code I have now, it increases as long as I am moving away from the starting point. I know its increasing because I’m using the Vector2.Distance method, but there isn’t a displacement method, so I can’t figure out what to do. Here is my code and please feel free to make heavy changes to the code if it makes the score work how I want it to. Thanks.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class GameSession : MonoBehaviour
{
[SerializeField] float score = 0;
[SerializeField] Text scoreText;
public Transform player;
// Start is called before the first frame update
void Start()
{
scoreText.text = score.ToString();
transform.position = player.position;
}
// Update is called once per frame
void Update()
{
if (player != null)
{
score = 10 * Mathf.RoundToInt(Vector2.Distance(player.position, transform.position));
scoreText.text = score.ToString();
}
}
}