Esempio n. 1
0
    void CreateTile(int x, int y, StageCellType type)
    {
        StageCell cell = new StageCell(x, y, type);

        GameObject editTile = Instantiate(editTilePrefab, transform);

        editTile.name = "tile(" + x + "," + y + ")";
        SetTilePosition(editTile, x, y);

        StageEditTile tile = editTile.GetComponent <StageEditTile>();

        tile.SetCell(cell);
        stageTiles.Add(tile);

        GameObject child = GetTileTypePrefab(type);

        if (child != null)
        {
            tile.EditType(type, child);
        }
    }
Esempio n. 2
0
    void PickTileEdit(StageLevelManager manager)
    {
        Event e = Event.current;

        if (e.type == EventType.MouseDown == true)
        {
            Vector3    mousePos = Event.current.mousePosition;
            Ray        ray      = HandleUtility.GUIPointToWorldRay(mousePos);
            RaycastHit hit;

            if (Physics.Raycast(ray, out hit))
            {
                GameObject    obj  = hit.collider.gameObject;
                StageEditTile tile = obj.GetComponent <StageEditTile>();
                if (tile != null)
                {
                    var tileType = manager.curEditType;
                    tile.EditType(tileType, manager.GetTileTypePrefab(tileType));
                }
            }
        }
    }