| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class PortalsController : MonoBehaviour
- {
- public PortalsController targetPortal;
- public List<Rigidbody> rbs = new List<Rigidbody>();
- public float TransmitCD;
- private void OnTriggerEnter(Collider other)
- {
- BeSearchTrigger beSearchTrigger = other.GetComponent<BeSearchTrigger>();
- if (beSearchTrigger != null)
- {
- Rigidbody rb = beSearchTrigger.GetComponentInParent<Rigidbody>();
- AddPortal(rb);
- return;
- }
- Bullet bullet = other.GetComponent<Bullet>();
- if(bullet != null)
- {
- Rigidbody rb = bullet.GetComponentInParent<Rigidbody>();
- AddPortal(rb);
- }
- }
-
- public void AddPortal(Rigidbody rb)
- {
- if (!targetPortal.rbs.Exists(t => t == rb))
- {
- if (!rbs.Exists(t => t == rb))
- {
- rbs.Add(rb);
- Vector3 targetPos = targetPortal.transform.position;
- targetPos.y += rb.transform.position.y - transform.position.y;
- rb.transform.position = targetPos;
- }
- }
- }
-
- }
|