Beispiel #1
0
 public void Init(LevelBackground background, LevelObstacles obstacles)
 {
     _obstacles  = obstacles;
     _background = background;
     _backgroundStartPosition = _background.transform.position;
     _obstaclesStartPosition  = obstacles.transform.position;
 }
Beispiel #2
0
        public void readFunnelsFromXML()
        {
            LevelObstacles     levelObstacles = XMLHandler.getObstacleInfo(1, true);
            Tuple <int, float> funnel1        = levelObstacles.Funnels[0];

            Assert.AreEqual(12, funnel1.Item1);
            Assert.AreEqual(0, funnel1.Item2);
        }
Beispiel #3
0
        public void readTargetPipesFromXML()
        {
            LevelObstacles levelObstacles          = XMLHandler.getObstacleInfo(1, true);
            Tuple <float, float, float> targetPipe = levelObstacles.TargetPipes[0];

            Assert.AreEqual(18, targetPipe.Item1);
            Assert.AreEqual(-6.3f, targetPipe.Item2);
            Assert.AreEqual(0, targetPipe.Item3);
        }
Beispiel #4
0
 public void SpawnBackground()
 {
     _background = Instantiate(_levelData.Background);
     if (_levelData.Obstacles != null)
     {
         _obstacles = Instantiate(_levelData.Obstacles);
     }
     _backgroundController.Init(_background, _obstacles);
     _backgroundController.StartMoving();
 }
Beispiel #5
0
        public void readObstaclesFromXML()
        {
            LevelObstacles     levelObstacles = XMLHandler.getObstacleInfo(1, true);
            Tuple <int, float> obstacle1      = levelObstacles.Obstacles[0];

            Assert.AreEqual(10, obstacle1.Item1);
            Assert.AreEqual(45, obstacle1.Item2);
            Tuple <int, float> obstacle2 = levelObstacles.Obstacles[1];

            Assert.AreEqual(18, obstacle2.Item1);
            Assert.AreEqual(45, obstacle2.Item2);
        }
    public void Start()
    {
        int currentLevel = PlayerPrefs.GetInt("currentLevel");

        level       = XMLHandler.getObstacleInfo(currentLevel, false);
        targetPipes = level.TargetPipes;
        obstacles   = level.Obstacles;
        funnels     = level.Funnels;
        obsIPipes   = level.ObsIPipes;
        obsLPipes   = level.ObsLPipes;

        foreach (Tuple <float, float, float> targetPipe in targetPipes)
        {
            Instantiate(newFinishPipe, new Vector3(targetPipe.Item1, targetPipe.Item2, 0),
                        Quaternion.Euler(0, 0, targetPipe.Item3));
        }

        gridBlocks = FindObjectsOfType <GridBlock>();

        foreach (Tuple <int, float> obstacle in obstacles)
        {
            foreach (GridBlock gridBlock in gridBlocks)
            {
                if (obstacle.Item1 == gridBlock.getID())
                {
                    Vector3 gridBlockPosition = gridBlock.transform.position;
                    Instantiate(branchObstacle, new Vector4(gridBlockPosition.x,
                                                            gridBlockPosition.y, gridBlockPosition.z),
                                Quaternion.Euler(0, 0, obstacle.Item2));
                    gridBlock.deactivate();
                }
            }
        }

        foreach (Tuple <int, float> funnelItem in funnels)
        {
            foreach (GridBlock gridBlock in gridBlocks)
            {
                if (funnelItem.Item1 == gridBlock.getID())
                {
                    Vector3 gridBlockPosition = gridBlock.transform.position;
                    Instantiate(funnel, new Vector3(gridBlockPosition.x,
                                                    gridBlockPosition.y, gridBlockPosition.z),
                                Quaternion.Euler(0, 0, funnelItem.Item2));
                    gridBlock.deactivate();
                }
            }
        }

        foreach (Tuple <int, int> obsIPipeItem in obsIPipes)
        {
            foreach (GridBlock gridBlock in gridBlocks)
            {
                if (obsIPipeItem.Item1 == gridBlock.getID())
                {
                    GameObject pipe = Instantiate(obsIPipe);
                    pipe.transform.position = gridBlock.transform.position;
                    IPipeObs pipeScript = pipe.GetComponent <IPipeObs>();
                    for (int i = 0; i < obsIPipeItem.Item2; i += 90)
                    {
                        pipeScript.rotateClockwise();
                    }
                    gridBlock.deactivate();
                }
            }
        }

        foreach (Tuple <int, int> obsLPipeItem in obsLPipes)
        {
            foreach (GridBlock gridBlock in gridBlocks)
            {
                if (obsLPipeItem.Item1 == gridBlock.getID())
                {
                    GameObject pipe = Instantiate(obsLPipe);
                    pipe.transform.position = gridBlock.transform.position;
                    LPipeObs pipeScript = pipe.GetComponent <LPipeObs>();
                    for (int i = 0; i < obsLPipeItem.Item2; i += 90)
                    {
                        pipeScript.rotateClockwise();
                    }
                    gridBlock.deactivate();
                }
            }
        }

        if (SceneManager.GetActiveScene().name == "eye 6")
        {
            foreach (GridBlock gridBlock in gridBlocks)
            {
                gridBlock.deactivate();
            }
        }
    }