From 06d3fa0228994963730bc269e00936cb98c9b3b6 Mon Sep 17 00:00:00 2001
From: Manuel Herrmann <it@icetruck.de>
Date: Thu, 24 Sep 2015 22:32:52 +0200
Subject: [PATCH] food impr; overlay; use possibe?; speedrun

---
 .../view/signups/game1/index.php              |   4 +
 .../view/signups/game1/js/achievements.js     |   1 +
 .../view/signups/game1/js/environment.js      |  11 +-
 .../view/signups/game1/js/events.js           |   5 +-
 .../view/signups/game1/js/story.js            |  94 +++++++++++++++---
 .../view/signups/game1/maps/dorf.svg          | Bin 1805815 -> 1806278 bytes
 .../view/signups/game1/maps/shop.svg          | Bin 532859 -> 534911 bytes
 .../view/signups/game1/test.html              |   2 +
 registration-system/view/signups/game1/ui.css |  10 ++
 9 files changed, 105 insertions(+), 22 deletions(-)

diff --git a/registration-system/view/signups/game1/index.php b/registration-system/view/signups/game1/index.php
index 84edb49..293d4ae 100644
--- a/registration-system/view/signups/game1/index.php
+++ b/registration-system/view/signups/game1/index.php
@@ -67,8 +67,12 @@ class Game1SignupMethod extends SignupMethod {
                 <div id="game-game">
                     <div id="gameCanvas" style="overflow:hidden;position:relative">
                         <div id="gameRoot" style="position:relative"></div>
+                        <div id="gameDialogue" class="bordered-box"></div>
                     </div>
                 </div>
+
+                <div id="game-overlay">
+                </div>
             </div>
 
             <script>
diff --git a/registration-system/view/signups/game1/js/achievements.js b/registration-system/view/signups/game1/js/achievements.js
index 9251f1d..bcb047a 100644
--- a/registration-system/view/signups/game1/js/achievements.js
+++ b/registration-system/view/signups/game1/js/achievements.js
@@ -11,6 +11,7 @@ function Achievements() {
         'stroh': 'Warum liegt hier Stroh rum?',
         'saw_devs1': 'Wilde Informatiker auf Wiese gesehen',
         'moneyboy': 'Money Boy: Swag ist aufgedreht',
+        'speedrun': 'Haalt stop! Denkt doch mal an die Kinder!!1!',
         'woman': 'Mit einer Prinzessin gesprochen',
         'plumber': 'Berufung: Gas, Wasser, Scheiße',
         'princess': 'Prinzessin verärgert',
diff --git a/registration-system/view/signups/game1/js/environment.js b/registration-system/view/signups/game1/js/environment.js
index a651b1c..160a2c3 100644
--- a/registration-system/view/signups/game1/js/environment.js
+++ b/registration-system/view/signups/game1/js/environment.js
@@ -28,6 +28,7 @@ Environment.progress = {
     // dorf related
     dorf_talkedToWirt: false,
     dorf_pickedFood: false,
+    dorf_pickedFootAndLeftPub: false,
     dorf_boughtTicket: false,
 
     // ufer related
@@ -79,11 +80,13 @@ Environment.mapEvents = {
     },
     'dorf': {
         init: function(svg) {
-            if (!Environment.progress.dorf_pickedFood)
+            if (!Environment.progress.dorf_pickedFood) {
                 Game.log("Geh ins Wirtshaus");
-            if (!Environment.progress.dorf_boughtTicket && Environment.progress.dorf_pickedFood) {
-                Game.log("Rede mit der Prinzessin");
-            } else {
+            } else if (!Environment.progress.dorf_pickedFootAndLeftPub && !Environment.progress.dorf_boughtTicket) {
+                Environment.progress.dorf_pickedFootAndLeftPub = true;
+                Game.log("Geh zum Reisebüro und rede mit der Prinzessin");
+            }
+            if (!Environment.progress.dorf_pickedFood || Environment.progress.dorf_boughtTicket) {
                 svg.select('#ticketfrau').style('display', 'none');
             }
         }
diff --git a/registration-system/view/signups/game1/js/events.js b/registration-system/view/signups/game1/js/events.js
index 5f63127..5cfa8e2 100644
--- a/registration-system/view/signups/game1/js/events.js
+++ b/registration-system/view/signups/game1/js/events.js
@@ -33,8 +33,7 @@ function EventHandler(svg) {
 }
 
 EventHandler.prototype.hasEventOn = function (trigger, x, y) {
-    return this.getEventOn(trigger, x, y, function () {
-    });
+    return this.getEventOn(trigger, x, y, function () {});
 };
 
 EventHandler.prototype.getEventOn = function (trigger, x, y, callback) {
@@ -44,6 +43,8 @@ EventHandler.prototype.getEventOn = function (trigger, x, y, callback) {
     for (var i = 0; i < this.eventNodes[trigger].length; ++i) {
         var node = this.eventNodes[trigger][i];
         if (node.path.isInside(x, y)) {
+            if (node.action && !Story.actions[node.action].possible()) return;
+
             hasEvent = true;
             if (trigger == 'walkon' && !this.walkOnEvents[node.id]) {
                 this.walkOnEvents[node.id] = true;
diff --git a/registration-system/view/signups/game1/js/story.js b/registration-system/view/signups/game1/js/story.js
index e89104d..ab5de22 100644
--- a/registration-system/view/signups/game1/js/story.js
+++ b/registration-system/view/signups/game1/js/story.js
@@ -595,6 +595,25 @@ Story.actions = {
                 kaese: Game.char.svg.select('#kaese'),
                 griess: Game.char.svg.select('#griess')
             };
+            var nodes = {
+                fleischBlast: Game.char.svg.select('#fleisch_blast'),
+                kaeseBlast: Game.char.svg.select('#kaese_blast'),
+                griessBlast: Game.char.svg.select('#griess_blast')
+            };
+
+            function appearanceBlast(blastElement, food) {
+                var cnt = 0;
+                var looper = setInterval(function () {
+                    cnt++;
+                    blastElement.style('display', (cnt % 2) ? 'block' : 'none');
+                    if (cnt > 10) {
+                        clearInterval(looper);
+                        food.style('display', 'block');
+                        blastElement.style('display', 'none');
+                    }
+                }, 60);
+            }
+
             Story.dialogueHelper([{
                 bubble: '#wirt_speech',
                 message: 'Na du!? Du bist wohl her gekommen um etwas zum Essen zu holen...'
@@ -615,19 +634,19 @@ Story.actions = {
                 bubble: '#wirt_speech',
                 message: 'Prima! Ich habe dir ein Essen auf den Tisch gestellt.',
                 action: function () {
-                    food.fleisch.style('display', 'block');
+                    appearanceBlast(nodes.fleischBlast, food.fleisch);
                 }
             }, {
                 bubble: '#wirt_speech',
                 message: 'Wenn du kein Fleisch ist, mache ich dir Käse und Brot.',
                 action: function () {
-                    food.kaese.style('display', 'block');
+                    appearanceBlast(nodes.kaeseBlast, food.kaese);
                 }
             }, {
                 bubble: '#wirt_speech',
                 message: 'Aus der Sojamilch der Ziege habe ich Grießbrei gemacht.',
                 action: function () {
-                    food.griess.style('display', 'block');
+                    appearanceBlast(nodes.griessBlast, food.griess);
                 }
             }], null, function () {
                 Game.log('Wähle deinen Essenswunsch');
@@ -640,28 +659,71 @@ Story.actions = {
             return Environment.progress.dorf_talkedToWirt && !Environment.progress.dorf_pickedFood;
         },
         action: function (event) {
-            Environment.progress.dorf_pickedFood = true;
             var food = {
                 fleisch: Game.char.svg.select('#fleisch'),
                 kaese: Game.char.svg.select('#kaese'),
                 griess: Game.char.svg.select('#griess')
             };
             if (event.id === 'click_fleisch') {
-                Environment.fapi.data.setValue('essen', 'ALLES');
-                food.fleisch.style('display', 'none');
+                Story.dialogueHelper([{
+                    answer: [{
+                        message: 'Ich esse alles!',
+                        action: function () {
+                            Game.log("Du isst also alles.");
+                            Environment.progress.dorf_pickedFood = true;
+                            Environment.fapi.data.setValue('essen', 'ALLES');
+                            food.fleisch.style('display', 'none');
+                        }
+                    }, {
+                        message: 'Fleisch mag ich nicht!',
+                        action: function () {
+                        }
+                    }]
+                }], null, onPickDialogEnd);
             } else if (event.id === 'click_kaese') {
-                Environment.fapi.data.setValue('essen', 'VEGE');
-                food.kaese.style('display', 'none');
+                Story.dialogueHelper([{
+                    answer: [{
+                        message: 'Ich esse vegetarisch!',
+                        action: function () {
+                            Game.log("Du isst also vegetarisch.");
+                            Environment.progress.dorf_pickedFood = true;
+                            Environment.fapi.data.setValue('essen', 'VEGE');
+                            food.kaese.style('display', 'none');
+                        }
+                    }, {
+                        message: 'Neeee! Ich bin nicht auf Diät!',
+                        action: function () {
+                        }
+                    }]
+                }], null, onPickDialogEnd);
             } else if (event.id === 'click_griess') {
-                Environment.fapi.data.setValue('essen', 'VEGA');
-                food.griess.style('display', 'none');
+                Story.dialogueHelper([{
+                    answer: [{
+                        message: 'Grieß schmeckt gut! Ich bringe mein eigenes Essen mit zur Fahrt!',
+                        action: function () {
+                            Game.log("Du bringst dein eigenes Essen mit.");
+                            Environment.progress.dorf_pickedFood = true;
+                            Environment.fapi.data.setValue('essen', 'VEGA');
+                            food.griess.style('display', 'none');
+                        }
+                    }, {
+                        message: 'Neee! Da werd ich doch nicht von satt!',
+                        action: function () {
+                        }
+                    }]
+                }], null, onPickDialogEnd);
+            }
+
+            function onPickDialogEnd() {
+                if (Environment.progress.dorf_pickedFood) {
+                    setTimeout(function () {
+                        food.fleisch.style('display', 'none');
+                        food.kaese.style('display', 'none');
+                        food.griess.style('display', 'none');
+                    }, 1000);
+                    Game.log('Gehe zurück ins Dorf');
+                }
             }
-            setTimeout(function () {
-                food.fleisch.style('display', 'none');
-                food.kaese.style('display', 'none');
-                food.griess.style('display', 'none');
-            }, 1000);
-            Game.log('Gehe zurück ins Dorf')
         }
     },
 
diff --git a/registration-system/view/signups/game1/maps/dorf.svg b/registration-system/view/signups/game1/maps/dorf.svg
index 83279be621e443a601e6d51ed607b8f07422cb6f..e1b6589d85144479295a5d407055cce034daf5b4 100644
GIT binary patch
delta 1491
zcmb8vUuYaf90zc2lbq=#rfs&hO~&M==ZnbQbmn$;Z}*yrAjKCYmOO}9>s{_Pxy}9Q
zaY@tsL2M26#A^Q>;(&&#;FIDXEa_5w@}>A<Th2mX#Nv}JrO%2W_}lrJM)1kNmrw5d
z+nL<uX7~4x8rME<d~?<qkS?=nOK>jv`gtQfZ^X`>dsZ+hWL8*CDnX;4pix~Y6`Ov(
zv^<#-S=(aV%ewy=u1uz67WU)Paa7@A?7bdOI7)P4`vxn1FjrZG#as&A^uSJvcVfg4
zE?!bEE(i5s)h|z`c)Qt&K@3O_q!-c$i9;TN^h0()5|9DNAmmZV5M(E07i4$X><s^W
zBSzH=Gv@QahsbY;Ea~zzavdRMT~?4y#PD@Fg=`@A5NB4;){&dY*qkoskr3&v=<*11
z3AvBBfu5Z~x=3<fmo?-n60hoV8u<iyfaGg>)<$k22kN?PAm0IMDnFc8^i?vflB1*j
z;VTXEZb`l98U2c1F?-ecrWt?3b(v$imYo(ZXIam71uapY<}4?<uxN%e>3PwZSx{tY
zMld04OKumOIl}h5G~b@VDrh|KU(MEfo`xar9c_I$+8g$aHn-^3-VclIy|+ftJiKgc
z*{XWxiaFjcbWO+}$X>`}kbRK-kdd&^9i{KW(KvmKL?`4rLSECaD##{c6m&U-Y#{d#
zr>JM^$W3HyMwjzQi1e0pc?7wH+(+E9o}EFuNYdA34Y`WMXUT**74Ngv+U3L^HIdkx
zRG-h1%kUA7&FSmEK>k1uS9IAy?jY$vmn+CM#GKb<0r?X76M3$xXYV7wBCMv%HRK0C
z-T4dN*jF$0nBmbnxt%bNH;biUaU~C5Y}SgtfA^63`WG{&USB2$RQ4=+TqWNonelqD
zRrOo>#_@)KXen3-W`bI@O#fQ*)r~e>{X~mA75=nBK8uaG%=5VA(45V3j*v1sK@y%~
zPIz&Rbo$h(uGz1uC&^KD;UuAI_p~vlE-aIw|Nj@C442*{CkE91X=A7QpiOqE#WqQ)
zjd#cnRruCSmIHWXEi`?<+&a<t=b=a`bag5$k25#trKRICZo4^$X5gQ|a`602dvMZi
z33roZ(fdwkq{FxacN@*h=!m-#Za9ZK+@q^0_31hpQ7^wmW>x%qb5sreXvPO84$eKD
Km^iqw1pE!RGq4r_

delta 1041
zcmZY5T}V@59LI6a@ogT>oYO2H!MW(d(7AIwJ3G_O2nlb35PQ3ba!#Fdx=kI`3Mz_a
zvXUC%a}kvG1`(3r#i2L4DQ|`B4Jx9mqR8l`qO1OUe$Y*WFCX^%Z-=qvYw=%K;)_|i
z(62ft&dkcztSrsUbZKr=Gj+|Ux)f*r6^+Lx!=dD0d-!P3<@Kv>Q#ZZFf5&vtrD-}H
zHIK<7m!t~?hUwuwIjNRc<RnGb4DqIf9-{g+T#E8v((}7ZQm0ZmiIS-Ts*oz8im4LH
zMwL<uRYsLl>!=E9Jyl8BtyHe+-HN2}o_@zp;wtzG%&-_U;5ld*5aTGg4~hrH*bC;s
zH_$#LZd2d|XpD$44juyAuo(A%>)<;GM8$0yyaJm?#Fzw+ff5trK5!HK0G*@amIZIX
zmN79-fG0$;5{U$Zie-;Gi~&Bk;^>_kUv*H`R1LL(s--qko2>EGx-VJ!_YNFl`9JXv
z_zAlD#CQ?B2U|m8JOZ8qd%qYDg1g{1*bx@D9QXj52gH~L%fK-x#y+qB{($Zwak~sY
z4zU3J-0iyx+W3hjrG{_&RNcTc5w=9De^`9<ELa83s2In<15h#|#@%2ZtbvZ0xSazp
zfooKZ3GfJ%j)`$ExB=$Z3cD>|oV`}~+N@;br?Sj$)3r7~y-dD%OK#%()2xyAoo8)I
zA{h!tQ|WfKgP+W>dj4#JweZCRTd<mrvD;Fes=E!{r>Rb#*X=V@U2kqN+#bW@SFO*-
qS+0mzR?77}mSz?C=LPw6hE@H0$UW=rX*O9_9%zkpDuLF?!^B?{(mL7z

diff --git a/registration-system/view/signups/game1/maps/shop.svg b/registration-system/view/signups/game1/maps/shop.svg
index 1e32083e6c3672ac52a0f62f8735ede94107e747..9dc74f32bb5599580d671bce80c370744b788ab5 100644
GIT binary patch
delta 32572
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

delta 34158
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

diff --git a/registration-system/view/signups/game1/test.html b/registration-system/view/signups/game1/test.html
index 95a6af0..76e29e9 100644
--- a/registration-system/view/signups/game1/test.html
+++ b/registration-system/view/signups/game1/test.html
@@ -57,6 +57,8 @@
             <div id="gameDialogue" class="bordered-box"></div>
         </div>
     </div>
+    <div id="game-overlay">
+    </div>
 </div>
 <script>
     g_smallValue = 0.000001; // fun with floats
diff --git a/registration-system/view/signups/game1/ui.css b/registration-system/view/signups/game1/ui.css
index a57a1b5..4991d16 100644
--- a/registration-system/view/signups/game1/ui.css
+++ b/registration-system/view/signups/game1/ui.css
@@ -24,6 +24,16 @@
     width: 189px;
 }
 
+#game-overlay {
+    position: absolute;
+    top: 0;
+    left: 0;
+    width: 800px;
+    height: 600px;
+    display: none;
+    background-color: #000;
+}
+
 .bordered-box {
     font-family: ‘Lucida Console’, Monaco, monospace;
     color: white;
-- 
GitLab