//----------------------------------------------------------------------------- // Game::Draw() // This function is called once per frame // Use this for draw graphics to the screen. // Only do rendering here //----------------------------------------------------------------------------- public override void Draw() { // Draw sprite with texture //pRedBird.Render(); if (gameover) { SOM.drawBackground(); SOM.drawStrings(stats); active_piece.draw(); future_piece.draw(); printGrid(); SOM.drawGameOver(stats); stats = new GameStats(); return; } // Update background SOM.drawBackground(); SOM.drawStrings(stats); if (!startgame) { SOM.drawStartTetris(); SOM.drawHighScores(stats); } if (startgame) { active_piece.draw(); future_piece.draw(); } if (paused && startgame) { SOM.drawPaused(); //soundEngine.getAE().SetAllSoundsPaused(true); } if (!paused && startgame) { if (!muted) { SOM.drawMenu(); } if (muted) { SOM.drawMutedMenu(); } //soundEngine.getAE().SetAllSoundsPaused(false); } printGrid(); //test drawing all shapes //if statement to make sure this only happens once, for testing purposes. Remove later to do stuff every frame /*if (only_one_run == 0) * { * t.draw(t.orientation); * line.draw(line.orientation); * l1.draw(l1.orientation); * l2.draw(l2.orientation); * z1.draw(z1.orientation); * z2.draw(z2.orientation); * s.draw(s.orientation); * * only_one_run++; * * * t.erase(t.orientation); * line.erase(line.orientation); * l1.erase(l1.orientation); * l2.erase(l2.orientation); * z1.erase(z1.orientation); * z2.erase(z2.orientation); * s.erase(s.orientation); * * }*/ //test drawing a turned T, if staement is so that it only does it once /*if (turned.orientation == Shape.Orientation.ORIENT_0) * { * turned.turn(); * } * turned.draw(turned.orientation); * */ /* * * // Draw one box, demo at position 1,1 * SOM.drawBox(1, 1, DrawColor.Shade.COLOR_LT_GREEN); * * // Test play field * SOM.drawBox(Constants.GAME_MIN_X, Constants.GAME_MIN_Y, DrawColor.Shade.COLOR_ORANGE); * SOM.drawBox(Constants.GAME_MAX_X, Constants.GAME_MIN_Y, DrawColor.Shade.COLOR_YELLOW); * SOM.drawBox(Constants.GAME_MIN_X, Constants.GAME_MAX_Y, DrawColor.Shade.COLOR_RED); * SOM.drawBox(Constants.GAME_MAX_X, Constants.GAME_MAX_Y, DrawColor.Shade.COLOR_BLUE); */ }
//----------------------------------------------------------------------------- // Game::Draw() // This function is called once per frame // Use this for draw graphics to the screen. // Only do rendering here //----------------------------------------------------------------------------- public override void Draw() { // Draw sprite with texture //pRedBird.Render(); // Update background SOM.drawBackground(); SOM.drawStrings(stats); active_piece.draw(); future_piece.draw(); printGrid(); //test drawing all shapes //if statement to make sure this only happens once, for testing purposes. Remove later to do stuff every frame /*if (only_one_run == 0) * { * t.draw(t.orientation); * line.draw(line.orientation); * l1.draw(l1.orientation); * l2.draw(l2.orientation); * z1.draw(z1.orientation); * z2.draw(z2.orientation); * s.draw(s.orientation); * * only_one_run++; * * * t.erase(t.orientation); * line.erase(line.orientation); * l1.erase(l1.orientation); * l2.erase(l2.orientation); * z1.erase(z1.orientation); * z2.erase(z2.orientation); * s.erase(s.orientation); * * }*/ //test drawing a turned T, if staement is so that it only does it once /*if (turned.orientation == Shape.Orientation.ORIENT_0) * { * turned.turn(); * } * turned.draw(turned.orientation); * */ /* * * // Draw one box, demo at position 1,1 * SOM.drawBox(1, 1, DrawColor.Shade.COLOR_LT_GREEN); * * // Test play field * SOM.drawBox(Constants.GAME_MIN_X, Constants.GAME_MIN_Y, DrawColor.Shade.COLOR_ORANGE); * SOM.drawBox(Constants.GAME_MAX_X, Constants.GAME_MIN_Y, DrawColor.Shade.COLOR_YELLOW); * SOM.drawBox(Constants.GAME_MIN_X, Constants.GAME_MAX_Y, DrawColor.Shade.COLOR_RED); * SOM.drawBox(Constants.GAME_MAX_X, Constants.GAME_MAX_Y, DrawColor.Shade.COLOR_BLUE); */ }
//----------------------------------------------------------------------------- // Game::Draw() // This function is called once per frame // Use this for draw graphics to the screen. // Only do rendering here //----------------------------------------------------------------------------- public override void Draw() { // Draw sprite with texture pRedBird.Render(); // Update background SOM.drawBackground(); // SOM.drawStrings(stats); // Draw one box, demo at position 1,1 SOM.drawBox(1, 1, DrawColor.Shade.COLOR_LT_GREEN); // Test play field SOM.drawBox(Constants.GAME_MIN_X, Constants.GAME_MIN_Y, DrawColor.Shade.COLOR_ORANGE); SOM.drawBox(Constants.GAME_MAX_X, Constants.GAME_MIN_Y, DrawColor.Shade.COLOR_YELLOW); SOM.drawBox(Constants.GAME_MIN_X, Constants.GAME_MAX_Y, DrawColor.Shade.COLOR_RED); SOM.drawBox(Constants.GAME_MAX_X, Constants.GAME_MAX_Y, DrawColor.Shade.COLOR_BLUE); // Cycle all the tetris pieces if (count < 2 * 10) { ShapeRenderer.drawLine(Constants.PREVIEW_WINDOW_X, Constants.PREVIEW_WINDOW_Y, ShapeRenderer.Orientation.ORIENT_0); ShapeRenderer.drawLine(3, 3, ShapeRenderer.Orientation.ORIENT_0); ShapeRenderer.drawL1(5, 8, ShapeRenderer.Orientation.ORIENT_0); ShapeRenderer.drawL2(5, 14, ShapeRenderer.Orientation.ORIENT_0); ShapeRenderer.drawT(5, 19, ShapeRenderer.Orientation.ORIENT_0); ShapeRenderer.drawZ1(5, 23, ShapeRenderer.Orientation.ORIENT_0); ShapeRenderer.drawZ2(5, 28, ShapeRenderer.Orientation.ORIENT_0); ShapeRenderer.drawSquare(8, 4, ShapeRenderer.Orientation.ORIENT_0); } else if (count < 2 * 20) { ShapeRenderer.drawLine(Constants.PREVIEW_WINDOW_X, Constants.PREVIEW_WINDOW_Y, ShapeRenderer.Orientation.ORIENT_1); ShapeRenderer.drawLine(3, 3, ShapeRenderer.Orientation.ORIENT_1); ShapeRenderer.drawL1(5, 8, ShapeRenderer.Orientation.ORIENT_1); ShapeRenderer.drawL2(5, 14, ShapeRenderer.Orientation.ORIENT_1); ShapeRenderer.drawT(5, 19, ShapeRenderer.Orientation.ORIENT_1); ShapeRenderer.drawZ1(5, 23, ShapeRenderer.Orientation.ORIENT_1); ShapeRenderer.drawZ2(5, 28, ShapeRenderer.Orientation.ORIENT_1); ShapeRenderer.drawSquare(8, 4, ShapeRenderer.Orientation.ORIENT_1); } else if (count < 2 * 30) { ShapeRenderer.drawLine(Constants.PREVIEW_WINDOW_X, Constants.PREVIEW_WINDOW_Y, ShapeRenderer.Orientation.ORIENT_2); ShapeRenderer.drawLine(3, 3, ShapeRenderer.Orientation.ORIENT_2); ShapeRenderer.drawL1(5, 8, ShapeRenderer.Orientation.ORIENT_2); ShapeRenderer.drawL2(5, 14, ShapeRenderer.Orientation.ORIENT_2); ShapeRenderer.drawT(5, 19, ShapeRenderer.Orientation.ORIENT_2); ShapeRenderer.drawZ1(5, 23, ShapeRenderer.Orientation.ORIENT_2); ShapeRenderer.drawZ2(5, 28, ShapeRenderer.Orientation.ORIENT_2); ShapeRenderer.drawSquare(8, 4, ShapeRenderer.Orientation.ORIENT_2); } else { ShapeRenderer.drawLine(Constants.PREVIEW_WINDOW_X, Constants.PREVIEW_WINDOW_Y, ShapeRenderer.Orientation.ORIENT_3); ShapeRenderer.drawLine(3, 3, ShapeRenderer.Orientation.ORIENT_3); ShapeRenderer.drawL1(5, 8, ShapeRenderer.Orientation.ORIENT_3); ShapeRenderer.drawL2(5, 14, ShapeRenderer.Orientation.ORIENT_3); ShapeRenderer.drawT(5, 19, ShapeRenderer.Orientation.ORIENT_3); ShapeRenderer.drawZ1(5, 23, ShapeRenderer.Orientation.ORIENT_3); ShapeRenderer.drawZ2(5, 28, ShapeRenderer.Orientation.ORIENT_3); ShapeRenderer.drawSquare(8, 4, ShapeRenderer.Orientation.ORIENT_3); } if (count > 2 * 40) { count = 0; } else { count++; } }