Change a Script Var of an Instantiated Object


I want to change a variable of the script inside an instantiated object... after it been instantiated, how do I achieve this?

Here is the script.

var MeteorPrefab : GameObject; var STarget : GameObject;

function Update () {
        var Meteor = Instantiate(MeteorPrefab, transform.position, transform.rotation);
        Meteor.GetComponent(MeteorMove).target = STarget; //here is the problem 

The problem it return, is that the object is Unexistant and so the script is too.

Here are the two errors.

InvalidCastException: Cannot cast from source type to destination type. (wrapper dynamic-method) MeteorMove.MeteorMove$target= (object,object[]) Boo.Lang.Runtime.RuntimeServices.Dispatch (object,string,System.Type[],object[],Boo.Lang.Runtime.DynamicDispatching.DispatcherCache/DispatcherFactory)


(object,string,object) MeteorSpawning.Update () (at


UnassignedReferenceException: The variable target of 'MeteorMove' has not been assigned. You probably need to assign the target variable of the MeteorMove script in the inspector. UnityEngine.Transform.get_position () (at E:/BuildAgent/work/68355d6e5d19d587/Runtime/Export/Generated/BaseClass.cs:768) MeteorMove.Update () (at Assets/Scripts/Ingredients/Meteor/MeteorMove.js:18)

For the first one, try this:

var Meteor : Object = Instantiate(MeteorPrefab,....

For the second one, make sure you have assigned your script to a game object, and on that game object, you have selected something for both MeteorPrefab and STarget in the Inspector pane.