I have 5 gameobjects named Platform1, Platform2, etc. all the way to 5. Within the Platform gameobjects are sprites (setup for as various platforming sections. I want to use code to add all 5 in to an array, randomize them and then lay them out on the scene from end to end. Here is the code which I attached to all of the Platform gameobjects:
using UnityEngine;
using System.Collections;
public class LoadLevel : MonoBehaviour {
public GameObject[] myPlatformPieces; //Assign platform pieces in the inspector
private Vector3 myPos; //Shorter way to grab the position of this platform
// Use this for initialization
void Start () {
myPos = transform.postion; //Grab our position
for (int x = 0; x < 2; x++){
Instantiate(myPlatforms[Random.Range(0,myPlatforms.Length)], new Vector3(myPos.x * (x+1), myPos.y, myPos.z), Quaternion.identity);
}
}
// Update is called once per frame
void Update () {
}
}
I get the following errors:
Assets/Scripts/LoadLevel.cs(13,35): error CS1061: Type UnityEngine.Transform' does not contain a definition for
postion’ and no extension method postion' of type
UnityEngine.Transform’ could be found (are you missing a using directive or an assembly reference?)
Assets/Scripts/LoadLevel.cs(16,37): error CS0103: The name `myPlatforms’ does not exist in the current context
Assets/Scripts/LoadLevel.cs(16,25): error CS1502: The best overloaded method match for `UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Vector3, UnityEngine.Quaternion)’ has some invalid arguments
Assets/Scripts/LoadLevel.cs(16,25): error CS1503: Argument #1' cannot convert
object’ expression to type `UnityEngine.Object’
Any ideas?