From 69d387036efbf36522919bcdb3b3bd5c33d5b147 Mon Sep 17 00:00:00 2001
From: MegaBrutal <code+git@megabrutal.com>
Date: Sat, 15 Sep 2018 08:05:45 +0200
Subject: [PATCH] Add Saiki dialogues

	modified:   wgj58.js
---
 wgj58.js | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 100 insertions(+), 1 deletion(-)

diff --git a/wgj58.js b/wgj58.js
index 2183a22..dec883d 100644
--- a/wgj58.js
+++ b/wgj58.js
@@ -385,8 +385,107 @@ class NPC_Carlos extends GameNPC {
 
 class NPC_Saiki extends GameNPC {
 	actionTalk() {
+		if (logic.carlos.alive) {
+			switch (this.talkcount) {
+				case 0:
+					logic.gameinterface.talk(new Dialogue( [ { actor: logic.player, text: "Hi Saiki!" },
+						{ actor: this, text: "Hi John! Glad you arrived, here's some work for you!" },
+						{ actor: logic.player, text: "Awesome! What is it?" },
+						{ actor: this, text: "Haha, joking! Actually, our queue is suspiciously empty for today." },
+						{ actor: logic.player, text: "Yeah... That's really suspicious!" },
+						{ actor: logic.player, text: "Maybe I can get home today in time?" },
+						{ actor: this, text: "You mean, you wouldn't spend the mandatory free extra working hours?" },
+						{ actor: this, text: "You steal from the company! The company needs your unpaid hours of work! Otherwise, how would we finance the trash can I ordered for the department?" },
+						{ actor: this, text: "*Whispers with wink.* I hope you get my sarcasm." },
+						{ actor: logic.player, text: "Haha! I always get it, Saiki!" } ] ));
+					logic.closeDoor("carlosdoor");
+					logic.openDoor("saikidoor");
+					break;
+				case 1:
+					logic.gameinterface.talk(new Dialogue( [ { actor: this, text: "Now that I think about it, there's still one thing. You could look into why the access control system is acting so funny today." },
+						{ actor: this, text: "Clara has to enter people manually." },
+						{ actor: logic.player, text: "Yeah, I'll definitely check that." } ] ));
+					break;
+				case 2:
+					logic.gameinterface.talk(new Dialogue( [ { actor: logic.player, text: "So... what's up with the trash can?" },
+						{ actor: this, text: "I'm always up for such deep conversation" },
+						{ actor: this, text: "about trash cans." },
+						{ actor: this, text: "While we only have one trash can, other departments seem to be abundant of them. And ours is always filled. So I requested an additional trash can." },
+						{ actor: this, text: "Now the ticket is in PENDING status. The latest work note is from two months ago, telling there is no budget at the moment." },
+						{ actor: logic.player, text: "Hmm... Maybe it's too much to ask. Can we take one from another department?" },
+						{ actor: this, text: "No, everyone holds on to their trash cans." },
+						{ actor: logic.player, text: "You certainly did your research." },
+						{ actor: this, text: "Of course. It's an important subject." } ] ));
+					break;
+				case 3:
+					logic.gameinterface.talk(new Dialogue( [ { actor: this, text: "My parents named me after a Japanese rock singer." },
+						{ actor: logic.player, text: "Cool! Which band?" },
+						{ actor: this, text: "I don't remember the band name. But the particular singer has a blue rose in her hair most of the time." } ] ));
+					break;
+				default:
+					if ((logic.carlos.pigsemen) && (this.talkcount == 4)) {
+						logic.gameinterface.talk(new Dialogue( [ { actor: logic.player, text: "Did you know that Carlos thought he can grow a pig by burying pig semen in the ground? What do you think about this?" },
+							{ actor: this, text: "Hmm..." },
+							{ actor: this, text: "I guess it didn't work." },
+							{ actor: this, text: "So do you want to know what I think about this?" },
+							{ actor: this, text: "IT'S BRILLIANT!!!" },
+							{ actor: this, text: "You know, it really sparkled my artistic vision! Now I must draw a pig with its legs rooted into the ground!" },
+							{ actor: logic.player, text: "That's gross. Poor pig." },
+							{ actor: this, text: "Indeed. But this is the point. He's stuck in one place, cannot move. Like you in life. So you feel sympathy for him." },
+							{ actor: logic.player, text: "You have a point." },
+							{ actor: this, text: "I think I'll catch Carlos and talk to him. I always liked that guy but I didn't know he's such imaginative." } ] ));
+						//this.offscreenTeleportation(new Phaser.Point(logic.carlos.x + 128, logic.carlos.y), this.tpdone);
+					}
+					else {
+						logic.gameinterface.talk(new Dialogue( [ { actor: this, text: "I've found an orchestrated rendition of „Potential for Anything”. You'll have to check it out, it's breathtaking!" } ] ));
+					}
+			}
+		}
+		else {
+			switch (this.talkcount) {
+				case 0:
+					logic.gameinterface.talk(new Dialogue( [ { actor: logic.player, text: "I love you, Saiki!" },
+						{ actor: this, text: "Hi Carlos..." },
+						{ actor: logic.player, text: "I'm infatuated by the mere thought of you." },
+						{ actor: this, text: "Well... it sounds pretty much creepy." },
+						{ actor: logic.player, text: "Will you go out on a date with me?" },
+						{ actor: this, text: "..." },
+						{ actor: this, text: "Sorry to hurt your feelings, but... even though I like you... Your sudden, unprecedented confession makes me scared." },
+						{ actor: this, text: "Especially with that facial expression." },
+						{ actor: this, text: "I mean... you're not even joking." },
+						{ actor: this, text: "So sorry... I won't date you." } ] ));
+					break;
+				case 1:
+					logic.gameinterface.talk(new Dialogue( [ { actor: logic.player, text: "I thought I could impress you." },
+						{ actor: this, text: "I'm sorry." } ] ));
+					break;
+				case 2:
+					logic.gameinterface.talk(new Dialogue( [ { actor: logic.player, text: "You will give me your card." },
+						{ actor: this, text: "Geez, what for? Go back to your department and work!" },
+						{ actor: logic.player, text: "I need it." },
+						{ actor: this, text: "..." } ] ));
+					break;
+				default:
+					logic.gameinterface.talk(new Dialogue( [ { actor: this, text: "Don't you have anything better to do?" } ] ));
+			}
+		}
 		super.actionTalk();
-		logic.endTalk();
+	}
+
+	actionLeave() {
+		if (logic.carlos.alive) {
+			logic.gameinterface.dropNotice(this.shortname + ": It was nice talking to you!");
+		}
+	}
+
+	actionTake() {
+		logic.closeDoor("carlosdoor");
+		logic.openDoor("saikidoor");
+		return super.actionTake();
+	}
+
+	endTalk() {
+		return (logic.carlos.alive);
 	}
 }
 
-- 
2.43.0