//Callback from Playfield to destroy a line in view private void DestroyLine(int y) { mTetriminos.ForEach(x => x.DestroyLine(y)); mTetriminos.RemoveAll(x => x == null); Score.instance.AddPoints(mGameSettings.pointsByBreakingLine); int rowsCleared = Score.instance.PlayerScore / mGameSettings.pointsByBreakingLine; music.Play("clear_row"); music.RTPC("score", Score.instance.PlayerScore); if (rowsCleared >= stages[stages.Length - 1]) { SetGameOver(true); return; } for (int i = stages.Length - 2; i >= 0; i--) { if (rowsCleared >= stages[i]) { IncStage(i + 1); break; } } }