From 02b0a39c7524c8573ba207d6fea99a011a03a315 Mon Sep 17 00:00:00 2001 From: Maximilian Ruhm Date: Fri, 22 Dec 2023 13:47:54 +0100 Subject: [PATCH] end menu and state reset --- kek2.pde | 9 +++++++++ menu.pde | 28 ++++++++++++++++++++++++++++ readme.org | 5 +++-- 3 files changed, 40 insertions(+), 2 deletions(-) diff --git a/kek2.pde b/kek2.pde index 4a726df..76c6a5f 100644 --- a/kek2.pde +++ b/kek2.pde @@ -76,6 +76,7 @@ boolean start_slide = true; // ----- Objectives MainMenu main_menu = new MainMenu(); Stats stats_menu = new Stats(); +EndMenu end_menu = new EndMenu(); Log[] logs; @@ -172,7 +173,15 @@ void draw() { stats_menu.draw(); } else if (isend) { // end screen code + end_menu.drawMenu(); + // get into right state + ship_zero.health = 150; + ship_zero.pos.x = -width/2; + ship_zero.pos.y = height/2; + bob.is_attached = false; + saw_zero.is_attached = false; + // save if(playtime.second() < stats_menu.best_game_time) stats_menu.best_game_time = playtime.second(); diff --git a/menu.pde b/menu.pde index 3a44389..aa3fd23 100644 --- a/menu.pde +++ b/menu.pde @@ -60,6 +60,34 @@ class MainMenu extends Menus { } } +class EndMenu extends Menus { + + void menuButton(float x, float y, float w, float h) { + fill(100, 100, 100); + if(drawRectWithMouseColission(x, y, w, h) && mousePressed) { + ismenu = true; + ispause = false; + isgame = false; + } + fill(0); + textAlign(CENTER, CENTER); + textSize(32); + text("Menu", x, y); + } + + void drawMenu() { + background(40); + // color maincolor = color(100, 100, 100); + menuButton(300, 350, 150, 50); + + textSize(100); + textAlign(CENTER, CENTER); + if (ship_zero.health < 1) { + text("You Died", 300, 200); + } + } +} + // Julia, Max, Marla, Chris class Stats extends Menus { int trees_sawed = 0; diff --git a/readme.org b/readme.org index 4c6f5f8..230cd79 100644 --- a/readme.org +++ b/readme.org @@ -4,8 +4,8 @@ *** DONE setze bob auf den Robi *** DONE Wir brauchen Geräusche *** DONE Richtige Texte am Anfang zum erklären -*** TODO End menu -*** TODO Game neustarten können +*** DONE End menu +*** DONE Game neustarten können *** DONE Roboter muss kaputt gehen können ** Menu *** DONE Statistikseite: Spielzeit, Bäume gefällt, Zeit gestoppt @@ -15,6 +15,7 @@ Wird noch nicht benutzt *** DONE nochmal die statistikseite überarbeiten **** DONE Math for best_game_time **** TODO Why doesnt bestgametime work +** TODO Stats neu machen ** Vllt *** TODO Abprallen nicht machen, wenn newx nicht erreicht sein kann, sondern wenn Robi tatsächlich die Wand berührt