- Home /
Implicit downcast from 'Object' to 'String'. GetComponent from another object
Hello! I have the following script:
private var loginScr : Login;
var sysinfo : systeminfo;
function Start(){
var persistentGameObject : GameObject = GameObject.Find("LoginObject"); // Object where Login.js is attached
loginScr = persistentGameObject.GetComponent(Login); // The script
print(loginScr.passvariable); // Get a variable from this script
}
and i get:
Implicit downcast from 'Object' to 'String'.
What seems to be the problem? I don't know why does it appear. Sooner it works but now it's crashed...
Thank you for any answer.
Answer by CHPedersen · Feb 03, 2014 at 09:50 AM
I think this is caused by the print. It has to convert things to a string before it can display them in the console. Perhaps loginScr.passvariable is not of type string, so behind the scenes (implicitly), it is converting (casting) this variable from object to string so it can be written.
Try removing the print and see if the error disappears.
Solved but now i have another problem... The script is the same var loginScr : Login; var sysinfo : syste$$anonymous$$fo;
function Start(){
var LoginGObject : GameObject = GameObject.Find("LoginObject");
loginScr = LoginGObject.GetComponent(Login);
print(loginScr.username);
print(sysinfo.GetInform(loginScr.passvariable,"level"));
}
but i get The referenced script on this Behaviour is missing!
And because of that my script doesn't run.
That error usually happens when there's a script component (Behaviour) attached to a GameObject or prefab, but the actual script file can't be found. You can recreate the error manually by first attaching a script to a GameObject and then flat out deleting the script file afterwards - you'll get the same warning. Check the gameobject that complains and ensure all the scripts on it still point correctly to the file that contains the script.
That object appear after LoadLevel. Is a connection between Login and $$anonymous$$ain$$anonymous$$enu. But now i understand you. Upvote and accept answer.
Thank you a lot! Have a nice day. :)
Thank you, that's very kind of you. :) I think you did more to solve this yourself than I did to help you.
Your answer
Follow this Question
Related Questions
Only change a variable on the instaniated object not the prefab. 0 Answers
Find + GetComponent not working as expected 0 Answers
Create a variable on a GameObject for access via the Object without GetComponent() 1 Answer
updating a gameobject variable from another script attached to another object 3 Answers
GetComponent() - Is it possible to pass a string variable as name of the script? 3 Answers