I have this health script which I have somewhat edited to have a 4 second delay before respawning> Anyway Because each of the players use this same health script I can reference each player’s movement script induvidually. Is there a variable that allows me to reference the player’s movement script like I would do wit ha normal gameObject variable and then just drag it in the editor from there?
Here’s the script:
var PointCube : Transform;
var spawneffect : Transform;
var deatheffect : Transform;
var deathcam : Transform;
var playercollider : Collider;
var PlayerDamageTrigger : Collider;
//Reference player movement script
//refence player turning script
var GunHolder : GameObject;
var playerPhysics : Rigidbody;
var PlayerCam : GameObject;
var SpawnPoints: Transform[];
var respawn : boolean = false;
var health:float = 90;
var healthText : UI.Text;
function Damage(dmg:float){
health -= dmg;
}
function Update (){
if(healthText)healthText.text = health.ToString();
if(health <=0){
Instantiate (deatheffect,transform.position,transform.rotation);
Instantiate (PointCube,transform.position,transform.rotation);
Instantiate (deathcam,transform.position,transform.rotation);
//disable player movmenet script
//disable player turning script
playercollider.enabled = false;
PlayerDamageTrigger.enabled = false;
playerphysics.enabled = false;
PlayerCam.gameObject.active false;
GunHolder.gameObect.active = false;
Respawn();
}
}
function Respawn(){
yield WaitForSeconds(3);
var spawnPointID: float = Random.Range(0, SpawnPoints.length);
transform.position = SpawnPoints[spawnPointID].position;
Instantiate (spawneffect,transform.position,transform.rotation);
var audio: AudioSource = GetComponent.<AudioSource>();
audio.Play();
audio.Play(44100);
//enable player movmenet script
//enable player turning script
playercollider.enabled = true;
PlayerDamageTrigger.enabled = true;
playerphysics.enabled = true;
PlayerCam.gameObject.active true;
GunHolder.gameObect.active = true;
health = 100;
}