trigger spot light to turn on

I want to use main camera to trigger a spot light to come on when I approach and object. What script would I need and what would I attach it to, the trigger object or the camera. Any help would be appreciated

you can add a box collider to your light and mark the trigger on box collider.then create a java script and attach it to your light object. you can write something like this in that script:

function OnTriggerEnter(){
  gameObject.light.enabled = true;

}
function OnTriggerExit(){
  gameObject.light.enabled = false;

}

You'd use a trigger an then implement the method OnTriggerEnter in your MonoBehaviour (which is the class you implement when writing a script, explicitly in C#, implicitly in UnityScript).

You'd probably have a public member variable in that class to assign the light, something like (C#):

public Light lightToSwitch = null;

Then, in your implementation of OnTriggerEnter and OnTriggerExit, simply set enabled true/false:

public void OnTriggerEnter(Collider other) {
    lightToSwitch.enabled = true;
}

public void OnTriggerExit(Collider other) {
    lightToSwitch.enabled = false;
}

You'd attach that object to the object that has the collider for the trigger attached to it.

For some more information on how to set up the colliders / triggers, see Physics in the Unity manual.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TriggerEvent : MonoBehaviour
{
public Light lightBulb = null;

void OnTriggerEnter (Collider other)
{
	if (other.name == "player")
	{
		lightBulb.enabled = true;
	}
	else if (other.name == "player")
	{
		lightBulb.enabled = false;
	}
}

}