Acessing function in another script C# - just dont get it - code shown
Hello, I am new to c# and have done lots of reading etc but just cant get my head around this. I have a script on an object ( scriptA ) and I have another on another object (scriptB). I am trying to call a function from scriptA in scriptB. Basically I have a trigger that when collided with needs to call the function on the other object in order to make things happen :) below is a stripped down version of my 2 scripts. Any help would be greatly appreciated. If I hover over " other.StartTheFlock(); " in visual studio I can see the reference in the other script. I think I have to use getcompoment but I am mixed up with how to use it. First my trigger code:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class triggerSpawn : MonoBehaviour {
public globalFlock other;
void OnTriggerEnter(Collider other)
{
if (other.gameObject.tag == "Player")
StartFlockingCode();
}
void StartFlockingCode()
{
other.StartTheFlock(); // function in other script to call
}
}
My spawner code:
using UnityEngine;
using System.Collections;
public class globalFlock : MonoBehaviour {
public void StartTheFlock ()
{
//code here to call from trigger script//
{
}
I think you are confusing yourself with the variable names.
Is your variable
public globalflock other
ever set? because in startflockingCode other refers to the public variable other, not the one you get in onTriggerEnter.
to change this you should set
this.other = other.getComponent<globalFlock>();
in onTriggerEnter (This might be extremely wrong if I don't understand your code correctly; I'm assu$$anonymous$$g the other object in the trigger has a globalFlock script attatched to it)
Answer by Washburn · Mar 18, 2017 at 11:47 AM
HI, thanks for the response :) I have solved the issue. I perhaps didnt explain too well but I didnt set the script reference in the inspector as explained here. I must remember to not skip over stuff. http://answers.unity3d.com/questions/7555/how-do-i-call-a-function-in-another-gameobjects-sc.html
Your answer
Follow this Question
Related Questions
How to enable and disable back game object for ui button after a few seconds? 1 Answer
Particles that follow the Player 0 Answers
Point Generator(based on time) 0 Answers
Pausing script execution until a specific event in another script 1 Answer
Question about triggering an event (Extremely Novice to Programming) 1 Answer