public void HeadSwap()
 {
     Alive = !Alive;
     if (Alive)
     {
         Head.GetComponent <DissolveScript>().AnimateIn();
         Skull.GetComponent <DissolveScript>().AnimateOut();
     }
     else
     {
         Head.GetComponent <DissolveScript>().AnimateOut();
         Skull.GetComponent <DissolveScript>().AnimateIn();
     }
     Canvas.GetComponent <CountDownTimer>().resetTimer();
 }
示例#2
0
    //Initialize a random map
    public void InitializeRandomMap()
    {
        //Choosing each tile type for each place in the map
        for (int y = 0; y < labSize; ++y)
        {
            for (int x = 0; x < labSize; ++x)
            {
                Tile tileRef;

                if (x == 0)
                {
                    if (y == 0)
                    {
                        tileRef = tileCornerDownLeft;
                    }
                    else if (y == labSize - 1)
                    {
                        tileRef = tileCornerUpLeft;
                    }
                    else
                    {
                        tileRef = FindRandomTileInList(tilesBorderLeft);
                    }
                }
                else if (x == labSize - 1)
                {
                    if (y == 0)
                    {
                        tileRef = tileCornerDownRight;
                    }
                    else if (y == labSize - 1)
                    {
                        tileRef = tileCornerUpRight;
                    }
                    else
                    {
                        tileRef = FindRandomTileInList(tilesBorderRight);
                    }
                }
                else if (y == 0)
                {
                    tileRef = FindRandomTileInList(tilesBorderDown);
                }
                else if (y == labSize - 1)
                {
                    tileRef = FindRandomTileInList(tilesBorderUp);
                }
                else
                {
                    tileRef = FindRandomTile();
                }

                //Adding random difficulty to tile
                Skull skullRef = skulls[Random.Range(0, skulls.Length)];

                //Instantiating and resizing
                //Tile
                Vector3 pos  = GetTilePosFromIndex(GetTileIndexFromCoordinates(new Vector2Int(x, y)));
                Tile    tile = Instantiate(tileRef, pos, Quaternion.identity);
                tile.GetComponent <Transform>().localScale = new Vector3(tileScale, tileScale);

                //Skulls
                Skull skull = Instantiate(skullRef, pos, Quaternion.identity);
                skull.GetComponent <Transform>().localScale = new Vector3(skullScale, skullScale);

                //Keeping tile map info
                labyrinthTiles.Add(tile);
                labyrinthSkulls.Add(skull);
            }
        }


        //Player
        Vector3 pos2 = GetTilePosFromIndex(0);

        player = Instantiate(playerRef, pos2, Quaternion.identity);
        player.GetComponent <Transform>().localScale = new Vector3(playerScale, playerScale);

        //Enemy
        pos2  = GetTilePosFromIndex(labSize * labSize - 1);
        enemy = Instantiate(enemyRef, pos2, Quaternion.identity);
        enemy.GetComponent <Transform>().localScale = new Vector3(enemyScale, enemyScale);
        enemyNextPos        = enemy.pos;
        enemyNextDifficulty = 0;

        //Trace
        trace = Instantiate(traceRef);

        isGameOver = false;
    }