- Home /
how to access variables in a function script attached to a clone
hi, i have instantiated a lot of clones (stars), which i have initiated each (on instatiation) with variables for an individual 'starnumber and a 'starrandomnumber', which are contained in a function called "initiate", which is in the script ("Initiatestar") which is attached to the clone. That works fine, but when i want to select a star with a raycast, i need to be able to access the individual star ID and random number, so i can use those to identift the star , and in another function. i can do the raycast, access the script, and the function, but not the variables in the function. Im not sure if this is possible. i dont need to change their values, just read them. how do i do this?
i dont know if there is a better way to instantiate a clone with some associated variables that can be used to identify them individually. the way ive done it is:
instantiate the clone, (which has a script attached called initiate star), call a function in the script, called initiate, into which i pass 2 variables previously created, to become 2 variables called starnumber, and starrandom number.
but i dont know how to access those to use to identify them individually.
any help please!!
thanks!
Answer by MarshallN · Aug 10, 2017 at 07:42 PM
In the Initiate Star script, add two public variables: public int starNumber
and public int starRandomNumber
. On raycast, have the raycast return hitInfo and then use hit.gameObject.GetComponent<InitiateStar>().starNumber
to get star number, or .starRandomNumber
to get the starRandomNumber.
so
RaycastHit hit;
if (Physics.Raycast(transform.position, transform.forward, out hit))
{
InitiateStar initiateStarScript = hit.gameObject.GetComponent<InitiateStar>();
int starNumber = initiateStarScript.starNumber;
int starRandomNumber = initiateStarScript.starRandomNumber;
}
Your answer
Follow this Question
Related Questions
getting two results when i shouldnt be 2 Answers
problems accessing variables and functions in another script 1 Answer
Can I pass a variable to a function to be assigned in c# 2 Answers
Referncing variables such as OnTriggerEnter(Collider other) thumb rule? 1 Answer
Referencing functions from other scripts as variables 4 Answers