From ebbf1fbc90013cbce0b91111105b7821d11fcaff Mon Sep 17 00:00:00 2001 From: Sheeeesh-code Date: Sun, 31 Aug 2025 14:13:19 +0800 Subject: [PATCH 1/4] rename Duke to Amadeus and add skeleton --- src/main/java/Duke.java | 10 ---------- src/main/java/amadeus/Amadeus.java | 31 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 10 deletions(-) delete mode 100644 src/main/java/Duke.java create mode 100644 src/main/java/amadeus/Amadeus.java diff --git a/src/main/java/Duke.java b/src/main/java/Duke.java deleted file mode 100644 index 5d313334c..000000000 --- a/src/main/java/Duke.java +++ /dev/null @@ -1,10 +0,0 @@ -public class Duke { - public static void main(String[] args) { - String logo = " ____ _ \n" - + "| _ \\ _ _| | _____ \n" - + "| | | | | | | |/ / _ \\\n" - + "| |_| | |_| | < __/\n" - + "|____/ \\__,_|_|\\_\\___|\n"; - System.out.println("Hello from\n" + logo); - } -} diff --git a/src/main/java/amadeus/Amadeus.java b/src/main/java/amadeus/Amadeus.java new file mode 100644 index 000000000..9fa0b3a4a --- /dev/null +++ b/src/main/java/amadeus/Amadeus.java @@ -0,0 +1,31 @@ +package amadeus; + +public class Amadeus { + public static void main(String[] args) { + String logo = + "╔══════════════════════════════════════════════════════════════╗\n" + + "║ ║\n" + + "║ █████╗ ███╗ ███╗ █████╗ ██████╗ ███████╗██╗ ██╗███████╗ ║\n" + + "║ ██╔══██╗████╗ ████║██╔══██╗██╔══██╗██╔════╝██║ ██║██╔════╝ ║\n" + + "║ ███████║██╔████╔██║███████║██║ ██║█████╗ ██║ ██║███████╗ ║\n" + + "║ ██╔══██║██║╚██╔╝██║██╔══██║██║ ██║██╔══╝ ██║ ██║╚════██║ ║\n" + + "║ ██║ ██║██║ ╚═╝ ██║██║ ██║██████╔╝███████╗╚██████╔╝███████║ ║\n" + + "║ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚══════╝ ╚═════╝ ╚══════╝ ║\n" + + "║ ║\n" + + "╚══════════════════════════════════════════════════════════════╝\n"; + + + System.out.println("Hello from\n" + logo); + + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("\uD83D\uDC4B Greetings. I am Amadeus, your cognitive assistant."); + System.out.println("I monitor divergences in world lines… and sometimes your mistakes."); + System.out.println("What knowledge do you seek today?"); + System.out.println(""); + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("System shutting down... awaiting next transmission."); + System.out.println("El Psy Kongroo."); + + + } +} From cd0e230e4eeb5b3e1d8c076de909eeccca6b763e Mon Sep 17 00:00:00 2001 From: Sheeeesh-code Date: Mon, 1 Sep 2025 23:09:21 +0800 Subject: [PATCH 2/4] Add echo command and d-mail command (an echo variant with different dialogues) --- src/main/java/amadeus/Amadeus.java | 62 ++++++++++++++++++++++++++++-- 1 file changed, 58 insertions(+), 4 deletions(-) diff --git a/src/main/java/amadeus/Amadeus.java b/src/main/java/amadeus/Amadeus.java index 9fa0b3a4a..4f38af63d 100644 --- a/src/main/java/amadeus/Amadeus.java +++ b/src/main/java/amadeus/Amadeus.java @@ -1,4 +1,6 @@ package amadeus; +import java.util.Scanner; + public class Amadeus { public static void main(String[] args) { @@ -21,11 +23,63 @@ public static void main(String[] args) { System.out.println("\uD83D\uDC4B Greetings. I am Amadeus, your cognitive assistant."); System.out.println("I monitor divergences in world lines… and sometimes your mistakes."); System.out.println("What knowledge do you seek today?"); - System.out.println(""); - System.out.println("────────────────────────────────────────────────────────────────"); - System.out.println("System shutting down... awaiting next transmission."); - System.out.println("El Psy Kongroo."); + System.out.println(); + System.out.println("Here are the different mode : 1. echo"); + System.out.println(" 2. D-mail"); + System.out.print("Write the name of the command you wish use : "); + + Scanner scanner = new Scanner(System.in); + while(true){ + String answer = scanner.nextLine(); + System.out.println(); + if(answer.equals("bye")){ + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("System shutting down... awaiting next transmission."); + System.out.println("El Psy Kongroo."); + System.out.println("────────────────────────────────────────────────────────────────"); + break; + } + else if(answer.equals("echo")){ + System.out.println("The Mad Scientist chose the option Echo"); + while(true) { + String echo = scanner.nextLine(); + if (echo.equals("esc")) { + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("System shutting down... awaiting next transmission."); + System.out.println("El Psy Kongroo."); + System.out.println("────────────────────────────────────────────────────────────────"); + break; + } else { + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("You just said : " + echo); + System.out.println("────────────────────────────────────────────────────────────────"); + } + } + } + else if (answer.equals("D-mail")) { + System.out.println("The Mad Scientist chose to send a D-mail"); + while (true) { + String echo = scanner.nextLine(); + if (echo.equals("El Psy Kongroo")) { + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("The SERN is spying us we need to disconnect ..."); + System.out.println("⚠️ Your position has been compromised. flee immediately."); + System.out.println("El Psy Kongroo."); + System.out.println("World line shift imminent."); + System.out.println("────────────────────────────────────────────────────────────────"); + break; + } else { + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("\uD83D\uDCF1 D-mail is sending to the past ..."); + System.out.println("⚡ Time transmission in progress ..."); + System.out.println("📧 Message received in world line 1.130205%: "+echo); + System.out.println("────────────────────────────────────────────────────────────────"); + } + } + } + } + scanner.close(); } } From 206d8413fd48c1bad13a58e0ada5ed28df2471d3 Mon Sep 17 00:00:00 2001 From: Sheeeesh-code Date: Tue, 2 Sep 2025 15:00:51 +0800 Subject: [PATCH 3/4] Add List command --- src/main/java/amadeus/Amadeus.java | 37 ++++++++++++++++++++++++++---- 1 file changed, 33 insertions(+), 4 deletions(-) diff --git a/src/main/java/amadeus/Amadeus.java b/src/main/java/amadeus/Amadeus.java index 4f38af63d..13358d95d 100644 --- a/src/main/java/amadeus/Amadeus.java +++ b/src/main/java/amadeus/Amadeus.java @@ -4,6 +4,8 @@ public class Amadeus { public static void main(String[] args) { + String[] tasks = new String[100]; + int count = 0; String logo = "╔══════════════════════════════════════════════════════════════╗\n" + "║ ║\n" @@ -24,26 +26,27 @@ public static void main(String[] args) { System.out.println("I monitor divergences in world lines… and sometimes your mistakes."); System.out.println("What knowledge do you seek today?"); System.out.println(); - System.out.println("Here are the different mode : 1. echo"); + System.out.println("Here are the different mode : 1. Echo"); System.out.println(" 2. D-mail"); + System.out.println(" 3. List"); System.out.print("Write the name of the command you wish use : "); Scanner scanner = new Scanner(System.in); while(true){ String answer = scanner.nextLine(); System.out.println(); - if(answer.equals("bye")){ + if(answer.equals("Disconnect")){ System.out.println("────────────────────────────────────────────────────────────────"); System.out.println("System shutting down... awaiting next transmission."); System.out.println("El Psy Kongroo."); System.out.println("────────────────────────────────────────────────────────────────"); break; } - else if(answer.equals("echo")){ + else if(answer.equals("Echo")){ System.out.println("The Mad Scientist chose the option Echo"); while(true) { String echo = scanner.nextLine(); - if (echo.equals("esc")) { + if (echo.equals("Esc")) { System.out.println("────────────────────────────────────────────────────────────────"); System.out.println("System shutting down... awaiting next transmission."); System.out.println("El Psy Kongroo."); @@ -79,7 +82,33 @@ else if (answer.equals("D-mail")) { } } } + else if (answer.equals("List")) { + while (true) { + String echo = scanner.nextLine(); + if (echo.equals("Bye")) { + System.out.println("The list printing is finished"); + break; + } else if (echo.equals("list")) { + for (int i = 0; i < count; i++) { + System.out.println((i + 1) + ". " + tasks[i]); + } + } else { + if (count < 100) { + tasks[count] = echo; + count++; + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println(" added: " + echo); + System.out.println("────────────────────────────────────────────────────────────────"); + } else { + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("You already have too many things to do, finish some before adding more."); + System.out.println("────────────────────────────────────────────────────────────────"); + } + } + } + } } scanner.close(); } } + From 8151f1be23c46c81cbd5d6bb87308fc5cc893881 Mon Sep 17 00:00:00 2001 From: Sheeeesh-code Date: Tue, 2 Sep 2025 16:06:55 +0800 Subject: [PATCH 4/4] Add Unmark, mark command and Task class --- src/main/java/amadeus/Amadeus.java | 22 ++++++++++++++++++++-- src/main/java/amadeus/Task.java | 24 ++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 src/main/java/amadeus/Task.java diff --git a/src/main/java/amadeus/Amadeus.java b/src/main/java/amadeus/Amadeus.java index 13358d95d..1d297ce81 100644 --- a/src/main/java/amadeus/Amadeus.java +++ b/src/main/java/amadeus/Amadeus.java @@ -4,7 +4,7 @@ public class Amadeus { public static void main(String[] args) { - String[] tasks = new String[100]; + Task[] tasks = new Task[100]; int count = 0; String logo = "╔══════════════════════════════════════════════════════════════╗\n" @@ -44,6 +44,7 @@ public static void main(String[] args) { } else if(answer.equals("Echo")){ System.out.println("The Mad Scientist chose the option Echo"); + System.out.println("Echo mode activated. Type 'Esc' to exit."); while(true) { String echo = scanner.nextLine(); if (echo.equals("Esc")) { @@ -63,6 +64,7 @@ else if(answer.equals("Echo")){ } else if (answer.equals("D-mail")) { System.out.println("The Mad Scientist chose to send a D-mail"); + System.out.println("D-mail mode activated. Type 'El Psy Kongroo' to exit."); while (true) { String echo = scanner.nextLine(); if (echo.equals("El Psy Kongroo")) { @@ -83,6 +85,7 @@ else if (answer.equals("D-mail")) { } } else if (answer.equals("List")) { + System.out.println("List mode activated. Type 'Bye' to exit."); while (true) { String echo = scanner.nextLine(); if (echo.equals("Bye")) { @@ -92,9 +95,24 @@ else if (answer.equals("List")) { for (int i = 0; i < count; i++) { System.out.println((i + 1) + ". " + tasks[i]); } + + } else if (echo.toLowerCase().startsWith("mark")) { + int idx = Integer.parseInt(echo.split(" ")[1]) - 1; + tasks[idx].markAsDone(); + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("Nice! I've marked this task as done:"); + System.out.println(" " + tasks[idx]); + System.out.println("────────────────────────────────────────────────────────────────"); + } else if (echo.toLowerCase().startsWith("unmark")) { + int idx = Integer.parseInt(echo.split(" ")[1]) - 1; + tasks[idx].markAsUndone(); + System.out.println("────────────────────────────────────────────────────────────────"); + System.out.println("OK, I've marked this task as not done yet:"); + System.out.println(" " + tasks[idx]); + System.out.println("────────────────────────────────────────────────────────────────"); } else { if (count < 100) { - tasks[count] = echo; + tasks[count] = new Task(echo); count++; System.out.println("────────────────────────────────────────────────────────────────"); System.out.println(" added: " + echo); diff --git a/src/main/java/amadeus/Task.java b/src/main/java/amadeus/Task.java new file mode 100644 index 000000000..35f68c96f --- /dev/null +++ b/src/main/java/amadeus/Task.java @@ -0,0 +1,24 @@ +package amadeus; + +public class Task { + private final String description; + private boolean isDone; + public Task(String description) { + this.description = description; + this.isDone = false; + } + + public void markAsDone() { + this.isDone = true; + } + public void markAsUndone() { + this.isDone = false; + } + public String getStatusIcon() { + return (isDone ? "[X]" : "[ ]"); + } + @Override + public String toString() { + return getStatusIcon() + " " + description; + } +} \ No newline at end of file