Exemplo n.º 1
0
    // Use this for initialization
    void Start()
    {
        bc              = gameObject.GetComponent <BlockController> ();
        tileList        = GameObject.Find("ObjectsLists").GetComponent <ListElementsController> ();
        levelMeshPrefab = (GameObject)Resources.Load("LevelMesh");
        levelMesh       = Instantiate(levelMeshPrefab);
        meshes.Add(levelMesh);
        for (int i = 0; i < width; i++)
        {
            for (int j = 0; j < width; j++)
            {
                blocks[width.ToString() + ";" + height.ToString()] = null;
            }
        }

        level = new LevelRudiment();

        gridMeshPrefab         = (GameObject)Resources.Load("GridMesh");
        randomModePercentValue = GameObject.Find("RandomPercentField").GetComponent <InputField>();

        foreach (GameObject obj in Resources.LoadAll <GameObject>("GameObjects"))
        {
            interactiveObjectPrefabs.Add(obj.name, obj.gameObject);
        }
    }
Exemplo n.º 2
0
 // Use this for initialization
 void Start()
 {
     tileList = GameObject.Find("ObjectsLists").GetComponent <ListElementsController>();
 }
Exemplo n.º 3
0
    public void DrawLevel()
    {
        DestroyMeshes();


        ListElementsController.listElementsController.LoadTexturesByName(level.textureName);
        //DropDownScript.dropDownScript.

        if (meshes.Count == 0)
        {
            meshes.Add(Instantiate(levelMeshPrefab));
        }

        List <Block> blocks = level.fixBlocks;

        blocks.AddRange(level.randomBlocks);
        foreach (Block block in blocks)
        {
            if (meshes [meshes.Count - 1].GetComponent <LevelMesh> ().newVertices.Count >= 12000)
            {
                meshes.Add(Instantiate(levelMeshPrefab));
            }
            List <Vector2> uvs = ListElementsController.listElementsController.GetUVsByID(block.uvsID);            //new List<Vector2> ();

            /*foreach (SerializableVector2 sUv in block.squareUV) {
             *      uvs.Add (new Vector2 (sUv.x, sUv.y));
             * }*/
            meshes [meshes.Count - 1].GetComponent <LevelMesh> ().GenTile(block.blockCoords.x, block.blockCoords.y, block.blockCoords.z, uvs);
        }


        List <DecorBlock> decorBlocks = level.fixDecorBlocks;

        decorBlocks.AddRange(level.randomDecorBlocks);
        foreach (DecorBlock decorBlock in decorBlocks)
        {
            if (meshes [meshes.Count - 1].GetComponent <LevelMesh> ().newVertices.Count >= 12000)
            {
                meshes.Add(Instantiate(levelMeshPrefab));
            }

            List <Vector3> vertices = new List <Vector3> ();
            foreach (SerializableVector3 vert in decorBlock.blockCoords)
            {
                vertices.Add(new Vector3(vert.x, vert.y, vert.z));
            }

            List <Vector2> uvs = ListElementsController.listElementsController.GetUVsByID(decorBlock.uvsID);            //new List<Vector2> ();

            /*foreach (SerializableVector2 sUv in decorBlock.squareUV) {
             *      uvs.Add (new Vector2 (sUv.x, sUv.y));
             * }*/
            meshes [meshes.Count - 1].GetComponent <LevelMesh> ().GenSquareByCoords(vertices, uvs);
        }

        List <InteractiveObject> objects = level.fixInteractiveObjects;

        objects.AddRange(level.randomInteractiveObjects);
        foreach (InteractiveObject obj in objects)
        {
            GameObject newObj = Instantiate((GameObject)Resources.Load("GameObjects/" + obj.type));
            newObj.GetComponent <InteractiveObjectScene> ().objId = obj.objId;
            newObj.transform.position = new Vector3(obj.objCoord.x, obj.objCoord.y, obj.objCoord.z);
        }

        GameObject setListGround = GameObject.Find("GridSetsList");

        foreach (Set newSet in level.sets)
        {
            GameObject newSetGround = Instantiate((GameObject)Resources.Load("UI/SetGround"));

            newSetGround.transform.parent = setListGround.transform;
            newSetGround.transform.GetChild(0).gameObject.GetComponent <AddedSet> ().setId        = newSet.objId;
            newSetGround.transform.GetChild(0).GetChild(0).gameObject.GetComponent <Text> ().text = "set " + newSet.objId.ToString();
        }

        Sprite[] sprites     = Resources.LoadAll <Sprite> ("TileSets/" + "set_" + level.textureName);
        Texture  mainTexture = sprites [0].texture;

        ListElementsController.SetTextureToMeshes(mainTexture);


        GridController.gridController.gridWidth  = level.levelWidth;
        GridController.gridController.gridHeight = level.levelHeight;

        GridController.gridController.widthInputField.text  = level.levelWidth.ToString();
        GridController.gridController.heightInputField.text = level.levelHeight.ToString();

        GridController.gridController.RedrawGrid();
    }
Exemplo n.º 4
0
 void Awake()
 {
     listElementsController = this;
 }