- Home /
Activate Trigger HELP
I am following this tutorial >>>>> (http://www.youtube.com/watch?v=Dbr-AoG5plk)
Around half way through, he goes to choose an 'Activate Trigger' script, but I cannot seem to find it anywhere. Does anyone know what script he is using? Maybe a link?
Thanks.
Answer by aldonaletto · May 20, 2012 at 01:34 PM
ActivateTrigger.cs is part of the Scripts package, and should appear in the Component/Scripts menu. You can either import the Scripts package (Assets/Import Package...) or copy the full script from below:
using UnityEngine;
public class ActivateTrigger : MonoBehaviour { public enum Mode { Trigger = 0, // Just broadcast the action on to the target Replace = 1, // replace target with source Activate = 2, // Activate the target GameObject Enable = 3, // Enable a component Animate = 4, // Start animation on target Deactivate= 5 // Decativate target GameObject }
/// The action to accomplish
public Mode action = Mode.Activate;
/// The game object to affect. If none, the trigger work on this game object
public Object target;
public GameObject source;
public int triggerCount = 1;///
public bool repeatTrigger = false;
void DoActivateTrigger () {
triggerCount--;
if (triggerCount == 0 || repeatTrigger) {
Object currentTarget = target != null ? target : gameObject;
Behaviour targetBehaviour = currentTarget as Behaviour;
GameObject targetGameObject = currentTarget as GameObject;
if (targetBehaviour != null)
targetGameObject = targetBehaviour.gameObject;
switch (action) {
case Mode.Trigger:
targetGameObject.BroadcastMessage ("DoActivateTrigger");
break;
case Mode.Replace:
if (source != null) {
Object.Instantiate (source, targetGameObject.transform.position, targetGameObject.transform.rotation);
DestroyObject (targetGameObject);
}
break;
case Mode.Activate:
targetGameObject.active = true;
break;
case Mode.Enable:
if (targetBehaviour != null)
targetBehaviour.enabled = true;
break;
case Mode.Animate:
targetGameObject.animation.Play ();
break;
case Mode.Deactivate:
targetGameObject.active = false;
break;
}
}
}
void OnTriggerEnter (Collider other) {
DoActivateTrigger ();
}
}
Hey, dude.. would you please tell me why this default script goes wrong when I export my game? Thanks!
It's just showed me "Assets/Standard Assets/Scripts/General Scripts/ActivateTrigger.cs(43,58): warning CS0618: UnityEngine.GameObject.active' is obsolete:
GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.' "
Your answer
Follow this Question
Related Questions
Light animation and Main Menu animation at same time from 1 trigger 0 Answers
Need help with Animations 1 Answer
Looping animation while key down 1 Answer
How do I activate an animation when a gameobject enter the Collider of the other animated object 2 Answers
Trigger plus Key Activation. 0 Answers