コード例 #1
0
ファイル: BaseTile.cs プロジェクト: JeroonBosch/TilerSwift
    protected virtual void DerrivedInit(Cell cell, int size, GridController grid)
    {
        SetCell(cell);

        this.size        = size;
        transform.parent = cell.transform;

        float height = 1f + size * .2f;
        float xSize  = 0.25f + 0.08f * size;
        float ySize  = 0.1f + 0.05f * size;

        //float height = 2.2f;
        //float xSize = 0.5f;
        //loat ySize = 0.2f;
        meshObject.localScale    = new Vector3(xSize, ySize, height);
        meshObject.localPosition = new Vector3(0, 0, -(height / 2));
        transform.localScale     = new Vector3(1f, 1f, 1f);
        //transform.localPosition = new Vector3(0, 0, 0);
        transform.position = new Vector3(cell.transform.position.x, 0, 10f);

        if (grid.CheckForWhiteTiles(cell))
        {
            this.size = 6;
            grid.WhiteTileAdded();
            meshObject.localScale = new Vector3(.7f, .45f, 2.3f);
        }
        else if (grid.CheckForBlackTiles(cell))
        {
            this.size = 7;
            grid.BlackTileAdded();
            meshObject.localScale = new Vector3(.7f, .45f, 2.3f);
        }

        meshObject.GetComponent <MeshRenderer>().material = possibleMaterials[this.size - 1];

        this.grid = grid;

        switch (size)
        {
        case 1:
            tileType.State = TileTypes.ESubState.Purple;
            break;

        case 2:
            tileType.State = TileTypes.ESubState.Green;
            break;

        case 3:
            tileType.State = TileTypes.ESubState.Blue;
            break;

        case 4:
            tileType.State = TileTypes.ESubState.Yellow;
            break;

        case 5:
            tileType.State = TileTypes.ESubState.Red;
            break;

        case 6:
            tileType.State = TileTypes.ESubState.White;
            break;

        default:
            break;
        }
    }