- Home /
This question was
closed Aug 14, 2017 at 07:10 AM by
fafase for the following reason:
Timer question
Question by
ProductDelta · Aug 14, 2017 at 07:08 AM ·
unity 5scripting problemscript.
Slowing or putting a timer on script
I have a block of code that will make my turret shoot when it sees the enemy within a certain distance however it is shooting WAAAAAY too much anyway to slow it down?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class A2Script : MonoBehaviour {
GameObject[] enemies;
public GameObject player;
string Enemytag = "Enemy";
GameObject CurrentTarget;
private Vector3 target;
float count = 1;
public float range = 15;
public Rigidbody projectile;
public GameObject rightGun;
public GameObject leftGun;
void Update () {
MoveTurret();
}
GameObject MoveTurret()
{
enemies = GameObject.FindGameObjectsWithTag(Enemytag);
foreach (GameObject enemy in enemies)
{
float dist = Vector3.Distance(player.transform.position, enemy.transform.position);
float minDistance = Mathf.Infinity;
if (dist < minDistance)
{
Rigidbody clone;
Rigidbody cloneRight;
minDistance = dist;
CurrentTarget = enemy;
target = CurrentTarget.transform.position;
transform.LookAt(new Vector3(target.x, transform.position.y, target.z));
if (minDistance == dist && CurrentTarget == enemy && dist <= range)
{
clone = Instantiate(projectile, rightGun.transform.position, transform.rotation) as Rigidbody;
cloneRight = Instantiate(projectile, leftGun.transform.position, transform.rotation) as Rigidbody;
clone.velocity = transform.TransformDirection(Vector3.forward * 10);
cloneRight.velocity = transform.TransformDirection(Vector3.forward * 10);
}
}
}
return CurrentTarget; }
}
Comment
You're doing it each frame. You need to set a timer to prevent the shooting. There are many ways to do so, just google "Timer in Unity".
Follow this Question
Related Questions
Clickable object not properly working 1 Answer
How can i convert this javascript line to csharp ? 1 Answer
Please help my head is burning from this problem : i have multiple gameobject , same script 1 Answer
Point Counter Works Only Once! 1 Answer
Is their any way to save a particle system when it's not instantiated yet? 2 Answers