I have become completely confused by how to load variables in one script from another. Please go easy on me since I'm only just starting with Unity. I'm building a game which will include a large number of ships, so I want to have a separate script to hold various specs for every ship (speed, turning, etc). I'm loading these up via Resources.LoadAll and then trying to access the variables within them from another script, but I'm getting a 'MissingFieldException: Field 'UnityEditor.MonoScript.shipturn' not found.' error.
Here's the script (instantiator) which loads up the ships into an array:
static var ships : Object[];
static var weps : Object[];
function Awake () {
ships = Resources.LoadAll("Ships");
weps = Resources.LoadAll("Weapons");
}
This seems to work normally, I can use print(ships[0]); to return the text of the ship's script file. However, when it comes to accessing one of those variables (shipturn), using the following code, it fails:
playersship=instantiator.ships[playership.playershiptype]; // same as instantiator.ships[0]
var rotationspeed=playersship.shipturn; // errors here
I have a feeling these ship scripts are miscast, but I don't know how to cast them properly. The ship script files contain stuff like the following:
var shipname="testship";
var shipspeed=600;
var shipturn=120;
Thanks in advance for any help.