Ok so now my problem is about loading levels. if you scroll down to the die function it is supposed to load the nextLevel and then increase nextlevel bu one so that next time it loads the level after this one. But it keeps loading the same level over and over. I have added all levels to build settings in order.
var target;
//target = transform.Find("Character");
var damp : int = 3;
var attackRange = 3; // safe distance from the player
var followRange = 50; //distance required for enemy to start following
var bulletPrefab : Transform;
var savedTime = 0;
var explosionPrefab : Transform;
var killsNeeded = 10;
var nextLevel = 2;
var shootSound : AudioClip;
var dieSound : AudioClip;
var hitPoints = 3;
function Update ()
{
target = GameObject.FindWithTag("Player");
if((followRange > Vector3.Distance(target.transform.position, transform.position )) && (attackRange != Vector3.Distance(target.transform.position, transform.position ))) // if the enemy is closer than the follow range
{
follow(target);
}
var seconds : int = Time.time;
var oddeven = (seconds % 2);
if ((attackRange >= Vector3.Distance(target.transform.position, transform.position )) &&(oddeven))
Shoot(seconds);
}
function follow(target)
{
if( attackRange < Vector3.Distance(target.transform.position, transform.position)) //if enemy is farther than attack range
{
transform.LookAt(target.transform); //look at target
transform.Translate (0,0,6*Time.deltaTime, Space.Self ); //move towards target
}
}
function Shoot(seconds)
{
if(seconds != savedTime)
{
audio.PlayOneShot(shootSound);
var shoot = Instantiate(bulletPrefab, transform.Find("BulletSpawn").transform.position, Quaternion.identity);
shoot.gameObject.tag = "enemyProjectile";
shoot.rigidbody.AddForce(transform.forward * 1000);
savedTime = seconds;
}
}
function OnTriggerEnter(hit : Collider)
{
if(hit.gameObject.tag == "fallout")
{
Die();
}
if(hit.gameObject.tag == "playerProjectile")
{
hitPoints -= 1;
//Destroy(hit.gameObject);
if(hitPoints < 1)
{
Die();
}
}
}
function Die()
{
audio.PlayOneShot(dieSound);
MoveAround.kills++;
botMaker.AlienCount--;
//MoveAround.scored = true;
if (MoveAround.kills >= killsNeeded)
{
Application.LoadLevel(nextLevel);
healthControl = 6;
MoveAround.kills = 0;
botMaker.AlienCount = 0;
nextLevel++;
}
Destroy(gameObject);
var explode = Instantiate(explosionPrefab, gameObject.transform.position, Quaternion.identity);
}
asked
Mar 29 '11 at 08:54 PM
networkZombie
244
●
9
●
11
●
20