Train-of-Thought/Assets/Scripts/GroundItem.cs
Gerard Gascón 862afc9b7a init
2025-04-24 16:56:52 +02:00

39 lines
1 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GroundItem : MonoBehaviour
{
public float Radius;
public GameObject selfPrefab;
GameObject target;
void Start()
{
target = findPlayer();
}
// Update is called once per frame
void Update()
{
Vector3 Dist = target.transform.position - gameObject.transform.position;
if ((Dist).magnitude <= Radius) {
Rigidbody2D rb = gameObject.GetComponent<Rigidbody2D>();
rb.AddForce(Dist.normalized * rb.mass * Mathf.Sqrt(Dist.magnitude) * 3);
if ((Dist).magnitude <= 1) {
Inventory.addItem(selfPrefab);
Object.Destroy(gameObject);
}
}
}
GameObject findPlayer() {
GameObject returnObj = null;
foreach(GameObject go in Object.FindObjectsOfType<GameObject>()) {
if (go.name.Equals("Player")) {
returnObj = go;
break;
}
}
return returnObj;
}
}