I’m having a little trouble making this work. No emission appears. I have tried using different functions for particle systems. And for some reason I cannot use particle emitter. Here is my code, someone please help! I’m trying to give the effect that a spaceship is shooting, but it needs to be timed so I can adjust it using the variables whenever.
using UnityEngine;
using System.Collections;
public class simplenothingshoot : MonoBehaviour {
public ParticleSystem leftgun;
public ParticleSystem rightgun;
public float ShootTimer = 0;
public float ShootCooler = 0.9f;
public float beamFlashCooler = 0.5f;
public float beamFlashTimer = 0;
public float KeyCooler = 1;
public float KeyTimer = 0;
// Use this for initialization
void Start () {
leftgun.enableEmission = false;
rightgun.enableEmission = false;
}
// Update is called once per frame
void Update () {
if( KeyTimer > 0){
KeyTimer -= Time.deltaTime;
}
if( KeyTimer < 0){
KeyTimer = 0;
}
if( beamFlashTimer > 0){
beamFlashTimer -= Time.deltaTime;
BeamFlashShow();
}
if( beamFlashTimer < 0){
beamFlashTimer = 0;
}
if(ShootTimer > 0){
ShootTimer -= Time.deltaTime;
}
if( ShootTimer < 0){
ShootTimer = 0;
}
if(KeyTimer == 0){
if(Input.GetMouseButtonDown(0)){
if( ShootTimer == 0){
ShootTimer = ShootCooler;
KeyTimer = KeyCooler;
}
if( beamFlashTimer == 0 ){
BeamFlashShow();
beamFlashTimer = beamFlashCooler;
}
}
}
}
void BeamFlashShow(){
if( beamFlashTimer > 0){
leftgun.enableEmission = false;
rightgun.enableEmission = false;
}
if( beamFlashTimer == beamFlashCooler){
leftgun.enableEmission = true;
rightgun.enableEmission = true;
}
}
}