diff --git a/stories/geta-unaware.js b/stories/geta-unaware.js index 13cc041..fe2c4d2 100644 --- a/stories/geta-unaware.js +++ b/stories/geta-unaware.js @@ -1,6 +1,11 @@ (() => { function checkSuspicion(state, add = 0) { const old = getStat("suspicion", state); + + if (add >= 0) { + add *= state.geta.awareness; + } + changeStat("suspicion", add, state); if (getStat("suspicion", state) >= 100) { print(["Geta spots you!", "You're snatched up and tossed into the fox's bowl of cereal."]); @@ -23,6 +28,9 @@ "intro": { "start": "pepper-grinder", "setup": state => { + state.geta = {}; + state.geta.awareness = 1; + state.player.stats.health = { name: "Health", type: "meter", value: 100, min: 0, max: 100, color: "rgb(255,55,55)" }; state.player.stats.suspicion = { name: "Suspicion", type: "meter", value: 0, min: 0, max: 100, color: "rgb(100,100,100)" }; state.info.time.value = 60 * 60 * 7 + 60 * 17; @@ -56,7 +64,6 @@ ] }, state); - startTimer({ id: "timeout", func: state => { @@ -78,6 +85,60 @@ ] }, state); + startTimer({ + id: "geta-action", + func: state => { + const random = Math.random(); + + if (random < 0.7) { + print(["Geta slurps up a spoonful of cereal."]); + } else if (random < 0.9) { + state.geta.awareness = 0.1; + print(["The fox yawns and stretches."]); + + startTimer({ + id: "yawn-end", + func: state => { + print(["Geta finishes his stretch"]); + state.geta.awareness = 1; + return true; + }, + delay: 2000, + loop: false, + classes: [ + "free" + ] + }, state); + + } else { + state.geta.awareness = 2; + print(["Geta narrows his eyes and looks around the table. Something seems off to him..."]); + + startTimer({ + id: "squint-end", + func: state => { + print(["He goes back to his breakfast."]); + state.geta.awareness = 1; + return true; + }, + delay: 4000, + loop: false, + classes: [ + "free" + ] + }, state); + + } + return 5000 + }, + delay: 5000, + loop: true, + classes: [ + "free" + ] + }, state); + + }, "intro": state => { @@ -151,17 +212,17 @@ ] }, "left": { - "target": "table", - "desc": "Run out into the open", - "show": [ - - ], - "conditions": [ - - ], - "hooks": [ - - ] + "target": "table", + "desc": "Run out into the open", + "show": [ + + ], + "conditions": [ + + ], + "hooks": [ + + ] }, }, "hooks": [ @@ -256,17 +317,17 @@ ], "exits": { "right": { - "target": "pepper-grinder", - "desc": "Run back to cover", - "show": [ - - ], - "conditions": [ - - ], - "hooks": [ - - ] + "target": "pepper-grinder", + "desc": "Run back to cover", + "show": [ + + ], + "conditions": [ + + ], + "hooks": [ + + ] }, }, "hooks": [