- Home /
Where to attach a script?
So I have a game with a bunch of gameObjects that essentially operate as coin-ups. Right now I have the same script attached to each of the gameObjects so that when the character collides the script activates. I am working through Goldstones book, and I think it is saying that rather than having the script attached to the gameObject, I should swap the tagging and attach to the script to the character, instead. Does it really make a difference? Although it is attached to a couple dozen gameObjects, it is still the same script, so if I need to change it, I can still change one script, instead of having to change all 2 dozen.
Here is the script, though I don't know if matters on this questions:
var Body : GameObject;
var Sound : AudioClip;
function Start () {
Body = GameObject.Find("Body"); if (Body == null) { Debug.Log ("No Object Named Body"); } }
function OnTriggerEnter(collisionInfo : Collider) {
if(gameObject.tag == "Body"); AudioSource.PlayClipAtPoint(Sound, transform.position); Game.Timer +=1; Destroy (gameObject); }
Answer by ruben_hiet · Nov 16, 2012 at 08:46 AM
Its indeed better to place it on the character or something because you only have 1 script indeed. Now 2 dozen of object are checking if they collide. if you place it on your player only 1 object/script is checking that collision. you can just ask up the colliding object and then activate the sound effect on that object so you will have everything the same except 1 object with 1 script causing delay instead of alot of objects.
When you are using update's its really recommended not placing them on to many object but on less as possible.
I think you ment that?
Thanks, Ruben,
That completely makes sense now that you put it look like that!