Store script from GetComponent ?
Hi All,
Trying to figure out how to store a script from GetComponent.
For example:
private gameobject storeHere;
void Start ()
{
storeHere: gameObject.GetComponent<ThisComponent>();
}
But this doesn't work, because it's not a gameobject obviously... it's a script...But what can I store a script in ?
Cheers !
Question is not clear. Do you want to get a script from a game object or add and get the script from the game object cause you have declared gameobject private. and you should use private GameObject storeHere;
.
I want to just get a script from a game object. The issue with Gameobject is that it just returns: The type or namespace name Gameobject could not be found.
Answer by Baste · Nov 17, 2015 at 12:11 PM
If you want to store a variable of the type ThisComponent, the variable needs the type ThisComponent:
private ThisComponent storeHere;
void Start() {
storeHere = GetComponent<ThisComponent>();
}
Note that gameObject.GetComponent is not neccessary, it does the same thing as just GetComponent.
If by ThisComponent you mean the current MonoBehaviour, you don't need to store it, ever, as it's available through the keyword 'this'.
If you want to store reference to a script, but don't know the exact type of the script, you're looking for the class MonoBehaviour, as that's what all of the scripts that you can attach to GameObjects inherit from. So that'd be:
private MonoBehaviour storeHere;
Though that's unlikely, as you won't have access to any of the methods or variables defined in the script.
I think in JS you need a dot after GetComponent.
storeHere = GetComponent.<ThisComponent>();
Since they're writing
void Start()
ins$$anonymous$$d of
function Start()
I'm assu$$anonymous$$g the question's about C#. But, yeah, UnityScript has the absurd extra dot for some reason.
This worked like a charm ! Thanks a lot for your help and explanations. Very clear and extremely helpful.
Your answer
Follow this Question
Related Questions
I need quick help with my C# code GetComponent! 1 Answer
GetComponent is not a member of Object 0 Answers
How do I run an animation then destroy a game object? 1 Answer
GameObject changes to None in inspector after pressing Play 0 Answers
How to enable and disable a script on an game object by pressing a keyboard button? 1 Answer