diff --git a/docs/assets/js/UI/ui.js b/docs/assets/js/UI/ui.js index 5350b2e..5e51149 100644 --- a/docs/assets/js/UI/ui.js +++ b/docs/assets/js/UI/ui.js @@ -9,6 +9,8 @@ function drawLevelTransitionUI() { // UI for playing function drawPlayingUI() { + cartesianRect(0,ch/3*2, cw, ch/3, "#333333") + //Heart Rate Monitor heartBeatUI(cw/4*3-8,ch/8*7-8,cw/4,ch/8); @@ -32,8 +34,8 @@ function drawEndUI() { */ function respiratoryUI(x, y, width, height){ - cartesianRect(x,y,width,height, "black"); - cartesianRect(x,y+(height-breath/constants.lifeFuncs.breath.fullBreath*height), width, breath/constants.lifeFuncs.breath.fullBreath*height, "teal"); + cartesianRect(x,y,width,height, "rgb("+noBreathTimer/180*255+","+0+","+0+")"); + cartesianRect(x,y+(height-breath/constants.lifeFuncs.breath.fullBreath*height), width, breath/constants.lifeFuncs.breath.fullBreath*height, "rgb("+255+","+(255-fullBreathTimer/180*255)+","+(255-fullBreathTimer/180*255)+")"); } /*** diff --git a/docs/assets/js/player/lifeFunctions.js b/docs/assets/js/player/lifeFunctions.js index 0cd075e..1df2f12 100644 --- a/docs/assets/js/player/lifeFunctions.js +++ b/docs/assets/js/player/lifeFunctions.js @@ -1,37 +1,64 @@ let breath = 180; let fullBreathTimer = 0; +let noBreathTimer = 0; let heartRate = 60; let heartBeat = false; +var breathMode = { + inhale: 0, + exhale: 1 +}; + +let currentBreathMode = breathMode.exhale; + + function updateLife() { - if(keyDown[k.z]) { - breathe(); - } else { - breath--; + if(keyDown[k.UP]) { + if(breath === 0) currentBreathMode = breathMode.inhale; } + if(keyDown[k.DOWN]) { + if(breath === constants.lifeFuncs.breath.fullBreath) currentBreathMode = breathMode.exhale; + } + + breathe(); + if(keyPress[k.x]) { heartbeat(); } }; function breathe() { - - breath += 5; - if(breath >= constants.lifeFuncs.breath.fullBreath) { - breath = constants.lifeFuncs.breath.fullBreath; - fullBreathTimer++; - if(fullBreathTimer >= 60) { - //cough and lose breath or something - } - } else { - fullBreathTimer = 0; + switch (currentBreathMode) { + case breathMode.inhale: + breath += 1; + if(breath >= constants.lifeFuncs.breath.fullBreath) { + breath = constants.lifeFuncs.breath.fullBreath; + fullBreathTimer++; + if(fullBreathTimer >= 180) { + //cough and lose breath or something + } + } else { + fullBreathTimer = 0; + } + break; + case breathMode.exhale: + breath -= 1; + if(breath <= 0) { + breath = 0; + noBreathTimer++; + if(noBreathTimer >= 180) { + //cough and lose breath or something + } + } else { + noBreathTimer = 0; + } + break; } - }; function heartbeat() {