From fbbc7519a862f96c1dd0282e07a13eaa01abce77 Mon Sep 17 00:00:00 2001 From: Remington Covert Date: Sun, 28 Sep 2014 13:57:15 -0700 Subject: [PATCH] Wizard convincing puzzle. --- desktop/src-common/advent/screens/scene.clj | 63 +++++++++++++++++++-- 1 file changed, 58 insertions(+), 5 deletions(-) diff --git a/desktop/src-common/advent/screens/scene.clj b/desktop/src-common/advent/screens/scene.clj index 9c6a7ce2..c8cb77dd 100644 --- a/desktop/src-common/advent/screens/scene.clj +++ b/desktop/src-common/advent/screens/scene.clj @@ -159,8 +159,7 @@ (apply do-dialogue entities :ego line more)) (defn wizard-dialogue [entities] - { - :choices ["What do you mean, \"Not you again?\"" + {:choices ["What do you mean, \"Not you again?\"" {:run #(respond entities % :wizard "I mean, you've wrecked my life and I never want to see you again.") :choices ["You mean the time I set your house on fire with a fire mint?" {:run #(do @@ -185,9 +184,63 @@ (actions/transition-background entities :outside-house [262 88]))} "Even an old hoot like you needs a kick in the pants every now and again." {:run #(respond entities % :wizard "What gives you the right to try to teach me a lesson?") - :choices ["My good looks?" {:choices actions/previous-choices} - "My good standing within the community?" {:choices actions/previous-choices} - "My respectful attitude?" {:choices actions/previous-choices}]}]} + :choices ["My good looks?" + {:run #(do (respond entities % + :wizard "You know, handsome looks aren't all they're chocked up to be." + :wizard "Take me for example." + :wizard "When you have a bod like man, you can hardly go to the grocery store without being noticed." + :wizard "But no. Your looks, however good they may be, don't give you the right to teach me a lesson." + :wizard "Now please leave me in peace.") + (actions/transition-background entities :outside-house [262 88]))} + "My good standing within the community?" + {:run #(do (respond entities % + :wizard "Ha! Good standing?" + :wizard "You're the neighborhood cheat and everyone knows it." + :wizard "Now please leave me in peace.") + (actions/transition-background entities :outside-house [262 88]))} + "I'm going to be a knight! That counts for something doesn't it?" + {:run #(do (respond entities % + :wizard "You are, are you?" + :wizard "Pray tell, how do you, a mere wreckless youth, plan on becoming a knight?")) + :choices ["By pulling the Sword of Blergh from its stone!" + {:run #(respond entities % + :wizard "Well, well. It sounds I was wrong about you." + :wizard "Indeed, you are on the path of setting your destructive past behind you." + :wizard "But know this, the stone cannot be cheated easily." + :wizard "You must fulfill the age-old prophecy." + :wizard "'The Sword of Blergh with magic sting,' ..." + :wizard "... 'Shall yield to no earthly king.'" + :wizard "'To draw from hardened, weathered stone,' ..." + :wizard "... 'One must have valor, right to the bone.'" + :wizard "'Worthy in courage, wisdom and might,' ..." + :wizard "... 'only then with sword he'll fight.'" + :wizard "'But a hero should he prove not be,' ..." + :wizard "... 'Only ruin will fall on thee.'" + :wizard "'I'll fall neither for guile nor guise'..." + ) + :choices ["Is this almost over?" + {:run #(do (respond entities % + :wizard "Patience, boy." + :wizard "... 'Such a man will have great surprise.'" + :wizard "If this is truely your quest, boy, then I will help you in your quest. " + :wizard "But heed the warning from the prophecy: No cheat can pull the Sword of Blergh." + :ego "No cheating." + :ego "Check.") + (swap! entities (fn [e] (assoc-in e [:state :convinced-wizard?] true))))} + "*cough* *cough* *ahem*" + {:run #(do (respond entities % + :wizard "Excuse you." + :wizard "... 'Such a man will have great surprise.'" + :wizard "If this is truely your quest, boy, then I will help you in your quest. " + :wizard "But heed the warning from the prophecy: No cheat can pull the Sword of Blergh." + :ego "No cheating." + :ego "Check.") + (swap! entities (fn [e] (assoc-in e [:state :convinced-wizard?] true))))}]} + "By besting swamp, foe, and the occasional bizarre conversation tree." + {:run #(do (respond entities % + :wizard "While your goal sounds noble, no amount of bizarre conversation tree searching will earn my respect." + :wizard "Now please leave.") + (actions/transition-background entities :outside-house [262 88]))}]}]}]} "You're not happy to see me, Mr. Fangald?" {:run #(respond entities % :wizard "Of course not, you little brat. You've made my life a living hell!") :choices #(-> % zip/left)}