private void SwitchBrickToType(BaseBrick brick, BrickType type)
    {
        GameObject obj = levelLogic.GetBrickBasedOnType(type);

        BrickData newData = new BrickData {
            gridNodeID = brick.GetComponent <BaseBrick>().ID,
            type       = type
        };
        BaseBrick newB = obj.GetComponent <BaseBrick>();

        newB.Initialize(newData);
        newB.SwitchPositions(brick.transform.position);
        obj.transform.SetParent(brickGridParent);
        ReplaceInLevel(brick, newB);

        if (type == BrickType.PATH)
        {
            brick.SwitchToPath();
        }
    }
Beispiel #2
0
 public void ResetPlayerPosition(BaseBrick brickCell)
 {
     if (gameObject != null)
     {
         if (!gameObject.activeSelf)
         {
             gameObject.SetActive(true);
         }
         brickCell.SwitchToPath();
         currentBrickCell   = brickCell;
         transform.position = brickCell.transform.position;
         if (dashSequence == null)
         {
             dashSequence = new Dictionary <string, BaseBrick>();
         }
         else
         {
             dashSequence.Clear();
         }
         ChangeState(PlayerStates.WaitingToStart);
     }
 }