Синтаксис:
Используется csharp
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Fire : MonoBehaviour
{
public float speed = 10;
public Rigidbody2D bullet;
public Transform gunPoint;
public float fireRate = 1;
public Collider2D col;
float elapsedTime = 0.0f;
void OnTriggerStay2D(Collider2D col)
{
if (col.gameObject.tag == "Enemy")
{
elapsedTime += Time.deltaTime;
if (elapsedTime > fireRate)
{
elapsedTime = 0.0f;
Vector3 direction = gunPoint.position;
Rigidbody2D clone = Instantiate(bullet, gunPoint.position, Quaternion.identity) as Rigidbody2D;
clone.velocity = transform.TransformDirection(gunPoint.right * speed);
clone.transform.right = gunPoint.right;
}
}
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Fire : MonoBehaviour
{
public float speed = 10;
public Rigidbody2D bullet;
public Transform gunPoint;
public float fireRate = 1;
public Collider2D col;
float elapsedTime = 0.0f;
void OnTriggerStay2D(Collider2D col)
{
if (col.gameObject.tag == "Enemy")
{
elapsedTime += Time.deltaTime;
if (elapsedTime > fireRate)
{
elapsedTime = 0.0f;
Vector3 direction = gunPoint.position;
Rigidbody2D clone = Instantiate(bullet, gunPoint.position, Quaternion.identity) as Rigidbody2D;
clone.velocity = transform.TransformDirection(gunPoint.right * speed);
clone.transform.right = gunPoint.right;
}
}
}
}
и всё было бы хорошо, если бы при появлении второго врага в коллайдере турель не начинала бы стрелять в два раза быстрее. Понятия не имею как это исправить, любой помощи буду благодарен.