Unity Game Essentials Book pg 119

What should the Player Collisions Script look like at this point?

I was doing ok until he mentions going back and deleting the openDoor() and shutDoor() functions.

This is what I have so far:

private var doorIsOpen : boolean = false;
private var doorTimer : float = 0.0;
private var currentDoor : GameObject;

var doorOpenTime : float = 3.0;
var doorOpenSound : AudioClip;
var doorShutSound : AudioClip;

function OnControllerColliderHit(hit: ControllerColliderHit){
if(hit.gameObject.tag == “outpostDoor” doorIsOpen == false){
currentDoor = hit.gameObject;
Door(doorOpenSound, true, “dooropen”, currentDoor);
}

function OpenDoor(){audio.PlayOneShot(doorOpenSound);
doorOpen = true;
var myOutpost : GameObject = GameObject.Find(“outpost”);
myOutpost.animation.Play(“dooropen”);

}

function Update(){
if(doorIsOpen){
doorTimer += Time.deltaTime;

if(doorTimer > 3 ){Door(doorShutSound, false, “doorshut”, currentDoor);
doorTimer = 0.0;
}
}
}

function shutDoor(){
audio.PlayOneShot(doorShutSound);
doorIsOpen = false;
var myOutpost : GameObject = GameObject.Find(“outpost”);
myOutpost.animation.Play(“doorshut”);
}

function Door(aClip : AudioClip, openCheck : boolean, animName :
String, thisDoor : GameObject){
audio.PlayOneShot(aClip);
doorIsOpen = openCheck;
thisDoor.transform.parent.animation.Play(animName);
}

Well to be honest I’m working on chapter 6 and this is what mine looks like so far:

private var doorIsOpen : boolean = false;
private var doorTimer : float = 0.0;
private var currentDoor : GameObject;

var doorOpenTime : float = 3.0;
var doorOpenSound : AudioClip;
var doorShutSound : AudioClip;
var batteryCollect : AudioClip;

function Update () {
if (doorIsOpen) {
doorTimer += Time.deltaTime;

if (doorTimer > doorOpenTime) {
Door(doorShutSound, false, “doorshut”, currentDoor);
doorTimer = 0.0;
}
}

var hit : RaycastHit;

if (Physics.Raycast (transform.position, transform.forward, hit, 5)) {
if (hit.collider.gameObject.tag == “outpostDoor” doorIsOpen == false BatteryCollect.charge >= 4) {
currentDoor = hit.collider.gameObject;
Door (doorOpenSound, true, “dooropen”, currentDoor);

GameObject.Find(“Battery GUI”).GetComponent (GUITexture).enabled=false;
}else if (hit.collider.gameObject.tag==“outpostDoor” doorIsOpen == false BatteryCollect.charge < 4) {
GameObject.Find(“Battery GUI”) .GetComponent (GUITexture) .enabled = true;
TextHints.message = “The door seems to need more power…”;
TextHints.textOn = true;

}

}

}

/*
function OnControllerColliderHit ( hit : ControllerColliderHit) {

if (hit.gameObject.tag == “outpostDoor” doorIsOpen == false) {
currentDoor = hit.gameObject;
Door(doorOpenSound, true, “dooropen”, currentDoor);
}
}
*/
function Door(aClip : AudioClip, openCheck : boolean, animName : String, thisDoor : GameObject) {
audio.PlayOneShot(aClip);
doorIsOpen = openCheck;
thisDoor.transform.parent.animation.Play(animName);
}

function OnTriggerEnter (collisionInfo : Collider) {

if (collisionInfo.gameObject.tag == “battery”) {
BatteryCollect.charge++;
audio.PlayOneShot (batteryCollect);
Destroy (collisionInfo.gameObject);
}
}

@script RequireComponent (AudioSource)