public void HoldCurrentTetrimino() { if (Attribute.HoldUsed) { return; } Attribute.HoldUsed = true; TetriminoShape holdingShape = UI.Hold.Instance.HoldingShape; UI.Hold.Instance.SetTetrimino(this.CurrentTetrimino); if (holdingShape == null) { UpdateCurrentTetrimino(); } else { Spawner.Destroy(this.CurrentTetrimino.gameObject); this.CurrentTetrimino = holdingShape.CreateTetorimino().GetComponent <Tetrimino>(); this.CurrentTetrimino.transform.SetParent(this.gameObject.transform); this.CurrentTetrimino.MoveToMapPosition(TetriminoSpawnX, TetriminoSpawnY); this.CurrentTetrimino.gameObject.SetActive(true); } }
public GameObject CreateNext() { if (temporaryList.Count <= this.shapeList.Count) { temporaryList.AddRange(CreateRandomList()); } TetriminoShape thisTime = temporaryList[0]; TetriminoShape newForecast = temporaryList[UI.Next.DisplayingForecastNum]; temporaryList.RemoveAt(0); PushToNextUI(newForecast); return(thisTime.CreateTetorimino()); }
public void UpdateQueue(TetriminoShape newTetriminoShape) { Tetrimino adding = newTetriminoShape.CreateTetorimino().GetComponent <Tetrimino>(); adding.transform.position = Vector3.zero; adding.transform.Translate(adding.TurnAxis); adding.gameObject.SetActive(true); this.displayingTetriminos.Add(adding); if (displayingTetriminos.Count > DisplayingForecastNum) { Spawner.Destroy(displayingTetriminos[0].gameObject); displayingTetriminos.RemoveAt(0); } Remap(); }
private void PushToNextUI(TetriminoShape shape) { UI.Next.Instance.UpdateQueue(shape); }