private void CreateNewTetrisElement()
 {
     NewTetisElement = MapControl2.TetrisElements[SelectedTetrisIndex].Clone();
     NewTetisElement.CreatePresentation();
     NewTetisElement.GO.transform.parent = ElementBackground.transform.parent;
     NewTetisElement.GO.transform.localScale = Vector3.one / 8;
     CenterTetriseElement();
 }
 private void DestroyNewTetrisElement()
 {
     NewTetisElement.DestroyPresentation();
     NewTetisElement = null;
 }
Beispiel #3
0
 public void AddTetris(TetrisElementModel tetrisElement)
 {
     _tetris.Add(tetrisElement);
     if (tetrisElement.GO == null) {
         tetrisElement.CreatePresentation();
     }
     tetrisElement.GO.transform.parent = transform;
     tetrisElement.GO.transform.localScale = Vector3.one;
     tetrisElement.GO.transform.localPosition = MapToWorld((Vector2)tetrisElement.Position);
     for (var x = 0; x < tetrisElement.Blocks.Length; x++)
         for (var y = 0; y < tetrisElement.Blocks[x].Length; y++) {
             var place = tetrisElement.Position + new Position(x, y);
             if (tetrisElement.Blocks[x][y] != null && !(tetrisElement.Blocks[x][y] is NullBlockModel)) {
                 if (Map(place.X, place.Y) is NullBlockModel) {
                     Map(place.X, place.Y, tetrisElement.Blocks[x][y]);
                 } else { //
                     Debug.LogWarning("TetrisElement " + tetrisElement.Blocks[x][y].PrefabName + " идёт туда, где уже есть блок: " + tetrisElement.Position + " + (" + x + "," + y + ") => " + place);
                     throw new Exception("TetrisElement " + tetrisElement.Blocks[x][y].PrefabName + " идёт туда, где уже есть блок: " + tetrisElement.Position + " + (" + x + "," + y + ") => " + place);
                 }
             }
         }
 }
Beispiel #4
0
 public void TetrisFinishMoving(TetrisElementModel element)
 {
 }
Beispiel #5
0
 public void RemoveTetris(TetrisElementModel element)
 {
     _tetris.Remove(element);
     for (var x = 0; x < element.Blocks.Length; x++)
         for (var y = 0; y < element.Blocks[x].Length; y++) {
             var place = element.Position + new Position(x, y);
             Map(x, y, null);
         }
 }
Beispiel #6
0
 public void MoveTetris(TetrisElementModel element, Position Move)
 {
 }