Currently in my game I'm creating clones of enemies and they are supposed to be shooting with specific time variables. I am currently calling the specific name of their object and I'm telling the game to spawn projectiles in front of them as they move. I'll post the code, but they are currently not shooting at all and I was wondering what's going on? My game objects are stored in an array and so the enemy[0] is calling that specific enemy and telling it to shoot.
var enemyProjectile : Transform;
var shootCoolDown : float;
var shootTimer : float; //Records how much time between shots
function shootLazer() {
shootTimer += Time.deltaTime;
if (shootTimer < shootCoolDown) {
return;
}
if(gameObject.name == ("Enemy_Pink(Clone)")) {
shootCoolDown = 1.75;
shootTimer = 0; //Reset Timer
var pinkClone : Transform;
var pinkProjectileOriginX = enemy[0].transform.position.x;
var pinkProjectileOriginY = enemy[0].transform.position.y - 1;
var pinkProjectileOriginZ = enemy[0].transform.position.z;
pinkClone = Instantiate(enemyProjectile, Vector3(pinkProjectileOriginX, pinkProjectileOriginY, pinkProjectileOriginZ), transform.rotation);
pinkClone.rigidbody.AddForce(pinkClone.transform.up * -300);
Destroy(pinkClone.gameObject, 2);
}
if(gameObject.name == ("Enemy_Blue(Clone)")) {
shootCoolDown = 1.5;
shootTimer = 0; //Reset Timer
var blueClone : Transform;
var blueProjectileOriginX = enemy[1].transform.position.x;
var blueProjectileOriginY = enemy[1].transform.position.y - 1;
var blueProjectileOriginZ = enemy[1].transform.position.z;
blueClone = Instantiate(enemyProjectile, Vector3(blueProjectileOriginX, blueProjectileOriginY, blueProjectileOriginZ), transform.rotation);
blueClone.rigidbody.AddForce(blueClone.transform.up * -300);
Destroy(blueClone.gameObject, 2);
}
if(gameObject.name == ("Enemy_Red(Clone)")) {
shootCoolDown = 1.25;
shootTimer = 0; //Reset Timer
var redClone : Transform;
var redProjectileOriginX = enemy[2].transform.position.x;
var redProjectileOriginY = enemy[2].transform.position.y - 1;
var redProjectileOriginZ = enemy[2].transform.position.z;
redClone = Instantiate(enemyProjectile, Vector3(redProjectileOriginX, redProjectileOriginY, redProjectileOriginZ), transform.rotation);
redClone.rigidbody.AddForce(redClone.transform.up * -300);
Destroy(redClone.gameObject, 2);
}
}
↧