Esempio n. 1
0
 void InstantiateCellDisplay(BrickArrangement inputBrickArrangement)
 {
     foreach (Cell cell in brickArrangement.arrangementGraph.availableCells)
     {
         availableCellsInScene.Add(Instantiate(brickCellMesh, inputBrickArrangement.GetRealCellPosition(cell) + inputBrickArrangement.displayCellOffset, Quaternion.identity, brickCellMesh.transform.parent));
     }
 }
Esempio n. 2
0
 void UpdateCellDisplay(BrickArrangement inputBrickArrangement)
 {
     if (graphBranchesAreShowing == true)
     {
         for (int i = 0; i < brickArrangement.arrangementGraph.availableCells.Count; i++)
         {
             // availableCellsInScene[i].transform.position = inputBrickArrangement.GetRealCellPosition(brickArrangement.arrangementGraph.availableCells[i]);
             if (brickArrangement.arrangementGraph.availableCells[i].isPath == true)
             {
                 availableCellsInScene[i].GetComponent <Renderer>().material.color = Color.yellow;
             }
             else if (brickArrangement.arrangementGraph.availableCells[i].isStart == true)
             {
                 availableCellsInScene[i].GetComponent <Renderer>().material.color = Color.green;
             }
             else if (brickArrangement.arrangementGraph.availableCells[i].isEnd == true)
             {
                 availableCellsInScene[i].GetComponent <Renderer>().material.color = Color.red;
             }
             else
             {
                 availableCellsInScene[i].GetComponent <Renderer>().material.color = Color.grey;
             }
         }
     }
 }
Esempio n. 3
0
 void UpdateBricks(BrickArrangement inputBrickArrangement)
 {
     //for (int i = 0; i < inputBrickArrangement.allBricks.Count; i++)
     //{
     //    bricksInScene[i].transform.position = inputBrickArrangement.GetRealBrickPosition(inputBrickArrangement.allBricks[i]);
     //    bricksInScene[i].transform.rotation = inputBrickArrangement.allBricks[i].rotation;
     //}
 }
Esempio n. 4
0
    void DestroyCellDisplay(BrickArrangement inputBrickArrangement)
    {
        foreach (GameObject cell in availableCellsInScene)
        {
            Destroy(cell);
        }

        availableCellsInScene.Clear();
    }
Esempio n. 5
0
    void InstantiateBricks(BrickArrangement inputBrickArrangement)
    {
        foreach (Brick brick in inputBrickArrangement.allBricks)
        {
            bricksInScene.Add(Instantiate(brickMesh, inputBrickArrangement.GetRealBrickPosition(brick), brick.rotation, brickMesh.transform.parent));
        }
        brickArrangement.GenerateGraph();

        InstantiateCellDisplay(inputBrickArrangement);
    }
Esempio n. 6
0
    void DestroyGraphBranches(BrickArrangement inputBrickArrangement)
    {
        foreach (LineRenderer line in graphLines)
        {
            Destroy(line);
        }

        graphLines.Clear();

        foreach (GameObject graphBranch in graphBranchesInScene)
        {
            Destroy(graphBranch);
        }

        graphBranchesInScene.Clear();
    }
Esempio n. 7
0
    void InstantiateGraphBranches(BrickArrangement inputBrickArrangement)
    {
        foreach (GraphBranch branch in brickArrangement.arrangementGraph.graphBranches)
        {
            graphBranchesInScene.Add(Instantiate(lineRendererObject, lineRendererObject.transform.parent));
        }

        for (int i = 0; i < graphBranchesInScene.Count; i++)
        {
            var line = graphBranchesInScene[i].AddComponent <LineRenderer>();
            line.material        = graphMaterial;
            line.widthMultiplier = 0.005f;
            line.positionCount   = 2;

            graphLines.Add(line);
        }

        graphBranchesAreShowing = true;
    }
Esempio n. 8
0
 public Robot(Cell startPosition, BrickArrangement inputBrickArrangement)
 {
     position         = startPosition;
     brickArrangement = inputBrickArrangement;
     rotation         = Quaternion.Euler(0, 0, 0);
 }
Esempio n. 9
0
 public BuildManager(BrickArrangement _inputBrickArrangment)
 {
     brickArrangement = _inputBrickArrangment;
 }
Esempio n. 10
0
 void UpdateGateCell(BrickArrangement inputBrickArrangement)
 {
     GameObject gateCellMarker = Instantiate(gateCellMarkerMesh, inputBrickArrangement.GetRealPosition(inputBrickArrangement.gateCell) + gateCellOffset, Quaternion.identity);
 }
Esempio n. 11
0
    void UpdateLineDisplay(BrickArrangement inputBrickArrangement)
    {
        for (int i = 0; i < graphLines.Count; i++)
        {
            Vector3 lineDisplaySeparatorFactor = new Vector3(0, 0, 0);

            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type >= 2 && inputBrickArrangement.arrangementGraph.graphBranches[i].type <= 5)
            {
                lineDisplaySeparatorFactor = lineDisplaySeparator * 1;
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type >= 12 && inputBrickArrangement.arrangementGraph.graphBranches[i].type <= 15)
            {
                lineDisplaySeparatorFactor = lineDisplaySeparator * 2;
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type >= -5 && inputBrickArrangement.arrangementGraph.graphBranches[i].type <= -2)
            {
                lineDisplaySeparatorFactor = lineDisplaySeparator * 0;
            }

            // horizontalSteps
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == 2)
            {
                graphLines[i].material.color = gradientColours[4];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == 3)
            {
                graphLines[i].material.color = gradientColours[5];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == 4)
            {
                graphLines[i].material.color = gradientColours[6];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == 5)
            {
                graphLines[i].material.color = gradientColours[7];
            }

            // upSteps
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == 12)
            {
                graphLines[i].material.color = gradientColours[8];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == 13)
            {
                graphLines[i].material.color = gradientColours[9];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == 14)
            {
                graphLines[i].material.color = gradientColours[10];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == 15)
            {
                graphLines[i].material.color = gradientColours[11];
            }

            // downSteps
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == -2)
            {
                graphLines[i].material.color = gradientColours[0];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == -3)
            {
                graphLines[i].material.color = gradientColours[1];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == -4)
            {
                graphLines[i].material.color = gradientColours[2];
            }
            if (inputBrickArrangement.arrangementGraph.graphBranches[i].type == -5)
            {
                graphLines[i].material.color = gradientColours[3];
            }

            graphLines[i].SetPosition(0, inputBrickArrangement.GetRealCellPosition(brickArrangement.arrangementGraph.graphBranches[i].start) + inputBrickArrangement.displayCellOffset + lineDisplaySeparatorFactor + new Vector3(0, 0.6f, 0));
            graphLines[i].SetPosition(1, inputBrickArrangement.GetRealCellPosition(brickArrangement.arrangementGraph.graphBranches[i].end) + inputBrickArrangement.displayCellOffset + lineDisplaySeparatorFactor + new Vector3(0, 0.6f, 0));
        }
    }