├── back.gif ├── bloom ├── audio │ └── bloom_loop.wav ├── bloom.gif ├── bloom.js ├── css │ ├── DeterminationMonoWeb.woff │ ├── DeterminationSansWeb.woff │ ├── undertale.css │ └── webfont.css ├── howler.js └── index.html ├── bonetrousle-getting-faster ├── audio │ └── bonetrousle.ogg ├── bonetrousle.js ├── css │ ├── DeterminationMonoWeb.woff │ ├── DeterminationSansWeb.woff │ ├── undertale.css │ └── webfont.css ├── howler.js ├── index.html └── papyrus.png ├── brain-power ├── audio │ ├── bbppbpp.ogg │ ├── bonetrousle.ogg │ ├── brainpower.mp3 │ ├── brainpower_intro.mp3 │ ├── brainpower_intro.wav │ ├── brainpower_loop.mp3 │ └── brainpower_loop.wav ├── brainpower.js ├── css │ ├── DeterminationMonoWeb.woff │ ├── DeterminationSansWeb.woff │ ├── undertale.css │ └── webfont.css ├── howler.js └── index.html ├── crab-rave ├── audio │ └── crab-rave.wav ├── crab-rave.gif ├── crab-rave.js ├── css │ ├── DeterminationMonoWeb.woff │ ├── DeterminationSansWeb.woff │ ├── undertale.css │ └── webfont.css ├── howler.js ├── index.html └── querystring.js ├── folder.gif ├── index.html ├── mettaton-switch ├── audio │ ├── bonetrousle.ogg │ └── mettaton.mp3 ├── bonetrousle.js ├── css │ ├── DeterminationMonoWeb.woff │ ├── DeterminationSansWeb.woff │ ├── undertale.css │ └── webfont.css ├── howler.js ├── index.html └── mettaton.gif ├── snowfall-getting-slower ├── audio │ └── snowfall.opus ├── css │ ├── DeterminationMonoWeb.woff │ ├── DeterminationSansWeb.woff │ ├── undertale.css │ └── webfont.css ├── howler.js ├── index.html ├── snowforest.jpg ├── snowy.jpg └── snowy.js ├── snowy-getting-slower ├── audio │ └── snowy.ogg ├── css │ ├── DeterminationMonoWeb.woff │ ├── DeterminationSansWeb.woff │ ├── undertale.css │ └── webfont.css ├── howler.js ├── index.html ├── snowy.jpg └── snowy.js └── undyne-getting-faster ├── audio └── bonetrousle.ogg ├── bonetrousle.js ├── css ├── DeterminationMonoWeb.woff ├── DeterminationSansWeb.woff ├── undertale.css └── webfont.css ├── howler.js ├── index.html └── undyne.png /back.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/back.gif -------------------------------------------------------------------------------- /bloom/audio/bloom_loop.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/bloom/audio/bloom_loop.wav -------------------------------------------------------------------------------- /bloom/bloom.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/bloom/bloom.gif -------------------------------------------------------------------------------- /bloom/bloom.js: -------------------------------------------------------------------------------- 1 | var bloom = new Howl({ 2 | src: ["audio/bloom_loop.wav"], 3 | loop: true, 4 | }); 5 | 6 | var update_time = new Date(); 7 | 8 | var percent_time = 0.0428571; 9 | 10 | var inv_rate = 1; 11 | var rate_timer = percent_time; 12 | 13 | function update() { 14 | 15 | var new_time = new Date(); 16 | var delta = new_time.getTime() - update_time.getTime(); 17 | update_time.setTime(new_time.getTime()); 18 | 19 | rate_timer -= (1 / inv_rate) * delta / 1000; 20 | 21 | if (rate_timer <= 0) { 22 | rate_timer += percent_time; 23 | inv_rate += 0.00001; 24 | bloom.rate(1 / inv_rate); 25 | document.getElementById("speed").innerHTML = "speed: " + (1 / inv_rate * 100).toFixed(2) + "%"; 26 | document.getElementById("bloom").style.opacity = 1 / inv_rate / inv_rate; 27 | } 28 | 29 | requestAnimationFrame(update); 30 | } 31 | 32 | function run() { 33 | bloom.play(); 34 | update_time = new Date(); 35 | requestAnimationFrame(update); 36 | } 37 | -------------------------------------------------------------------------------- /bloom/css/DeterminationMonoWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/bloom/css/DeterminationMonoWeb.woff -------------------------------------------------------------------------------- /bloom/css/DeterminationSansWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/bloom/css/DeterminationSansWeb.woff -------------------------------------------------------------------------------- /bloom/css/undertale.css: -------------------------------------------------------------------------------- 1 | @import url("webfont.css"); 2 | 3 | html, body { 4 | background-color: black; 5 | color: white; 6 | font-family: "Determination Sans", Fixedsys, sans-serif; 7 | font-weight: normal; 8 | font-size: 24px; 9 | text-align: center; 10 | } 11 | 12 | #bg { 13 | display: inline-block; 14 | width: 640px; 15 | height: 300px; 16 | margin-top: 20px; 17 | overflow: hidden; 18 | text-align: center; 19 | } 20 | 21 | a{ 22 | color: #00ffff; 23 | text-decoration: none; 24 | } 25 | 26 | a:hover{ 27 | color: #33cccc; 28 | } 29 | 30 | div.bottom-notice { 31 | position: absolute; 32 | bottom: 0.5em; 33 | left: 0; 34 | right: 0; 35 | text-align: center; 36 | font-size: 50%; 37 | opacity: 0.3; 38 | transition: all 0.2s ease; 39 | } 40 | 41 | div.bottom-notice:hover { 42 | opacity: 1; 43 | } 44 | 45 | @font-face { 46 | font-family: 'Determination Sans'; 47 | src: url('DeterminationMonoWeb.woff') format('woff'); 48 | } 49 | -------------------------------------------------------------------------------- /bloom/css/webfont.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 13, 2015 2 | 3 | Copyright (c) 2009 - 2014 Grand Chaos Productions (http://grandchaos9000.deviantart.com), with Reserved Font Name 8-bit Operator+. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. 46 | 47 | */ 48 | 49 | @font-face { 50 | font-family: '8-bit Operator Mono'; 51 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot'); 52 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot?#iefix') format('embedded-opentype'), 53 | url('fonts/8-bit_operator_mono-regular-webfont.woff2') format('woff2'), 54 | url('fonts/8-bit_operator_mono-regular-webfont.woff') format('woff'), 55 | url('fonts/8-bit_operator_mono-regular-webfont.ttf') format('truetype'), 56 | url('fonts/8-bit_operator_mono-regular-webfont.svg#8-bit_operatorbold') format('svg'); 57 | font-weight: normal; 58 | font-style: normal; 59 | } 60 | 61 | 62 | /* Retrieved from http://http://loudifier.com/comic-relief/ 63 | 64 | Released under the SIL Font License as above 65 | 66 | */ 67 | 68 | @font-face { 69 | font-family: 'Comic Relief'; 70 | src: url('fonts/comicrelief.eot'); 71 | src: url('fonts/comicrelief.eot?#iefix') format('embedded-opentype'), 72 | url('fonts/comicrelief.woff') format('woff'), 73 | url('fonts/comicrelief.ttf') format('truetype'), 74 | url('fonts/comicrelief.svg#comic_reliefregular') format('svg'); 75 | font-weight: normal; 76 | font-style: normal; 77 | 78 | } 79 | 80 | 81 | 82 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 14, 2015 83 | 84 | License is summed up by the following statement from Auntie Pixelante: 85 | "i made this font for the message bar in my new game, something in the vein of midway / vid kidz arcade games. but as always you, my dears, are welcome to use it for whatever purposes you like. it’s a small, blocky font with tiny cut-outs." 86 | 87 | */ 88 | 89 | @font-face { 90 | font-family: 'Mars Needs Cunnilingus'; 91 | src: url('fonts/mars_needs_cunnilingus-webfont.eot'); 92 | src: url('fonts/mars_needs_cunnilingus-webfont.eot?#iefix') format('embedded-opentype'), 93 | url('fonts/mars_needs_cunnilingus-webfont.woff2') format('woff2'), 94 | url('fonts/mars_needs_cunnilingus-webfont.woff') format('woff'), 95 | url('fonts/mars_needs_cunnilingus-webfont.ttf') format('truetype'), 96 | url('fonts/mars_needs_cunnilingus-webfont.svg#mars_needs_cunnilingusregular') format('svg'); 97 | font-weight: normal; 98 | font-style: normal; 99 | } 100 | -------------------------------------------------------------------------------- /bloom/howler.js: -------------------------------------------------------------------------------- 1 | /*! howler.js v2.0.0-beta5 | (c) 2013-2015, James Simpson of GoldFire Studios | MIT License | howlerjs.com */ 2 | !function(){"use strict";function e(){try{"undefined"!=typeof AudioContext?n=new AudioContext:"undefined"!=typeof webkitAudioContext?n=new webkitAudioContext:o=!1}catch(e){o=!1}if(!o)if("undefined"!=typeof Audio)try{var u=new Audio;"undefined"==typeof u.oncanplaythrough&&(d="canplay")}catch(e){t=!0}else t=!0;try{var u=new Audio;u.muted&&(t=!0)}catch(e){}o&&(r="undefined"==typeof n.createGain?n.createGainNode():n.createGain(),r.gain.value=1,r.connect(n.destination))}var n=null,o=!0,t=!1,r=null,d="canplaythrough";e();var u=function(){this.init()};u.prototype={init:function(){var e=this||i;return e._codecs={},e._howls=[],e._muted=!1,e._volume=1,e.state="running",e.autoSuspend=!0,e._autoSuspend(),e.mobileAutoEnable=!0,e.noAudio=t,e.usingWebAudio=o,e.ctx=n,t||e._setupCodecs(),e},volume:function(e){var n=this||i;if(e=parseFloat(e),"undefined"!=typeof e&&e>=0&&1>=e){n._volume=e,o&&(r.gain.value=e);for(var t=0;t=0;t--)o._howls[t].unload();return o.usingWebAudio&&"undefined"!=typeof n.close&&(o.ctx=null,n.close(),e(),o.ctx=n),o},codecs:function(e){return(this||i)._codecs[e]},_setupCodecs:function(){var e=this||i,n=new Audio,o=n.canPlayType("audio/mpeg;").replace(/^no$/,""),t=/OPR\//.test(navigator.userAgent);return e._codecs={mp3:!(t||!o&&!n.canPlayType("audio/mp3;").replace(/^no$/,"")),mpeg:!!o,opus:!!n.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/,""),ogg:!!n.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),wav:!!n.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),aac:!!n.canPlayType("audio/aac;").replace(/^no$/,""),m4a:!!(n.canPlayType("audio/x-m4a;")||n.canPlayType("audio/m4a;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),mp4:!!(n.canPlayType("audio/x-mp4;")||n.canPlayType("audio/mp4;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),weba:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),webm:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,"")},e},_enableMobileAudio:function(){var e=this||i,o=/iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk/i.test(navigator.userAgent),t=!!("ontouchend"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0);if(!n||!e._mobileEnabled&&o&&t){e._mobileEnabled=!1;var r=function(){var o=n.createBuffer(1,1,22050),t=n.createBufferSource();t.buffer=o,t.connect(n.destination),"undefined"==typeof t.start?t.noteOn(0):t.start(0),t.onended=function(){t.disconnect(0),e._mobileEnabled=!0,e.mobileAutoEnable=!1,document.removeEventListener("touchend",r,!0)}};return document.addEventListener("touchend",r,!0),e}},_autoSuspend:function(){var e=this;if(e.autoSuspend&&n&&"undefined"!=typeof n.suspend&&o){for(var t=0;t0?_._seek:o._sprite[e][0]/1e3,l=(o._sprite[e][0]+o._sprite[e][1])/1e3-s,f=1e3*l/Math.abs(_._rate);f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),_._paused=!1,_._ended=!1,_._sprite=e,_._seek=s,_._start=o._sprite[e][0]/1e3,_._stop=(o._sprite[e][0]+o._sprite[e][1])/1e3,_._loop=!(!_._loop&&!o._sprite[e][2]);var c=_._node;if(o._webAudio){var p=function(){o._refreshBuffer(_);var e=_._muted||o._muted?0:_._volume*i.volume();c.gain.setValueAtTime(e,n.currentTime),_._playStart=n.currentTime,"undefined"==typeof c.bufferSource.start?_._loop?c.bufferSource.noteGrainOn(0,s,86400):c.bufferSource.noteGrainOn(0,s,l):_._loop?c.bufferSource.start(0,s,86400):c.bufferSource.start(0,s,l),o._endTimers[_._id]||f===1/0||(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),t[1]||setTimeout(function(){o._emit("play",_._id)},0)};o._loaded?p():(o.once("load",p),o._clearTimer(_._id))}else{var m=function(){c.currentTime=s,c.muted=_._muted||o._muted||i._muted||c.muted,c.volume=_._volume*i.volume(),c.playbackRate=_._rate,setTimeout(function(){c.play(),t[1]||o._emit("play",_._id)},0)};if(4===c.readyState||!c.readyState&&navigator.isCocoonJS)m();else{var v=function(){f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),m(),c.removeEventListener(d,v,!1)};c.addEventListener(d,v,!1),o._clearTimer(_._id)}}return _._id},pause:function(e){var n=this;if(!n._loaded)return n.once("play",function(){n.pause(e)}),n;for(var o=n._getSoundIds(e),t=0;t=0?o=parseInt(r[0],10):e=parseFloat(r[0])}else r.length>=2&&(e=parseFloat(r[0]),o=parseInt(r[1],10));var a;if(!("undefined"!=typeof e&&e>=0&&1>=e))return a=o?t._soundById(o):t._sounds[0],a?a._volume:0;if(!t._loaded)return t.once("play",function(){t.volume.apply(t,r)}),t;"undefined"==typeof o&&(t._volume=e),o=t._getSoundIds(o);for(var _=0;_0?Math.ceil(1e3*(s-n.currentTime)):0)}.bind(d,u[i],a),t)}else{var l=Math.abs(e-o),f=e>o?"out":"in",c=l/.01,p=t/c;!function(){var n=e;a._interval=setInterval(function(e,t){n+="in"===f?.01:-.01,n=Math.max(0,n),n=Math.min(1,n),n=Math.round(100*n)/100,d.volume(n,e,!0),n===o&&(clearInterval(t._interval),delete t._interval,d._emit("faded",e))}.bind(d,u[i],a),p)}()}}return d},_stopFade:function(e){var o=this,t=o._soundById(e);return t._interval?(clearInterval(t._interval),delete t._interval,o._emit("faded",e)):t._timeout&&(clearTimeout(t._timeout),delete t._timeout,t._node.gain.cancelScheduledValues(n.currentTime),o._emit("faded",e)),o},loop:function(){var e,n,o,t=this,r=arguments;if(0===r.length)return t._loop;if(1===r.length){if("boolean"!=typeof r[0])return o=t._soundById(parseInt(r[0],10)),o?o._loop:!1;e=r[0],t._loop=e}else 2===r.length&&(e=r[0],n=parseInt(r[1],10));for(var d=t._getSoundIds(n),u=0;u=0?n=parseInt(t[0],10):e=parseFloat(t[0])}else 2===t.length&&(e=parseFloat(t[0]),n=parseInt(t[1],10));var u;if("number"!=typeof e)return u=o._soundById(n),u?u._rate:o._rate;if(!o._loaded)return o.once("load",function(){o.rate.apply(o,t)}),o;"undefined"==typeof n&&(o._rate=e),n=o._getSoundIds(n);for(var i=0;i=0?o=parseInt(r[0],10):(o=t._sounds[0]._id,e=parseFloat(r[0]))}else 2===r.length&&(e=parseFloat(r[0]),o=parseInt(r[1],10));if("undefined"==typeof o)return t;if(!t._loaded)return t.once("load",function(){t.seek.apply(t,r)}),t;var i=t._soundById(o);if(i){if(!(e>=0))return t._webAudio?i._seek+(t.playing(o)?n.currentTime-i._playStart:0):i._node.currentTime;var a=t.playing(o);a&&t.pause(o,!0),i._seek=e,t._clearTimer(o),a&&t.play(o,!0)}return t},playing:function(e){var n=this,o=n._soundById(e)||n._sounds[0];return o?!o._paused:!1},duration:function(){return this._duration},unload:function(){for(var e=this,n=e._sounds,o=0;o=0&&i._howls.splice(t,1)}return s&&delete s[e._src],e._sounds=[],e=null,null},on:function(e,n,o,t){var r=this,d=r["_on"+e];return"function"==typeof n&&d.push(t?{id:o,fn:n,once:t}:{id:o,fn:n}),r},off:function(e,n,o){var t=this,r=t["_on"+e];if(n){for(var d=0;d=0;t--){if(n>=o)return;e._sounds[t]._ended&&(e._webAudio&&e._sounds[t]._node&&e._sounds[t]._node.disconnect(0),e._sounds.splice(t,1),o--)}}},_getSoundIds:function(e){var n=this;if("undefined"==typeof e){for(var o=[],t=0;t>(-2*d&6)):0)o=t.indexOf(o);return i};for(var o=atob(n.split(",")[1]),t=new Uint8Array(o.length),r=0;r0&&(s[o._src]=e,p(o,e))},function(){o._emit("loaderror",null,"Decoding audio data failed.")})},p=function(e,n){n&&!e._duration&&(e._duration=n.duration),0===Object.keys(e._sprite).length&&(e._sprite={__default:[0,1e3*e._duration]}),e._loaded||(e._loaded=!0,e._emit("load")),e._autoplay&&e.play()};"function"==typeof define&&define.amd&&define([],function(){return{Howler:i,Howl:a}}),"undefined"!=typeof exports&&(exports.Howler=i,exports.Howl=a),"undefined"!=typeof window&&(window.HowlerGlobal=u,window.Howler=i,window.Howl=a,window.Sound=_)}(); 3 | /*! Effects Plugin */ 4 | !function(){"use strict";HowlerGlobal.prototype.init=function(e){return function(){var n=this;return n._pos=[0,0,0],n._orientation=[0,0,-1,0,1,0],n._velocity=[0,0,0],n._listenerAttr={dopplerFactor:1,speedOfSound:343.3},e.call(this,o)}}(HowlerGlobal.prototype.init),HowlerGlobal.prototype.pos=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._pos[1]:n,t="number"!=typeof t?o._pos[2]:t,"number"!=typeof e?o._pos:(o._pos=[e,n,t],o.ctx.listener.setPosition(o._pos[0],o._pos[1],o._pos[2]),o)):o},HowlerGlobal.prototype.orientation=function(e,n,t,o,r,i){var a=this;if(!a.ctx||!a.ctx.listener)return a;var p=a._orientation;return n="number"!=typeof n?p[1]:n,t="number"!=typeof t?p[2]:t,o="number"!=typeof o?p[3]:o,r="number"!=typeof r?p[4]:r,i="number"!=typeof i?p[5]:i,"number"!=typeof e?p:(a._orientation=[e,n,t,o,r,i],a.ctx.listener.setOrientation(p[0],p[1],p[2],p[3],p[4],p[5]),a)},HowlerGlobal.prototype.velocity=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._velocity[1]:n,t="number"!=typeof t?o._velocity[2]:t,"number"!=typeof e?o._velocity:(o._velocity=[e,n,t],o.ctx.listener.setVelocity(o._velocity[0],o._velocity[1],o._velocity[2]),o)):o},HowlerGlobal.prototype.listenerAttr=function(e){var n=this;if(!n.ctx||!n.ctx.listener)return n;var t=n._listenerAttr;return e?(n._listenerAttr={dopplerFactor:"undefined"!=typeof e.dopplerFactor?e.dopplerFactor:t.dopplerFactor,speedOfSound:"undefined"!=typeof e.speedOfSound?e.speedOfSound:t.speedOfSound},n.ctx.listener.dopplerFactor=t.dopplerFactor,n.ctx.listener.speedOfSound=t.speedOfSound,n):t},Howl.prototype.init=function(e){return function(n){var t=this;return t._orientation=n.orientation||[1,0,0],t._pos=n.pos||null,t._velocity=n.velocity||[0,0,0],t._pannerAttr={coneInnerAngle:"undefined"!=typeof n.coneInnerAngle?n.coneInnerAngle:360,coneOUterAngle:"undefined"!=typeof n.coneOUterAngle?n.coneOUterAngle:360,coneOuterGain:"undefined"!=typeof n.coneOuterGain?n.coneOuterGain:0,distanceModel:"undefined"!=typeof n.distanceModel?n.distanceModel:"inverse",maxDistance:"undefined"!=typeof n.maxDistance?n.maxDistance:1e4,panningModel:"undefined"!=typeof n.panningModel?n.panningModel:"HRTF",refDistance:"undefined"!=typeof n.refDistance?n.refDistance:1,rolloffFactor:"undefined"!=typeof n.rolloffFactor?n.rolloffFactor:1},e.call(this,n)}}(Howl.prototype.init),Howl.prototype.pos=function(n,t,o,r){var i=this;if(!i._webAudio)return i;if(!i._loaded)return i.once("play",function(){i.pos(n,t,o,r)}),i;if(t="number"!=typeof t?0:t,o="number"!=typeof o?-.5:o,"undefined"==typeof r){if("number"!=typeof n)return i._pos;i._pos=[n,t,o]}for(var a=i._getSoundIds(r),p=0;p 2 | 3 | 4 | 5 | Calm down and relax... 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 |
15 | speed: 100.00% 16 | 17 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /bonetrousle-getting-faster/audio/bonetrousle.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/bonetrousle-getting-faster/audio/bonetrousle.ogg -------------------------------------------------------------------------------- /bonetrousle-getting-faster/bonetrousle.js: -------------------------------------------------------------------------------- 1 | var bonetrousle = new Howl({ 2 | src: ["audio/bonetrousle.ogg"], 3 | loop: true, 4 | }); 5 | 6 | var update_time = new Date(); 7 | 8 | var percent_time = 0.57686; 9 | 10 | var rate = 1; 11 | var rate_timer = percent_time; 12 | 13 | function update() { 14 | var new_time = new Date(); 15 | var delta = new_time.getTime() - update_time.getTime(); 16 | update_time.setTime(new_time.getTime()); 17 | 18 | rate_timer -= (rate * delta) / 1000; 19 | 20 | if (rate_timer <= 0) { 21 | rate_timer += percent_time; 22 | rate += 0.01; 23 | bonetrousle.rate(rate); 24 | document.getElementById("speed").innerHTML = 25 | "speed: " + (rate * 100).toFixed(0) + "%"; 26 | } 27 | 28 | document.getElementById("papyrus").style.top = 29 | rate - Math.random() * rate * 2 + "px"; 30 | document.getElementById("papyrus").style.left = 31 | rate - Math.random() * rate * 2 + "px"; 32 | setTimeout(update, 10); 33 | } 34 | 35 | function run() { 36 | bonetrousle.play(); 37 | update_time = new Date(); 38 | setTimeout(update, 10); 39 | } 40 | -------------------------------------------------------------------------------- /bonetrousle-getting-faster/css/DeterminationMonoWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/bonetrousle-getting-faster/css/DeterminationMonoWeb.woff -------------------------------------------------------------------------------- /bonetrousle-getting-faster/css/DeterminationSansWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/bonetrousle-getting-faster/css/DeterminationSansWeb.woff -------------------------------------------------------------------------------- /bonetrousle-getting-faster/css/undertale.css: -------------------------------------------------------------------------------- 1 | @import url("webfont.css"); 2 | 3 | html, body { 4 | background-color: black; 5 | color: white; 6 | font-family: "Determination Sans", Fixedsys, sans-serif; 7 | font-weight: normal; 8 | font-size: 24px; 9 | text-align: center; 10 | } 11 | 12 | #rumbling_papyrus { 13 | display: inline-block; 14 | position: relative; 15 | width: 500px; 16 | height: 500px; 17 | overflow: hidden; 18 | } 19 | 20 | 21 | 22 | @font-face { 23 | font-family: 'Determination Sans'; 24 | src: url('DeterminationMonoWeb.woff') format('woff'); 25 | } 26 | -------------------------------------------------------------------------------- /bonetrousle-getting-faster/css/webfont.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 13, 2015 2 | 3 | Copyright (c) 2009 - 2014 Grand Chaos Productions (http://grandchaos9000.deviantart.com), with Reserved Font Name 8-bit Operator+. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. 46 | 47 | */ 48 | 49 | @font-face { 50 | font-family: '8-bit Operator Mono'; 51 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot'); 52 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot?#iefix') format('embedded-opentype'), 53 | url('fonts/8-bit_operator_mono-regular-webfont.woff2') format('woff2'), 54 | url('fonts/8-bit_operator_mono-regular-webfont.woff') format('woff'), 55 | url('fonts/8-bit_operator_mono-regular-webfont.ttf') format('truetype'), 56 | url('fonts/8-bit_operator_mono-regular-webfont.svg#8-bit_operatorbold') format('svg'); 57 | font-weight: normal; 58 | font-style: normal; 59 | } 60 | 61 | 62 | /* Retrieved from http://http://loudifier.com/comic-relief/ 63 | 64 | Released under the SIL Font License as above 65 | 66 | */ 67 | 68 | @font-face { 69 | font-family: 'Comic Relief'; 70 | src: url('fonts/comicrelief.eot'); 71 | src: url('fonts/comicrelief.eot?#iefix') format('embedded-opentype'), 72 | url('fonts/comicrelief.woff') format('woff'), 73 | url('fonts/comicrelief.ttf') format('truetype'), 74 | url('fonts/comicrelief.svg#comic_reliefregular') format('svg'); 75 | font-weight: normal; 76 | font-style: normal; 77 | 78 | } 79 | 80 | 81 | 82 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 14, 2015 83 | 84 | License is summed up by the following statement from Auntie Pixelante: 85 | "i made this font for the message bar in my new game, something in the vein of midway / vid kidz arcade games. but as always you, my dears, are welcome to use it for whatever purposes you like. it’s a small, blocky font with tiny cut-outs." 86 | 87 | */ 88 | 89 | @font-face { 90 | font-family: 'Mars Needs Cunnilingus'; 91 | src: url('fonts/mars_needs_cunnilingus-webfont.eot'); 92 | src: url('fonts/mars_needs_cunnilingus-webfont.eot?#iefix') format('embedded-opentype'), 93 | url('fonts/mars_needs_cunnilingus-webfont.woff2') format('woff2'), 94 | url('fonts/mars_needs_cunnilingus-webfont.woff') format('woff'), 95 | url('fonts/mars_needs_cunnilingus-webfont.ttf') format('truetype'), 96 | url('fonts/mars_needs_cunnilingus-webfont.svg#mars_needs_cunnilingusregular') format('svg'); 97 | font-weight: normal; 98 | font-style: normal; 99 | } 100 | -------------------------------------------------------------------------------- /bonetrousle-getting-faster/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BONETROUSLE EXCEPT IT KEEPS GETTING FASTER 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 |
15 | speed: 100% 16 | 17 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /bonetrousle-getting-faster/papyrus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/bonetrousle-getting-faster/papyrus.png -------------------------------------------------------------------------------- /brain-power/audio/bbppbpp.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/audio/bbppbpp.ogg -------------------------------------------------------------------------------- /brain-power/audio/bonetrousle.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/audio/bonetrousle.ogg -------------------------------------------------------------------------------- /brain-power/audio/brainpower.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/audio/brainpower.mp3 -------------------------------------------------------------------------------- /brain-power/audio/brainpower_intro.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/audio/brainpower_intro.mp3 -------------------------------------------------------------------------------- /brain-power/audio/brainpower_intro.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/audio/brainpower_intro.wav -------------------------------------------------------------------------------- /brain-power/audio/brainpower_loop.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/audio/brainpower_loop.mp3 -------------------------------------------------------------------------------- /brain-power/audio/brainpower_loop.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/audio/brainpower_loop.wav -------------------------------------------------------------------------------- /brain-power/brainpower.js: -------------------------------------------------------------------------------- 1 | var intro = new Howl({ 2 | src: ["audio/brainpower_intro.wav"], 3 | loop: false, 4 | onload: run, 5 | onend: function() { 6 | looping = true; 7 | // reset the tick timer, but advance it one tick 8 | rate = 1.0005; 9 | ticks = 1; 10 | rate_timer = percent_time; 11 | loop.play(); 12 | } 13 | }); 14 | 15 | var loop = new Howl({ 16 | src: ["audio/brainpower_loop.wav"], 17 | loop: true 18 | }); 19 | 20 | 21 | var update_time = new Date(); 22 | var percent_time = 60 / 173 / 4; 23 | 24 | var ticks = 0; 25 | 26 | var looping = false; 27 | 28 | var rate = 1; 29 | var rate_timer = percent_time; 30 | 31 | var lang = "English"; 32 | 33 | function change_lang(){ 34 | document.getElementById("lang_change").innerHTML = lang; 35 | if(lang === "English"){ 36 | lang = "Japanese"; 37 | }else{ 38 | lang = "English"; 39 | } 40 | } 41 | 42 | function loading(ticks) { 43 | if (ticks > 40) { 44 | return 100; 45 | } else { 46 | var frac = ticks / 40; 47 | return (1 - Math.pow(1 - frac, 2)) * 100; 48 | } 49 | } 50 | 51 | 52 | function update() { 53 | 54 | var new_time = new Date(); 55 | var delta = new_time.getTime() - update_time.getTime(); 56 | update_time.setTime(new_time.getTime()); 57 | 58 | rate_timer -= rate * delta / 1000; 59 | 60 | if (rate_timer <= 0) { 61 | rate_timer += percent_time; 62 | ticks += 1; 63 | if (looping) { 64 | rate += 0.0005; 65 | loop.rate(rate); 66 | } 67 | } 68 | 69 | var fractick = (1 - (rate_timer / percent_time)); 70 | 71 | if (looping == false) { 72 | document.getElementById("brainpower_bg").style.height = 5 * loading(ticks + fractick) + "px"; 73 | document.getElementById("brainpower_bg").style.opacity = (ticks + fractick) / 40; 74 | document.getElementById("speed").innerHTML = "speed: " + loading(ticks + fractick).toFixed(1) + "% "; 75 | } else { 76 | if (lang === "English") { 77 | document.getElementById("brainpower_text").classList.remove("brainpower_japanese"); 78 | document.getElementById("brainpower_text").innerHTML = brainpower_english_text[ticks % 128]; 79 | } else { 80 | document.getElementById("brainpower_text").classList.add("brainpower_japanese"); 81 | document.getElementById("brainpower_text").innerHTML = brainpower_japanese_text[ticks % 128]; 82 | } 83 | document.getElementById("speed").innerHTML = "speed: " + (rate * 100).toFixed(1) + "% "; 84 | } 85 | 86 | // background 87 | if (looping == false && ticks < 40) { 88 | if (ticks % 4 < 2) { 89 | var grad = 1 - (ticks % 4 + fractick) / 2; 90 | var rgb = Math.floor(grad * 128) + 127; 91 | document.getElementById("brainpower_bg").style.backgroundColor = "rgba(" + 92 | rgb + "," + rgb + "," + rgb + ", 1)"; 93 | } 94 | document.getElementById("brainpower_text").style.color = "black"; 95 | document.getElementById("brainpower_text").innerHTML = "LOAD
ING"; 96 | } else if (looping == false && ticks < 48) { 97 | if (ticks % 2 < 1) { 98 | var grad = 1 - fractick; 99 | var rgb = Math.floor(grad * 192) + 63; 100 | document.getElementById("brainpower_bg").style.backgroundColor = "rgba(" + 101 | rgb + "," + rgb + "," + rgb + ", 1)"; 102 | } 103 | document.getElementById("brainpower_text").innerHTML = "HERE
W E
GO"; 104 | } else if (looping == false) { 105 | var grad = 1 - (fractick * 2 - Math.floor(fractick * 2)) / 2; 106 | var rgb = Math.floor(grad * 255); 107 | document.getElementById("brainpower_bg").style.backgroundColor = "rgba(" + 108 | rgb + "," + rgb + "," + rgb + ", 1)"; 109 | document.getElementById("brainpower_text").innerHTML = "HERE
W E
GO"; 110 | } else { 111 | document.getElementById("brainpower_text").style.top = "0px"; 112 | document.getElementById("brainpower_bg").style.backgroundColor = "black"; 113 | document.getElementById("brainpower_text").style.color = "white"; 114 | } 115 | 116 | var rumble_rate = (rate - 1) * 10; 117 | 118 | var offset_height = getComputedStyle(document.getElementById("brainpower_text")).height; 119 | if (looping == false && ticks >= 40) 120 | document.getElementById("brainpower_text").style.top = (rumble_rate - Math.random() * rumble_rate * 2) - 121 | (parseInt(offset_height.slice(0, offset_height.length - 2)) / 2) + 240 + "px"; 122 | else 123 | document.getElementById("brainpower_text").style.top = (rumble_rate - Math.random() * rumble_rate * 2) - 124 | (parseInt(offset_height.slice(0, offset_height.length - 2)) / 2) + 250 + "px"; 125 | document.getElementById("brainpower_text").style.left = (rumble_rate - Math.random() * rumble_rate * 2) + "px"; 126 | 127 | requestAnimationFrame(update); 128 | } 129 | 130 | function run() { 131 | update_time = new Date(); 132 | requestAnimationFrame(update); 133 | intro.play(); 134 | } 135 | 136 | 137 | var brainpower_english_text = [ 138 | "O", 139 | "O", 140 | "O", 141 | "O", 142 | "o", 143 | "oo", 144 | "ooo", 145 | "oooo", 146 | "oooo
o", 147 | "oooo
oo", 148 | "oooo
ooo", 149 | "oooo
oooo", 150 | "oooo
oooo
o", 151 | "oooo
oooo
oo", 152 | "oooo
oooo
ooo", 153 | "oooo
oooo
oooo", 154 | "A", 155 | "AA", 156 | "AAA", 157 | "AAAA", 158 | "E", 159 | "E", 160 | "A ", 161 | "A ", 162 | " A", 163 | " A", 164 | "I ", 165 | "I ", 166 | " A", 167 | " A", 168 | "U", 169 | "U", 170 | "JO", 171 | "JO", 172 | "JO", 173 | "JO", 174 | "o", 175 | "oo", 176 | "ooo", 177 | "oooo", 178 | "oooo
o", 179 | "oooo
oo", 180 | "oooo
ooo", 181 | "oooo
oooo", 182 | "oooo
oooo
o", 183 | "oooo
oooo
oo", 184 | "oooo
oooo
ooo", 185 | "oooo
oooo
oooo", 186 | "A", 187 | "AA", 188 | "E", 189 | "E", 190 | "O", 191 | "O", 192 | "A ", 193 | "A ", 194 | " A", 195 | " A", 196 | "U ", 197 | "U ", 198 | " U", 199 | " U", 200 | "A", 201 | "A", 202 | "E", 203 | "E", 204 | "E", 205 | "E", 206 | "E", 207 | "E", 208 | "e", 209 | "ee", 210 | "eee", 211 | "eee", 212 | "eee
e", 213 | "eee
ee", 214 | "eee
ee", 215 | "eee
ee
e", 216 | "eee
ee
ee", 217 | "eee
ee
eee", 218 | "A", 219 | "AA", 220 | "AAA", 221 | "AAAA", 222 | "E", 223 | "E", 224 | "A ", 225 | "A ", 226 | " E", 227 | " E", 228 | "I ", 229 | "I ", 230 | " E", 231 | " E", 232 | "A", 233 | "A", 234 | "JO", 235 | "JO", 236 | "JO", 237 | "JO", 238 | "o", 239 | "oo", 240 | "ooo", 241 | "ooo", 242 | "ooo
o", 243 | "ooo
oo", 244 | "ooo
oo", 245 | "ooo
ooo", 246 | "ooo
ooo
o", 247 | "ooo
ooo
o", 248 | "ooo
ooo
oo", 249 | "ooo
ooo
ooo", 250 | "E", 251 | "EE", 252 | "EEE", 253 | "EEEE", 254 | "O", 255 | "O", 256 | "A", 257 | "A", 258 | "AA", 259 | "AAA", 260 | "AAAA", 261 | "AAAA", 262 | "AAAA
A", 263 | "AAAA
AA", 264 | "AAAA
AAA", 265 | "AAAA
AAAA" 266 | ]; 267 | 268 | 269 | var brainpower_japanese_text = [ 270 | "", 271 | "", 272 | "", 273 | "", 274 | "お", 275 | "おお", 276 | "おおお", 277 | "おおおお", 278 | "おおおお
お", 279 | "おおおお
おお", 280 | "おおおお
おおお", 281 | "おおおお
おおおお", 282 | "おおおお
おおおお
お", 283 | "おおおお
おおおお
おお", 284 | "おおおお
おおおお
おおお", 285 | "おおおお
おおおお
おおおお", 286 | "あ", 287 | "ああ", 288 | "あああ", 289 | "ああああ", 290 | "え", 291 | "え", 292 | "あ ", 293 | "あ ", 294 | " あ", 295 | " あ", 296 | "い ", 297 | "い ", 298 | " あ", 299 | " あ", 300 | "う", 301 | "う", 302 | "じょ", 303 | "じょ", 304 | "じょ", 305 | "じょ", 306 | "お", 307 | "おお", 308 | "おおお", 309 | "おおおお", 310 | "おおおお
お", 311 | "おおおお
おお", 312 | "おおおお
おおお", 313 | "おおおお
おおおお", 314 | "おおおお
おおおお
お", 315 | "おおおお
おおおお
おお", 316 | "おおおお
おおおお
おおお", 317 | "おおおお
おおおお
おおおお", 318 | "あ", 319 | "ああ", 320 | "え", 321 | "え", 322 | "お", 323 | "お", 324 | "あ ", 325 | "あ ", 326 | " あ", 327 | " あ", 328 | "う ", 329 | "う ", 330 | " う", 331 | " う", 332 | "あ", 333 | "あ", 334 | "", 335 | "", 336 | "", 337 | "", 338 | "", 339 | "", 340 | "え", 341 | "ええ", 342 | "えええ", 343 | "えええ", 344 | "えええ
え", 345 | "えええ
ええ", 346 | "えええ
ええ", 347 | "えええ
ええ
え", 348 | "えええ
ええ
ええ", 349 | "えええ
ええ
えええ", 350 | "あ", 351 | "ああ", 352 | "あああ", 353 | "ああああ", 354 | "え", 355 | "え", 356 | "あ ", 357 | "あ ", 358 | " え", 359 | " え", 360 | "い ", 361 | "い ", 362 | " え", 363 | " え", 364 | "あ", 365 | "あ", 366 | "じょ", 367 | "じょ", 368 | "じょ", 369 | "じょ", 370 | "お", 371 | "おお", 372 | "おおお", 373 | "おおお", 374 | "おおお
お", 375 | "おおお
おお", 376 | "おおお
おお", 377 | "おおお
おおお", 378 | "おおお
おおお
お", 379 | "おおお
おおお
お", 380 | "おおお
おおお
おお", 381 | "おおお
おおお
おおお", 382 | "え", 383 | "ええ", 384 | "えええ", 385 | "えええ", 386 | "お", 387 | "お", 388 | "あ", 389 | "あ", 390 | "ああ", 391 | "あああ", 392 | "ああああ", 393 | "ああああ", 394 | "ああああ
あ", 395 | "ああああ
ああ", 396 | "ああああ
あああ", 397 | "ああああ
ああああ" 398 | ]; 399 | -------------------------------------------------------------------------------- /brain-power/css/DeterminationMonoWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/css/DeterminationMonoWeb.woff -------------------------------------------------------------------------------- /brain-power/css/DeterminationSansWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/brain-power/css/DeterminationSansWeb.woff -------------------------------------------------------------------------------- /brain-power/css/undertale.css: -------------------------------------------------------------------------------- 1 | @import url("webfont.css"); 2 | 3 | html, body { 4 | background-color: black; 5 | color: white; 6 | font-family: "Determination Sans", Fixedsys, sans-serif; 7 | font-weight: normal; 8 | font-size: 24px; 9 | text-align: center; 10 | } 11 | 12 | #rumbling_oooo { 13 | display: inline-block; 14 | position: relative; 15 | margin-top: 40px; 16 | width: 500px; 17 | height: 500px; 18 | overflow: hidden; 19 | } 20 | 21 | #brainpower_text{ 22 | position: relative; 23 | font-size: 240px; 24 | line-height: 160px; 25 | } 26 | 27 | .brainpower_japanese{ 28 | font-size: 120px !important; 29 | } 30 | 31 | #brainpower_bg{ 32 | position: absolute; 33 | background-color: white; 34 | left: 0; 35 | right: 0; 36 | bottom: 0; 37 | } 38 | 39 | 40 | @font-face { 41 | font-family: 'Determination Sans'; 42 | src: url('DeterminationMonoWeb.woff') format('woff'); 43 | } 44 | 45 | a { text-decoration: none; color: #00ffff; } 46 | 47 | div#bottom_options { opacity: 0.3; font-size: 60%; transition: all 0.3s linear; } 48 | div#bottom_options:hover { opacity: 1; } 49 | -------------------------------------------------------------------------------- /brain-power/css/webfont.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 13, 2015 2 | 3 | Copyright (c) 2009 - 2014 Grand Chaos Productions (http://grandchaos9000.deviantart.com), with Reserved Font Name 8-bit Operator+. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. 46 | 47 | */ 48 | 49 | @font-face { 50 | font-family: '8-bit Operator Mono'; 51 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot'); 52 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot?#iefix') format('embedded-opentype'), 53 | url('fonts/8-bit_operator_mono-regular-webfont.woff2') format('woff2'), 54 | url('fonts/8-bit_operator_mono-regular-webfont.woff') format('woff'), 55 | url('fonts/8-bit_operator_mono-regular-webfont.ttf') format('truetype'), 56 | url('fonts/8-bit_operator_mono-regular-webfont.svg#8-bit_operatorbold') format('svg'); 57 | font-weight: normal; 58 | font-style: normal; 59 | } 60 | 61 | 62 | /* Retrieved from http://http://loudifier.com/comic-relief/ 63 | 64 | Released under the SIL Font License as above 65 | 66 | */ 67 | 68 | @font-face { 69 | font-family: 'Comic Relief'; 70 | src: url('fonts/comicrelief.eot'); 71 | src: url('fonts/comicrelief.eot?#iefix') format('embedded-opentype'), 72 | url('fonts/comicrelief.woff') format('woff'), 73 | url('fonts/comicrelief.ttf') format('truetype'), 74 | url('fonts/comicrelief.svg#comic_reliefregular') format('svg'); 75 | font-weight: normal; 76 | font-style: normal; 77 | 78 | } 79 | 80 | 81 | 82 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 14, 2015 83 | 84 | License is summed up by the following statement from Auntie Pixelante: 85 | "i made this font for the message bar in my new game, something in the vein of midway / vid kidz arcade games. but as always you, my dears, are welcome to use it for whatever purposes you like. it’s a small, blocky font with tiny cut-outs." 86 | 87 | */ 88 | 89 | @font-face { 90 | font-family: 'Mars Needs Cunnilingus'; 91 | src: url('fonts/mars_needs_cunnilingus-webfont.eot'); 92 | src: url('fonts/mars_needs_cunnilingus-webfont.eot?#iefix') format('embedded-opentype'), 93 | url('fonts/mars_needs_cunnilingus-webfont.woff2') format('woff2'), 94 | url('fonts/mars_needs_cunnilingus-webfont.woff') format('woff'), 95 | url('fonts/mars_needs_cunnilingus-webfont.ttf') format('truetype'), 96 | url('fonts/mars_needs_cunnilingus-webfont.svg#mars_needs_cunnilingusregular') format('svg'); 97 | font-weight: normal; 98 | font-style: normal; 99 | } 100 | -------------------------------------------------------------------------------- /brain-power/howler.js: -------------------------------------------------------------------------------- 1 | /*! howler.js v2.0.0-beta5 | (c) 2013-2015, James Simpson of GoldFire Studios | MIT License | howlerjs.com */ 2 | !function(){"use strict";function e(){try{"undefined"!=typeof AudioContext?n=new AudioContext:"undefined"!=typeof webkitAudioContext?n=new webkitAudioContext:o=!1}catch(e){o=!1}if(!o)if("undefined"!=typeof Audio)try{var u=new Audio;"undefined"==typeof u.oncanplaythrough&&(d="canplay")}catch(e){t=!0}else t=!0;try{var u=new Audio;u.muted&&(t=!0)}catch(e){}o&&(r="undefined"==typeof n.createGain?n.createGainNode():n.createGain(),r.gain.value=1,r.connect(n.destination))}var n=null,o=!0,t=!1,r=null,d="canplaythrough";e();var u=function(){this.init()};u.prototype={init:function(){var e=this||i;return e._codecs={},e._howls=[],e._muted=!1,e._volume=1,e.state="running",e.autoSuspend=!0,e._autoSuspend(),e.mobileAutoEnable=!0,e.noAudio=t,e.usingWebAudio=o,e.ctx=n,t||e._setupCodecs(),e},volume:function(e){var n=this||i;if(e=parseFloat(e),"undefined"!=typeof e&&e>=0&&1>=e){n._volume=e,o&&(r.gain.value=e);for(var t=0;t=0;t--)o._howls[t].unload();return o.usingWebAudio&&"undefined"!=typeof n.close&&(o.ctx=null,n.close(),e(),o.ctx=n),o},codecs:function(e){return(this||i)._codecs[e]},_setupCodecs:function(){var e=this||i,n=new Audio,o=n.canPlayType("audio/mpeg;").replace(/^no$/,""),t=/OPR\//.test(navigator.userAgent);return e._codecs={mp3:!(t||!o&&!n.canPlayType("audio/mp3;").replace(/^no$/,"")),mpeg:!!o,opus:!!n.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/,""),ogg:!!n.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),wav:!!n.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),aac:!!n.canPlayType("audio/aac;").replace(/^no$/,""),m4a:!!(n.canPlayType("audio/x-m4a;")||n.canPlayType("audio/m4a;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),mp4:!!(n.canPlayType("audio/x-mp4;")||n.canPlayType("audio/mp4;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),weba:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),webm:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,"")},e},_enableMobileAudio:function(){var e=this||i,o=/iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk/i.test(navigator.userAgent),t=!!("ontouchend"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0);if(!n||!e._mobileEnabled&&o&&t){e._mobileEnabled=!1;var r=function(){var o=n.createBuffer(1,1,22050),t=n.createBufferSource();t.buffer=o,t.connect(n.destination),"undefined"==typeof t.start?t.noteOn(0):t.start(0),t.onended=function(){t.disconnect(0),e._mobileEnabled=!0,e.mobileAutoEnable=!1,document.removeEventListener("touchend",r,!0)}};return document.addEventListener("touchend",r,!0),e}},_autoSuspend:function(){var e=this;if(e.autoSuspend&&n&&"undefined"!=typeof n.suspend&&o){for(var t=0;t0?_._seek:o._sprite[e][0]/1e3,l=(o._sprite[e][0]+o._sprite[e][1])/1e3-s,f=1e3*l/Math.abs(_._rate);f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),_._paused=!1,_._ended=!1,_._sprite=e,_._seek=s,_._start=o._sprite[e][0]/1e3,_._stop=(o._sprite[e][0]+o._sprite[e][1])/1e3,_._loop=!(!_._loop&&!o._sprite[e][2]);var c=_._node;if(o._webAudio){var p=function(){o._refreshBuffer(_);var e=_._muted||o._muted?0:_._volume*i.volume();c.gain.setValueAtTime(e,n.currentTime),_._playStart=n.currentTime,"undefined"==typeof c.bufferSource.start?_._loop?c.bufferSource.noteGrainOn(0,s,86400):c.bufferSource.noteGrainOn(0,s,l):_._loop?c.bufferSource.start(0,s,86400):c.bufferSource.start(0,s,l),o._endTimers[_._id]||f===1/0||(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),t[1]||setTimeout(function(){o._emit("play",_._id)},0)};o._loaded?p():(o.once("load",p),o._clearTimer(_._id))}else{var m=function(){c.currentTime=s,c.muted=_._muted||o._muted||i._muted||c.muted,c.volume=_._volume*i.volume(),c.playbackRate=_._rate,setTimeout(function(){c.play(),t[1]||o._emit("play",_._id)},0)};if(4===c.readyState||!c.readyState&&navigator.isCocoonJS)m();else{var v=function(){f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),m(),c.removeEventListener(d,v,!1)};c.addEventListener(d,v,!1),o._clearTimer(_._id)}}return _._id},pause:function(e){var n=this;if(!n._loaded)return n.once("play",function(){n.pause(e)}),n;for(var o=n._getSoundIds(e),t=0;t=0?o=parseInt(r[0],10):e=parseFloat(r[0])}else r.length>=2&&(e=parseFloat(r[0]),o=parseInt(r[1],10));var a;if(!("undefined"!=typeof e&&e>=0&&1>=e))return a=o?t._soundById(o):t._sounds[0],a?a._volume:0;if(!t._loaded)return t.once("play",function(){t.volume.apply(t,r)}),t;"undefined"==typeof o&&(t._volume=e),o=t._getSoundIds(o);for(var _=0;_0?Math.ceil(1e3*(s-n.currentTime)):0)}.bind(d,u[i],a),t)}else{var l=Math.abs(e-o),f=e>o?"out":"in",c=l/.01,p=t/c;!function(){var n=e;a._interval=setInterval(function(e,t){n+="in"===f?.01:-.01,n=Math.max(0,n),n=Math.min(1,n),n=Math.round(100*n)/100,d.volume(n,e,!0),n===o&&(clearInterval(t._interval),delete t._interval,d._emit("faded",e))}.bind(d,u[i],a),p)}()}}return d},_stopFade:function(e){var o=this,t=o._soundById(e);return t._interval?(clearInterval(t._interval),delete t._interval,o._emit("faded",e)):t._timeout&&(clearTimeout(t._timeout),delete t._timeout,t._node.gain.cancelScheduledValues(n.currentTime),o._emit("faded",e)),o},loop:function(){var e,n,o,t=this,r=arguments;if(0===r.length)return t._loop;if(1===r.length){if("boolean"!=typeof r[0])return o=t._soundById(parseInt(r[0],10)),o?o._loop:!1;e=r[0],t._loop=e}else 2===r.length&&(e=r[0],n=parseInt(r[1],10));for(var d=t._getSoundIds(n),u=0;u=0?n=parseInt(t[0],10):e=parseFloat(t[0])}else 2===t.length&&(e=parseFloat(t[0]),n=parseInt(t[1],10));var u;if("number"!=typeof e)return u=o._soundById(n),u?u._rate:o._rate;if(!o._loaded)return o.once("load",function(){o.rate.apply(o,t)}),o;"undefined"==typeof n&&(o._rate=e),n=o._getSoundIds(n);for(var i=0;i=0?o=parseInt(r[0],10):(o=t._sounds[0]._id,e=parseFloat(r[0]))}else 2===r.length&&(e=parseFloat(r[0]),o=parseInt(r[1],10));if("undefined"==typeof o)return t;if(!t._loaded)return t.once("load",function(){t.seek.apply(t,r)}),t;var i=t._soundById(o);if(i){if(!(e>=0))return t._webAudio?i._seek+(t.playing(o)?n.currentTime-i._playStart:0):i._node.currentTime;var a=t.playing(o);a&&t.pause(o,!0),i._seek=e,t._clearTimer(o),a&&t.play(o,!0)}return t},playing:function(e){var n=this,o=n._soundById(e)||n._sounds[0];return o?!o._paused:!1},duration:function(){return this._duration},unload:function(){for(var e=this,n=e._sounds,o=0;o=0&&i._howls.splice(t,1)}return s&&delete s[e._src],e._sounds=[],e=null,null},on:function(e,n,o,t){var r=this,d=r["_on"+e];return"function"==typeof n&&d.push(t?{id:o,fn:n,once:t}:{id:o,fn:n}),r},off:function(e,n,o){var t=this,r=t["_on"+e];if(n){for(var d=0;d=0;t--){if(n>=o)return;e._sounds[t]._ended&&(e._webAudio&&e._sounds[t]._node&&e._sounds[t]._node.disconnect(0),e._sounds.splice(t,1),o--)}}},_getSoundIds:function(e){var n=this;if("undefined"==typeof e){for(var o=[],t=0;t>(-2*d&6)):0)o=t.indexOf(o);return i};for(var o=atob(n.split(",")[1]),t=new Uint8Array(o.length),r=0;r0&&(s[o._src]=e,p(o,e))},function(){o._emit("loaderror",null,"Decoding audio data failed.")})},p=function(e,n){n&&!e._duration&&(e._duration=n.duration),0===Object.keys(e._sprite).length&&(e._sprite={__default:[0,1e3*e._duration]}),e._loaded||(e._loaded=!0,e._emit("load")),e._autoplay&&e.play()};"function"==typeof define&&define.amd&&define([],function(){return{Howler:i,Howl:a}}),"undefined"!=typeof exports&&(exports.Howler=i,exports.Howl=a),"undefined"!=typeof window&&(window.HowlerGlobal=u,window.Howler=i,window.Howl=a,window.Sound=_)}(); 3 | /*! Effects Plugin */ 4 | !function(){"use strict";HowlerGlobal.prototype.init=function(e){return function(){var n=this;return n._pos=[0,0,0],n._orientation=[0,0,-1,0,1,0],n._velocity=[0,0,0],n._listenerAttr={dopplerFactor:1,speedOfSound:343.3},e.call(this,o)}}(HowlerGlobal.prototype.init),HowlerGlobal.prototype.pos=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._pos[1]:n,t="number"!=typeof t?o._pos[2]:t,"number"!=typeof e?o._pos:(o._pos=[e,n,t],o.ctx.listener.setPosition(o._pos[0],o._pos[1],o._pos[2]),o)):o},HowlerGlobal.prototype.orientation=function(e,n,t,o,r,i){var a=this;if(!a.ctx||!a.ctx.listener)return a;var p=a._orientation;return n="number"!=typeof n?p[1]:n,t="number"!=typeof t?p[2]:t,o="number"!=typeof o?p[3]:o,r="number"!=typeof r?p[4]:r,i="number"!=typeof i?p[5]:i,"number"!=typeof e?p:(a._orientation=[e,n,t,o,r,i],a.ctx.listener.setOrientation(p[0],p[1],p[2],p[3],p[4],p[5]),a)},HowlerGlobal.prototype.velocity=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._velocity[1]:n,t="number"!=typeof t?o._velocity[2]:t,"number"!=typeof e?o._velocity:(o._velocity=[e,n,t],o.ctx.listener.setVelocity(o._velocity[0],o._velocity[1],o._velocity[2]),o)):o},HowlerGlobal.prototype.listenerAttr=function(e){var n=this;if(!n.ctx||!n.ctx.listener)return n;var t=n._listenerAttr;return e?(n._listenerAttr={dopplerFactor:"undefined"!=typeof e.dopplerFactor?e.dopplerFactor:t.dopplerFactor,speedOfSound:"undefined"!=typeof e.speedOfSound?e.speedOfSound:t.speedOfSound},n.ctx.listener.dopplerFactor=t.dopplerFactor,n.ctx.listener.speedOfSound=t.speedOfSound,n):t},Howl.prototype.init=function(e){return function(n){var t=this;return t._orientation=n.orientation||[1,0,0],t._pos=n.pos||null,t._velocity=n.velocity||[0,0,0],t._pannerAttr={coneInnerAngle:"undefined"!=typeof n.coneInnerAngle?n.coneInnerAngle:360,coneOUterAngle:"undefined"!=typeof n.coneOUterAngle?n.coneOUterAngle:360,coneOuterGain:"undefined"!=typeof n.coneOuterGain?n.coneOuterGain:0,distanceModel:"undefined"!=typeof n.distanceModel?n.distanceModel:"inverse",maxDistance:"undefined"!=typeof n.maxDistance?n.maxDistance:1e4,panningModel:"undefined"!=typeof n.panningModel?n.panningModel:"HRTF",refDistance:"undefined"!=typeof n.refDistance?n.refDistance:1,rolloffFactor:"undefined"!=typeof n.rolloffFactor?n.rolloffFactor:1},e.call(this,n)}}(Howl.prototype.init),Howl.prototype.pos=function(n,t,o,r){var i=this;if(!i._webAudio)return i;if(!i._loaded)return i.once("play",function(){i.pos(n,t,o,r)}),i;if(t="number"!=typeof t?0:t,o="number"!=typeof o?-.5:o,"undefined"==typeof r){if("number"!=typeof n)return i._pos;i._pos=[n,t,o]}for(var a=i._getSoundIds(r),p=0;p 2 | 3 | 4 | 5 | BRAIN POWER 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 |
16 |
17 |
18 |
19 |
20 | 21 |
22 |

speed: 0.0%

23 |
24 | Change Language: Japanese 25 |
26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /crab-rave/audio/crab-rave.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/crab-rave/audio/crab-rave.wav -------------------------------------------------------------------------------- /crab-rave/crab-rave.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/crab-rave/crab-rave.gif -------------------------------------------------------------------------------- /crab-rave/crab-rave.js: -------------------------------------------------------------------------------- 1 | var bonetrousle = new Howl({ 2 | src: ["audio/crab-rave.wav"], 3 | loop: true, 4 | onload: function () { 5 | update_time = new Date(); 6 | requestAnimationFrame(update); 7 | } 8 | }); 9 | 10 | var update_time = new Date(); 11 | 12 | var percent_time = 0.48000; 13 | 14 | var rate = 1; 15 | var rate_timer = percent_time; 16 | 17 | function update() { 18 | 19 | var new_time = new Date(); 20 | var delta = new_time.getTime() - update_time.getTime(); 21 | update_time.setTime(new_time.getTime()); 22 | 23 | rate_timer -= rate * delta / 1000; 24 | 25 | if (rate_timer <= 0) { 26 | rate_timer += percent_time; 27 | rate += 0.001; 28 | bonetrousle.rate(rate); 29 | document.getElementById("speed").innerHTML = "speed: " + (rate * 100).toFixed(1) + "%"; 30 | } 31 | 32 | document.getElementById("caption").style.top = ( 33 | rate - Math.random() * rate * 2 + 104 - document.getElementById("caption").clientHeight / 2 34 | ) + "px"; 35 | document.getElementById("caption").style.left = (rate - Math.random() * rate * 2) + "px"; 36 | requestAnimationFrame(update); 37 | } 38 | 39 | function run() { 40 | bonetrousle.play(); 41 | update_time = new Date(); 42 | } 43 | -------------------------------------------------------------------------------- /crab-rave/css/DeterminationMonoWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/crab-rave/css/DeterminationMonoWeb.woff -------------------------------------------------------------------------------- /crab-rave/css/DeterminationSansWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/crab-rave/css/DeterminationSansWeb.woff -------------------------------------------------------------------------------- /crab-rave/css/undertale.css: -------------------------------------------------------------------------------- 1 | @import url("webfont.css"); 2 | 3 | html, body { 4 | background-color: black; 5 | color: white; 6 | font-family: "Determination Sans", Fixedsys, sans-serif; 7 | font-weight: normal; 8 | font-size: 24px; 9 | text-align: center; 10 | } 11 | 12 | #crab_rave { 13 | display: inline-block; 14 | position: relative; 15 | margin-top: 40px; 16 | width: 640px; 17 | height: 320px; 18 | overflow: hidden; 19 | } 20 | 21 | #gif { 22 | position: absolute; 23 | top: 40px; 24 | left: 0px 25 | } 26 | 27 | #caption { 28 | position: absolute; 29 | left: 0; 30 | right: 0; 31 | top: 40px; 32 | z-index: 4; 33 | font-size: 60px; 34 | text-shadow: 2px 2px black; 35 | } 36 | 37 | @font-face { 38 | font-family: 'Determination Sans'; 39 | src: url('DeterminationMonoWeb.woff') format('woff'); 40 | } 41 | -------------------------------------------------------------------------------- /crab-rave/css/webfont.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 13, 2015 2 | 3 | Copyright (c) 2009 - 2014 Grand Chaos Productions (http://grandchaos9000.deviantart.com), with Reserved Font Name 8-bit Operator+. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. 46 | 47 | */ 48 | 49 | @font-face { 50 | font-family: '8-bit Operator Mono'; 51 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot'); 52 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot?#iefix') format('embedded-opentype'), 53 | url('fonts/8-bit_operator_mono-regular-webfont.woff2') format('woff2'), 54 | url('fonts/8-bit_operator_mono-regular-webfont.woff') format('woff'), 55 | url('fonts/8-bit_operator_mono-regular-webfont.ttf') format('truetype'), 56 | url('fonts/8-bit_operator_mono-regular-webfont.svg#8-bit_operatorbold') format('svg'); 57 | font-weight: normal; 58 | font-style: normal; 59 | } 60 | 61 | 62 | /* Retrieved from http://http://loudifier.com/comic-relief/ 63 | 64 | Released under the SIL Font License as above 65 | 66 | */ 67 | 68 | @font-face { 69 | font-family: 'Comic Relief'; 70 | src: url('fonts/comicrelief.eot'); 71 | src: url('fonts/comicrelief.eot?#iefix') format('embedded-opentype'), 72 | url('fonts/comicrelief.woff') format('woff'), 73 | url('fonts/comicrelief.ttf') format('truetype'), 74 | url('fonts/comicrelief.svg#comic_reliefregular') format('svg'); 75 | font-weight: normal; 76 | font-style: normal; 77 | 78 | } 79 | 80 | 81 | 82 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 14, 2015 83 | 84 | License is summed up by the following statement from Auntie Pixelante: 85 | "i made this font for the message bar in my new game, something in the vein of midway / vid kidz arcade games. but as always you, my dears, are welcome to use it for whatever purposes you like. it’s a small, blocky font with tiny cut-outs." 86 | 87 | */ 88 | 89 | @font-face { 90 | font-family: 'Mars Needs Cunnilingus'; 91 | src: url('fonts/mars_needs_cunnilingus-webfont.eot'); 92 | src: url('fonts/mars_needs_cunnilingus-webfont.eot?#iefix') format('embedded-opentype'), 93 | url('fonts/mars_needs_cunnilingus-webfont.woff2') format('woff2'), 94 | url('fonts/mars_needs_cunnilingus-webfont.woff') format('woff'), 95 | url('fonts/mars_needs_cunnilingus-webfont.ttf') format('truetype'), 96 | url('fonts/mars_needs_cunnilingus-webfont.svg#mars_needs_cunnilingusregular') format('svg'); 97 | font-weight: normal; 98 | font-style: normal; 99 | } 100 | -------------------------------------------------------------------------------- /crab-rave/howler.js: -------------------------------------------------------------------------------- 1 | /*! howler.js v2.0.0-beta5 | (c) 2013-2015, James Simpson of GoldFire Studios | MIT License | howlerjs.com */ 2 | !function(){"use strict";function e(){try{"undefined"!=typeof AudioContext?n=new AudioContext:"undefined"!=typeof webkitAudioContext?n=new webkitAudioContext:o=!1}catch(e){o=!1}if(!o)if("undefined"!=typeof Audio)try{var u=new Audio;"undefined"==typeof u.oncanplaythrough&&(d="canplay")}catch(e){t=!0}else t=!0;try{var u=new Audio;u.muted&&(t=!0)}catch(e){}o&&(r="undefined"==typeof n.createGain?n.createGainNode():n.createGain(),r.gain.value=1,r.connect(n.destination))}var n=null,o=!0,t=!1,r=null,d="canplaythrough";e();var u=function(){this.init()};u.prototype={init:function(){var e=this||i;return e._codecs={},e._howls=[],e._muted=!1,e._volume=1,e.state="running",e.autoSuspend=!0,e._autoSuspend(),e.mobileAutoEnable=!0,e.noAudio=t,e.usingWebAudio=o,e.ctx=n,t||e._setupCodecs(),e},volume:function(e){var n=this||i;if(e=parseFloat(e),"undefined"!=typeof e&&e>=0&&1>=e){n._volume=e,o&&(r.gain.value=e);for(var t=0;t=0;t--)o._howls[t].unload();return o.usingWebAudio&&"undefined"!=typeof n.close&&(o.ctx=null,n.close(),e(),o.ctx=n),o},codecs:function(e){return(this||i)._codecs[e]},_setupCodecs:function(){var e=this||i,n=new Audio,o=n.canPlayType("audio/mpeg;").replace(/^no$/,""),t=/OPR\//.test(navigator.userAgent);return e._codecs={mp3:!(t||!o&&!n.canPlayType("audio/mp3;").replace(/^no$/,"")),mpeg:!!o,opus:!!n.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/,""),ogg:!!n.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),wav:!!n.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),aac:!!n.canPlayType("audio/aac;").replace(/^no$/,""),m4a:!!(n.canPlayType("audio/x-m4a;")||n.canPlayType("audio/m4a;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),mp4:!!(n.canPlayType("audio/x-mp4;")||n.canPlayType("audio/mp4;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),weba:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),webm:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,"")},e},_enableMobileAudio:function(){var e=this||i,o=/iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk/i.test(navigator.userAgent),t=!!("ontouchend"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0);if(!n||!e._mobileEnabled&&o&&t){e._mobileEnabled=!1;var r=function(){var o=n.createBuffer(1,1,22050),t=n.createBufferSource();t.buffer=o,t.connect(n.destination),"undefined"==typeof t.start?t.noteOn(0):t.start(0),t.onended=function(){t.disconnect(0),e._mobileEnabled=!0,e.mobileAutoEnable=!1,document.removeEventListener("touchend",r,!0)}};return document.addEventListener("touchend",r,!0),e}},_autoSuspend:function(){var e=this;if(e.autoSuspend&&n&&"undefined"!=typeof n.suspend&&o){for(var t=0;t0?_._seek:o._sprite[e][0]/1e3,l=(o._sprite[e][0]+o._sprite[e][1])/1e3-s,f=1e3*l/Math.abs(_._rate);f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),_._paused=!1,_._ended=!1,_._sprite=e,_._seek=s,_._start=o._sprite[e][0]/1e3,_._stop=(o._sprite[e][0]+o._sprite[e][1])/1e3,_._loop=!(!_._loop&&!o._sprite[e][2]);var c=_._node;if(o._webAudio){var p=function(){o._refreshBuffer(_);var e=_._muted||o._muted?0:_._volume*i.volume();c.gain.setValueAtTime(e,n.currentTime),_._playStart=n.currentTime,"undefined"==typeof c.bufferSource.start?_._loop?c.bufferSource.noteGrainOn(0,s,86400):c.bufferSource.noteGrainOn(0,s,l):_._loop?c.bufferSource.start(0,s,86400):c.bufferSource.start(0,s,l),o._endTimers[_._id]||f===1/0||(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),t[1]||setTimeout(function(){o._emit("play",_._id)},0)};o._loaded?p():(o.once("load",p),o._clearTimer(_._id))}else{var m=function(){c.currentTime=s,c.muted=_._muted||o._muted||i._muted||c.muted,c.volume=_._volume*i.volume(),c.playbackRate=_._rate,setTimeout(function(){c.play(),t[1]||o._emit("play",_._id)},0)};if(4===c.readyState||!c.readyState&&navigator.isCocoonJS)m();else{var v=function(){f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),m(),c.removeEventListener(d,v,!1)};c.addEventListener(d,v,!1),o._clearTimer(_._id)}}return _._id},pause:function(e){var n=this;if(!n._loaded)return n.once("play",function(){n.pause(e)}),n;for(var o=n._getSoundIds(e),t=0;t=0?o=parseInt(r[0],10):e=parseFloat(r[0])}else r.length>=2&&(e=parseFloat(r[0]),o=parseInt(r[1],10));var a;if(!("undefined"!=typeof e&&e>=0&&1>=e))return a=o?t._soundById(o):t._sounds[0],a?a._volume:0;if(!t._loaded)return t.once("play",function(){t.volume.apply(t,r)}),t;"undefined"==typeof o&&(t._volume=e),o=t._getSoundIds(o);for(var _=0;_0?Math.ceil(1e3*(s-n.currentTime)):0)}.bind(d,u[i],a),t)}else{var l=Math.abs(e-o),f=e>o?"out":"in",c=l/.01,p=t/c;!function(){var n=e;a._interval=setInterval(function(e,t){n+="in"===f?.01:-.01,n=Math.max(0,n),n=Math.min(1,n),n=Math.round(100*n)/100,d.volume(n,e,!0),n===o&&(clearInterval(t._interval),delete t._interval,d._emit("faded",e))}.bind(d,u[i],a),p)}()}}return d},_stopFade:function(e){var o=this,t=o._soundById(e);return t._interval?(clearInterval(t._interval),delete t._interval,o._emit("faded",e)):t._timeout&&(clearTimeout(t._timeout),delete t._timeout,t._node.gain.cancelScheduledValues(n.currentTime),o._emit("faded",e)),o},loop:function(){var e,n,o,t=this,r=arguments;if(0===r.length)return t._loop;if(1===r.length){if("boolean"!=typeof r[0])return o=t._soundById(parseInt(r[0],10)),o?o._loop:!1;e=r[0],t._loop=e}else 2===r.length&&(e=r[0],n=parseInt(r[1],10));for(var d=t._getSoundIds(n),u=0;u=0?n=parseInt(t[0],10):e=parseFloat(t[0])}else 2===t.length&&(e=parseFloat(t[0]),n=parseInt(t[1],10));var u;if("number"!=typeof e)return u=o._soundById(n),u?u._rate:o._rate;if(!o._loaded)return o.once("load",function(){o.rate.apply(o,t)}),o;"undefined"==typeof n&&(o._rate=e),n=o._getSoundIds(n);for(var i=0;i=0?o=parseInt(r[0],10):(o=t._sounds[0]._id,e=parseFloat(r[0]))}else 2===r.length&&(e=parseFloat(r[0]),o=parseInt(r[1],10));if("undefined"==typeof o)return t;if(!t._loaded)return t.once("load",function(){t.seek.apply(t,r)}),t;var i=t._soundById(o);if(i){if(!(e>=0))return t._webAudio?i._seek+(t.playing(o)?n.currentTime-i._playStart:0):i._node.currentTime;var a=t.playing(o);a&&t.pause(o,!0),i._seek=e,t._clearTimer(o),a&&t.play(o,!0)}return t},playing:function(e){var n=this,o=n._soundById(e)||n._sounds[0];return o?!o._paused:!1},duration:function(){return this._duration},unload:function(){for(var e=this,n=e._sounds,o=0;o=0&&i._howls.splice(t,1)}return s&&delete s[e._src],e._sounds=[],e=null,null},on:function(e,n,o,t){var r=this,d=r["_on"+e];return"function"==typeof n&&d.push(t?{id:o,fn:n,once:t}:{id:o,fn:n}),r},off:function(e,n,o){var t=this,r=t["_on"+e];if(n){for(var d=0;d=0;t--){if(n>=o)return;e._sounds[t]._ended&&(e._webAudio&&e._sounds[t]._node&&e._sounds[t]._node.disconnect(0),e._sounds.splice(t,1),o--)}}},_getSoundIds:function(e){var n=this;if("undefined"==typeof e){for(var o=[],t=0;t>(-2*d&6)):0)o=t.indexOf(o);return i};for(var o=atob(n.split(",")[1]),t=new Uint8Array(o.length),r=0;r0&&(s[o._src]=e,p(o,e))},function(){o._emit("loaderror",null,"Decoding audio data failed.")})},p=function(e,n){n&&!e._duration&&(e._duration=n.duration),0===Object.keys(e._sprite).length&&(e._sprite={__default:[0,1e3*e._duration]}),e._loaded||(e._loaded=!0,e._emit("load")),e._autoplay&&e.play()};"function"==typeof define&&define.amd&&define([],function(){return{Howler:i,Howl:a}}),"undefined"!=typeof exports&&(exports.Howler=i,exports.Howl=a),"undefined"!=typeof window&&(window.HowlerGlobal=u,window.Howler=i,window.Howl=a,window.Sound=_)}(); 3 | /*! Effects Plugin */ 4 | !function(){"use strict";HowlerGlobal.prototype.init=function(e){return function(){var n=this;return n._pos=[0,0,0],n._orientation=[0,0,-1,0,1,0],n._velocity=[0,0,0],n._listenerAttr={dopplerFactor:1,speedOfSound:343.3},e.call(this,o)}}(HowlerGlobal.prototype.init),HowlerGlobal.prototype.pos=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._pos[1]:n,t="number"!=typeof t?o._pos[2]:t,"number"!=typeof e?o._pos:(o._pos=[e,n,t],o.ctx.listener.setPosition(o._pos[0],o._pos[1],o._pos[2]),o)):o},HowlerGlobal.prototype.orientation=function(e,n,t,o,r,i){var a=this;if(!a.ctx||!a.ctx.listener)return a;var p=a._orientation;return n="number"!=typeof n?p[1]:n,t="number"!=typeof t?p[2]:t,o="number"!=typeof o?p[3]:o,r="number"!=typeof r?p[4]:r,i="number"!=typeof i?p[5]:i,"number"!=typeof e?p:(a._orientation=[e,n,t,o,r,i],a.ctx.listener.setOrientation(p[0],p[1],p[2],p[3],p[4],p[5]),a)},HowlerGlobal.prototype.velocity=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._velocity[1]:n,t="number"!=typeof t?o._velocity[2]:t,"number"!=typeof e?o._velocity:(o._velocity=[e,n,t],o.ctx.listener.setVelocity(o._velocity[0],o._velocity[1],o._velocity[2]),o)):o},HowlerGlobal.prototype.listenerAttr=function(e){var n=this;if(!n.ctx||!n.ctx.listener)return n;var t=n._listenerAttr;return e?(n._listenerAttr={dopplerFactor:"undefined"!=typeof e.dopplerFactor?e.dopplerFactor:t.dopplerFactor,speedOfSound:"undefined"!=typeof e.speedOfSound?e.speedOfSound:t.speedOfSound},n.ctx.listener.dopplerFactor=t.dopplerFactor,n.ctx.listener.speedOfSound=t.speedOfSound,n):t},Howl.prototype.init=function(e){return function(n){var t=this;return t._orientation=n.orientation||[1,0,0],t._pos=n.pos||null,t._velocity=n.velocity||[0,0,0],t._pannerAttr={coneInnerAngle:"undefined"!=typeof n.coneInnerAngle?n.coneInnerAngle:360,coneOUterAngle:"undefined"!=typeof n.coneOUterAngle?n.coneOUterAngle:360,coneOuterGain:"undefined"!=typeof n.coneOuterGain?n.coneOuterGain:0,distanceModel:"undefined"!=typeof n.distanceModel?n.distanceModel:"inverse",maxDistance:"undefined"!=typeof n.maxDistance?n.maxDistance:1e4,panningModel:"undefined"!=typeof n.panningModel?n.panningModel:"HRTF",refDistance:"undefined"!=typeof n.refDistance?n.refDistance:1,rolloffFactor:"undefined"!=typeof n.rolloffFactor?n.rolloffFactor:1},e.call(this,n)}}(Howl.prototype.init),Howl.prototype.pos=function(n,t,o,r){var i=this;if(!i._webAudio)return i;if(!i._loaded)return i.once("play",function(){i.pos(n,t,o,r)}),i;if(t="number"!=typeof t?0:t,o="number"!=typeof o?-.5:o,"undefined"==typeof r){if("number"!=typeof n)return i._pos;i._pos=[n,t,o]}for(var a=i._getSoundIds(r),p=0;p 2 | 3 | 4 | 5 | CRAB RAVE 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 |

17 |
18 |
19 | speed: 100% 20 | 21 | 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /crab-rave/querystring.js: -------------------------------------------------------------------------------- 1 | !function (r, e) { "function" == typeof define && define.amd ? define("simple-query-string", e) : "object" == typeof module && module.exports ? module.exports = e() : r.simpleQueryString = e() }(this, function () { "use strict"; function r(r) { var e, n = Object.prototype.hasOwnProperty, t = []; for (e in r) n.call(r, e) && t.push(e); return t } function e(r) { return void 0 === r ? null : r ? decodeURIComponent(r) : r } function n(r) { switch (typeof r) { case "string": return encodeURIComponent(r); case "boolean": return r ? "true" : "false"; case "number": return isFinite(r) ? r : ""; case "object": return void 0 === r || null === r ? "" : JSON && JSON.stringify ? encodeURIComponent(JSON.stringify(r)) : ""; default: return "" } } return Array.isArray || (Array.isArray = function (r) { return "[object Array]" === Object.prototype.toString.call(r) }), { version: "1.3.2", parse: function (r, n, t) { var i; n = n || "&", t = t || "="; var o = Object.create(null); if ("string" != typeof r) return o; if ((i = r.indexOf("?")) < 0 && r.indexOf(t) < 0) return o; i >= 0 && (r = r.substr(i + 1)), (i = (r = r.replace(/^[\s\uFEFF\xA0\?#&]+|[\s\uFEFF\xA0&]+$/g, "")).lastIndexOf("#")) > 0 && (r = r.substr(0, i)); var u = r.split(n); for (i = 0; i < u.length; ++i) { var s, f, l = u[i].replace(/\+/g, " "), a = l.indexOf(t); if (0 !== a && 0 !== l.length) { a < 0 ? (s = e(l), f = null) : (s = e(l.substr(0, a)), f = e(l.substr(a + 1))); var c = o[s]; void 0 === c ? o[s] = f : Array.isArray(c) ? c.push(f) : o[s] = [c, f] } } return o }, stringify: function (e, t, i) { if (t = t || "&", i = i || "=", "object" != typeof e && "function" != typeof e || null === e) return ""; var o = r(e); if (!o || !o.length) return ""; for (var u, s, f, l = [], a = 0; a < o.length; a++)if (s = n(o[a]), void 0 !== (f = e[s]) && "function" != typeof f) if (Array.isArray(f)) for (u = 0; u < f.length; ++u)l.push(s + i + (f[u] ? n(f[u]) : "")); else null !== f && (f = n(f)), l.push(null === f || void 0 === f ? s : s + i + f); return l.join(t) } } }); 2 | -------------------------------------------------------------------------------- /folder.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/folder.gif -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Index of /ytmnd 6 | 7 | 8 | 9 |

Index of /ytmnd

10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 78 | 79 |
NameLast Updated
19 |
20 |
Parent directory
Bonetrousle Getting Faster07-Feb-2016 23:49
Undyne Getting Faster08-Feb-2016 01:20
Snowy getting slower...08-Feb-2016 17:10
Mettaton's Switch12-Feb-2016 02:40
Brain Power!29-May-2016 18:18
Crab Rave21-Sep-2018 22:22
j^p^n - Bloom26-Dec-2021 12:40
Snowy getting slower... (yellow edition)10-Dec-2023 20:17
76 |
77 |
80 |
Github Pages Server at joezeng.github.io port 80
81 | 82 | 83 | 84 | -------------------------------------------------------------------------------- /mettaton-switch/audio/bonetrousle.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/mettaton-switch/audio/bonetrousle.ogg -------------------------------------------------------------------------------- /mettaton-switch/audio/mettaton.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/mettaton-switch/audio/mettaton.mp3 -------------------------------------------------------------------------------- /mettaton-switch/bonetrousle.js: -------------------------------------------------------------------------------- 1 | var bonetrousle = new Howl({ 2 | src: ["audio/mettaton.mp3"], 3 | loop: true, 4 | }); 5 | 6 | var update_time = new Date(); 7 | 8 | var percent_time = 0.05; 9 | 10 | var rate = 0.9; 11 | var rate_timer = percent_time; 12 | 13 | function update() { 14 | 15 | var new_time = new Date(); 16 | var delta = new_time.getTime() - update_time.getTime(); 17 | update_time.setTime(new_time.getTime()); 18 | 19 | rate_timer -= rate * delta / 1000; 20 | 21 | if (rate_timer <= 0) { 22 | var times = Math.floor(-rate_timer / percent_time) + 1; 23 | rate_timer += percent_time * times; 24 | rate += 0.01 * times; 25 | bonetrousle.rate(rate); 26 | if (rate > 1024) { 27 | document.getElementById("speed").innerHTML = "speed: ------%"; 28 | } else { 29 | document.getElementById("speed").innerHTML = "speed: " + (rate * 100).toFixed(0) + "%"; 30 | } 31 | } 32 | 33 | document.getElementById("mettaton").style.top = ((rate * 2) - Math.random() * rate * 4) + "px"; 34 | document.getElementById("mettaton").style.left = ((rate * 2) - Math.random() * rate * 4) + "px"; 35 | requestAnimationFrame(update); 36 | } 37 | 38 | function run() { 39 | bonetrousle.play(); 40 | update_time = new Date(); 41 | requestAnimationFrame(update); 42 | } 43 | -------------------------------------------------------------------------------- /mettaton-switch/css/DeterminationMonoWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/mettaton-switch/css/DeterminationMonoWeb.woff -------------------------------------------------------------------------------- /mettaton-switch/css/DeterminationSansWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/mettaton-switch/css/DeterminationSansWeb.woff -------------------------------------------------------------------------------- /mettaton-switch/css/undertale.css: -------------------------------------------------------------------------------- 1 | @import url("webfont.css"); 2 | 3 | html, body { 4 | background-color: black; 5 | color: white; 6 | font-family: "Determination Sans", Fixedsys, sans-serif; 7 | font-weight: normal; 8 | font-size: 24px; 9 | text-align: center; 10 | } 11 | 12 | #rumbling_mettaton { 13 | display: inline-block; 14 | position: relative; 15 | width: 500px; 16 | height: 500px; 17 | overflow: hidden; 18 | } 19 | 20 | 21 | 22 | @font-face { 23 | font-family: 'Determination Sans'; 24 | src: url('DeterminationMonoWeb.woff') format('woff'); 25 | } 26 | -------------------------------------------------------------------------------- /mettaton-switch/css/webfont.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 13, 2015 2 | 3 | Copyright (c) 2009 - 2014 Grand Chaos Productions (http://grandchaos9000.deviantart.com), with Reserved Font Name 8-bit Operator+. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. 46 | 47 | */ 48 | 49 | @font-face { 50 | font-family: '8-bit Operator Mono'; 51 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot'); 52 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot?#iefix') format('embedded-opentype'), 53 | url('fonts/8-bit_operator_mono-regular-webfont.woff2') format('woff2'), 54 | url('fonts/8-bit_operator_mono-regular-webfont.woff') format('woff'), 55 | url('fonts/8-bit_operator_mono-regular-webfont.ttf') format('truetype'), 56 | url('fonts/8-bit_operator_mono-regular-webfont.svg#8-bit_operatorbold') format('svg'); 57 | font-weight: normal; 58 | font-style: normal; 59 | } 60 | 61 | 62 | /* Retrieved from http://http://loudifier.com/comic-relief/ 63 | 64 | Released under the SIL Font License as above 65 | 66 | */ 67 | 68 | @font-face { 69 | font-family: 'Comic Relief'; 70 | src: url('fonts/comicrelief.eot'); 71 | src: url('fonts/comicrelief.eot?#iefix') format('embedded-opentype'), 72 | url('fonts/comicrelief.woff') format('woff'), 73 | url('fonts/comicrelief.ttf') format('truetype'), 74 | url('fonts/comicrelief.svg#comic_reliefregular') format('svg'); 75 | font-weight: normal; 76 | font-style: normal; 77 | 78 | } 79 | 80 | 81 | 82 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 14, 2015 83 | 84 | License is summed up by the following statement from Auntie Pixelante: 85 | "i made this font for the message bar in my new game, something in the vein of midway / vid kidz arcade games. but as always you, my dears, are welcome to use it for whatever purposes you like. it’s a small, blocky font with tiny cut-outs." 86 | 87 | */ 88 | 89 | @font-face { 90 | font-family: 'Mars Needs Cunnilingus'; 91 | src: url('fonts/mars_needs_cunnilingus-webfont.eot'); 92 | src: url('fonts/mars_needs_cunnilingus-webfont.eot?#iefix') format('embedded-opentype'), 93 | url('fonts/mars_needs_cunnilingus-webfont.woff2') format('woff2'), 94 | url('fonts/mars_needs_cunnilingus-webfont.woff') format('woff'), 95 | url('fonts/mars_needs_cunnilingus-webfont.ttf') format('truetype'), 96 | url('fonts/mars_needs_cunnilingus-webfont.svg#mars_needs_cunnilingusregular') format('svg'); 97 | font-weight: normal; 98 | font-style: normal; 99 | } 100 | -------------------------------------------------------------------------------- /mettaton-switch/howler.js: -------------------------------------------------------------------------------- 1 | /*! howler.js v2.0.0-beta5 | (c) 2013-2015, James Simpson of GoldFire Studios | MIT License | howlerjs.com */ 2 | !function(){"use strict";function e(){try{"undefined"!=typeof AudioContext?n=new AudioContext:"undefined"!=typeof webkitAudioContext?n=new webkitAudioContext:o=!1}catch(e){o=!1}if(!o)if("undefined"!=typeof Audio)try{var u=new Audio;"undefined"==typeof u.oncanplaythrough&&(d="canplay")}catch(e){t=!0}else t=!0;try{var u=new Audio;u.muted&&(t=!0)}catch(e){}o&&(r="undefined"==typeof n.createGain?n.createGainNode():n.createGain(),r.gain.value=1,r.connect(n.destination))}var n=null,o=!0,t=!1,r=null,d="canplaythrough";e();var u=function(){this.init()};u.prototype={init:function(){var e=this||i;return e._codecs={},e._howls=[],e._muted=!1,e._volume=1,e.state="running",e.autoSuspend=!0,e._autoSuspend(),e.mobileAutoEnable=!0,e.noAudio=t,e.usingWebAudio=o,e.ctx=n,t||e._setupCodecs(),e},volume:function(e){var n=this||i;if(e=parseFloat(e),"undefined"!=typeof e&&e>=0&&1>=e){n._volume=e,o&&(r.gain.value=e);for(var t=0;t=0;t--)o._howls[t].unload();return o.usingWebAudio&&"undefined"!=typeof n.close&&(o.ctx=null,n.close(),e(),o.ctx=n),o},codecs:function(e){return(this||i)._codecs[e]},_setupCodecs:function(){var e=this||i,n=new Audio,o=n.canPlayType("audio/mpeg;").replace(/^no$/,""),t=/OPR\//.test(navigator.userAgent);return e._codecs={mp3:!(t||!o&&!n.canPlayType("audio/mp3;").replace(/^no$/,"")),mpeg:!!o,opus:!!n.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/,""),ogg:!!n.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),wav:!!n.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),aac:!!n.canPlayType("audio/aac;").replace(/^no$/,""),m4a:!!(n.canPlayType("audio/x-m4a;")||n.canPlayType("audio/m4a;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),mp4:!!(n.canPlayType("audio/x-mp4;")||n.canPlayType("audio/mp4;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),weba:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),webm:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,"")},e},_enableMobileAudio:function(){var e=this||i,o=/iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk/i.test(navigator.userAgent),t=!!("ontouchend"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0);if(!n||!e._mobileEnabled&&o&&t){e._mobileEnabled=!1;var r=function(){var o=n.createBuffer(1,1,22050),t=n.createBufferSource();t.buffer=o,t.connect(n.destination),"undefined"==typeof t.start?t.noteOn(0):t.start(0),t.onended=function(){t.disconnect(0),e._mobileEnabled=!0,e.mobileAutoEnable=!1,document.removeEventListener("touchend",r,!0)}};return document.addEventListener("touchend",r,!0),e}},_autoSuspend:function(){var e=this;if(e.autoSuspend&&n&&"undefined"!=typeof n.suspend&&o){for(var t=0;t0?_._seek:o._sprite[e][0]/1e3,l=(o._sprite[e][0]+o._sprite[e][1])/1e3-s,f=1e3*l/Math.abs(_._rate);f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),_._paused=!1,_._ended=!1,_._sprite=e,_._seek=s,_._start=o._sprite[e][0]/1e3,_._stop=(o._sprite[e][0]+o._sprite[e][1])/1e3,_._loop=!(!_._loop&&!o._sprite[e][2]);var c=_._node;if(o._webAudio){var p=function(){o._refreshBuffer(_);var e=_._muted||o._muted?0:_._volume*i.volume();c.gain.setValueAtTime(e,n.currentTime),_._playStart=n.currentTime,"undefined"==typeof c.bufferSource.start?_._loop?c.bufferSource.noteGrainOn(0,s,86400):c.bufferSource.noteGrainOn(0,s,l):_._loop?c.bufferSource.start(0,s,86400):c.bufferSource.start(0,s,l),o._endTimers[_._id]||f===1/0||(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),t[1]||setTimeout(function(){o._emit("play",_._id)},0)};o._loaded?p():(o.once("load",p),o._clearTimer(_._id))}else{var m=function(){c.currentTime=s,c.muted=_._muted||o._muted||i._muted||c.muted,c.volume=_._volume*i.volume(),c.playbackRate=_._rate,setTimeout(function(){c.play(),t[1]||o._emit("play",_._id)},0)};if(4===c.readyState||!c.readyState&&navigator.isCocoonJS)m();else{var v=function(){f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),m(),c.removeEventListener(d,v,!1)};c.addEventListener(d,v,!1),o._clearTimer(_._id)}}return _._id},pause:function(e){var n=this;if(!n._loaded)return n.once("play",function(){n.pause(e)}),n;for(var o=n._getSoundIds(e),t=0;t=0?o=parseInt(r[0],10):e=parseFloat(r[0])}else r.length>=2&&(e=parseFloat(r[0]),o=parseInt(r[1],10));var a;if(!("undefined"!=typeof e&&e>=0&&1>=e))return a=o?t._soundById(o):t._sounds[0],a?a._volume:0;if(!t._loaded)return t.once("play",function(){t.volume.apply(t,r)}),t;"undefined"==typeof o&&(t._volume=e),o=t._getSoundIds(o);for(var _=0;_0?Math.ceil(1e3*(s-n.currentTime)):0)}.bind(d,u[i],a),t)}else{var l=Math.abs(e-o),f=e>o?"out":"in",c=l/.01,p=t/c;!function(){var n=e;a._interval=setInterval(function(e,t){n+="in"===f?.01:-.01,n=Math.max(0,n),n=Math.min(1,n),n=Math.round(100*n)/100,d.volume(n,e,!0),n===o&&(clearInterval(t._interval),delete t._interval,d._emit("faded",e))}.bind(d,u[i],a),p)}()}}return d},_stopFade:function(e){var o=this,t=o._soundById(e);return t._interval?(clearInterval(t._interval),delete t._interval,o._emit("faded",e)):t._timeout&&(clearTimeout(t._timeout),delete t._timeout,t._node.gain.cancelScheduledValues(n.currentTime),o._emit("faded",e)),o},loop:function(){var e,n,o,t=this,r=arguments;if(0===r.length)return t._loop;if(1===r.length){if("boolean"!=typeof r[0])return o=t._soundById(parseInt(r[0],10)),o?o._loop:!1;e=r[0],t._loop=e}else 2===r.length&&(e=r[0],n=parseInt(r[1],10));for(var d=t._getSoundIds(n),u=0;u=0?n=parseInt(t[0],10):e=parseFloat(t[0])}else 2===t.length&&(e=parseFloat(t[0]),n=parseInt(t[1],10));var u;if("number"!=typeof e)return u=o._soundById(n),u?u._rate:o._rate;if(!o._loaded)return o.once("load",function(){o.rate.apply(o,t)}),o;"undefined"==typeof n&&(o._rate=e),n=o._getSoundIds(n);for(var i=0;i=0?o=parseInt(r[0],10):(o=t._sounds[0]._id,e=parseFloat(r[0]))}else 2===r.length&&(e=parseFloat(r[0]),o=parseInt(r[1],10));if("undefined"==typeof o)return t;if(!t._loaded)return t.once("load",function(){t.seek.apply(t,r)}),t;var i=t._soundById(o);if(i){if(!(e>=0))return t._webAudio?i._seek+(t.playing(o)?n.currentTime-i._playStart:0):i._node.currentTime;var a=t.playing(o);a&&t.pause(o,!0),i._seek=e,t._clearTimer(o),a&&t.play(o,!0)}return t},playing:function(e){var n=this,o=n._soundById(e)||n._sounds[0];return o?!o._paused:!1},duration:function(){return this._duration},unload:function(){for(var e=this,n=e._sounds,o=0;o=0&&i._howls.splice(t,1)}return s&&delete s[e._src],e._sounds=[],e=null,null},on:function(e,n,o,t){var r=this,d=r["_on"+e];return"function"==typeof n&&d.push(t?{id:o,fn:n,once:t}:{id:o,fn:n}),r},off:function(e,n,o){var t=this,r=t["_on"+e];if(n){for(var d=0;d=0;t--){if(n>=o)return;e._sounds[t]._ended&&(e._webAudio&&e._sounds[t]._node&&e._sounds[t]._node.disconnect(0),e._sounds.splice(t,1),o--)}}},_getSoundIds:function(e){var n=this;if("undefined"==typeof e){for(var o=[],t=0;t>(-2*d&6)):0)o=t.indexOf(o);return i};for(var o=atob(n.split(",")[1]),t=new Uint8Array(o.length),r=0;r0&&(s[o._src]=e,p(o,e))},function(){o._emit("loaderror",null,"Decoding audio data failed.")})},p=function(e,n){n&&!e._duration&&(e._duration=n.duration),0===Object.keys(e._sprite).length&&(e._sprite={__default:[0,1e3*e._duration]}),e._loaded||(e._loaded=!0,e._emit("load")),e._autoplay&&e.play()};"function"==typeof define&&define.amd&&define([],function(){return{Howler:i,Howl:a}}),"undefined"!=typeof exports&&(exports.Howler=i,exports.Howl=a),"undefined"!=typeof window&&(window.HowlerGlobal=u,window.Howler=i,window.Howl=a,window.Sound=_)}(); 3 | /*! Effects Plugin */ 4 | !function(){"use strict";HowlerGlobal.prototype.init=function(e){return function(){var n=this;return n._pos=[0,0,0],n._orientation=[0,0,-1,0,1,0],n._velocity=[0,0,0],n._listenerAttr={dopplerFactor:1,speedOfSound:343.3},e.call(this,o)}}(HowlerGlobal.prototype.init),HowlerGlobal.prototype.pos=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._pos[1]:n,t="number"!=typeof t?o._pos[2]:t,"number"!=typeof e?o._pos:(o._pos=[e,n,t],o.ctx.listener.setPosition(o._pos[0],o._pos[1],o._pos[2]),o)):o},HowlerGlobal.prototype.orientation=function(e,n,t,o,r,i){var a=this;if(!a.ctx||!a.ctx.listener)return a;var p=a._orientation;return n="number"!=typeof n?p[1]:n,t="number"!=typeof t?p[2]:t,o="number"!=typeof o?p[3]:o,r="number"!=typeof r?p[4]:r,i="number"!=typeof i?p[5]:i,"number"!=typeof e?p:(a._orientation=[e,n,t,o,r,i],a.ctx.listener.setOrientation(p[0],p[1],p[2],p[3],p[4],p[5]),a)},HowlerGlobal.prototype.velocity=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._velocity[1]:n,t="number"!=typeof t?o._velocity[2]:t,"number"!=typeof e?o._velocity:(o._velocity=[e,n,t],o.ctx.listener.setVelocity(o._velocity[0],o._velocity[1],o._velocity[2]),o)):o},HowlerGlobal.prototype.listenerAttr=function(e){var n=this;if(!n.ctx||!n.ctx.listener)return n;var t=n._listenerAttr;return e?(n._listenerAttr={dopplerFactor:"undefined"!=typeof e.dopplerFactor?e.dopplerFactor:t.dopplerFactor,speedOfSound:"undefined"!=typeof e.speedOfSound?e.speedOfSound:t.speedOfSound},n.ctx.listener.dopplerFactor=t.dopplerFactor,n.ctx.listener.speedOfSound=t.speedOfSound,n):t},Howl.prototype.init=function(e){return function(n){var t=this;return t._orientation=n.orientation||[1,0,0],t._pos=n.pos||null,t._velocity=n.velocity||[0,0,0],t._pannerAttr={coneInnerAngle:"undefined"!=typeof n.coneInnerAngle?n.coneInnerAngle:360,coneOUterAngle:"undefined"!=typeof n.coneOUterAngle?n.coneOUterAngle:360,coneOuterGain:"undefined"!=typeof n.coneOuterGain?n.coneOuterGain:0,distanceModel:"undefined"!=typeof n.distanceModel?n.distanceModel:"inverse",maxDistance:"undefined"!=typeof n.maxDistance?n.maxDistance:1e4,panningModel:"undefined"!=typeof n.panningModel?n.panningModel:"HRTF",refDistance:"undefined"!=typeof n.refDistance?n.refDistance:1,rolloffFactor:"undefined"!=typeof n.rolloffFactor?n.rolloffFactor:1},e.call(this,n)}}(Howl.prototype.init),Howl.prototype.pos=function(n,t,o,r){var i=this;if(!i._webAudio)return i;if(!i._loaded)return i.once("play",function(){i.pos(n,t,o,r)}),i;if(t="number"!=typeof t?0:t,o="number"!=typeof o?-.5:o,"undefined"==typeof r){if("number"!=typeof n)return i._pos;i._pos=[n,t,o]}for(var a=i._getSoundIds(r),p=0;p 2 | 3 | 4 | 5 | this actually happens in the game 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 |
15 | speed: 100% 16 | 17 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /mettaton-switch/mettaton.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/mettaton-switch/mettaton.gif -------------------------------------------------------------------------------- /snowfall-getting-slower/audio/snowfall.opus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowfall-getting-slower/audio/snowfall.opus -------------------------------------------------------------------------------- /snowfall-getting-slower/css/DeterminationMonoWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowfall-getting-slower/css/DeterminationMonoWeb.woff -------------------------------------------------------------------------------- /snowfall-getting-slower/css/DeterminationSansWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowfall-getting-slower/css/DeterminationSansWeb.woff -------------------------------------------------------------------------------- /snowfall-getting-slower/css/undertale.css: -------------------------------------------------------------------------------- 1 | @import url("webfont.css"); 2 | 3 | html, body { 4 | background-color: black; 5 | color: white; 6 | font-family: "Determination Sans", Fixedsys, sans-serif; 7 | font-weight: normal; 8 | font-size: 24px; 9 | text-align: center; 10 | } 11 | 12 | #bg { 13 | display: inline-block; 14 | width: 640px; 15 | height: 440px; 16 | margin-top: 20px; 17 | overflow: hidden; 18 | text-align: center; 19 | } 20 | 21 | a{ 22 | color: #00ffff; 23 | text-decoration: none; 24 | } 25 | 26 | a:hover{ 27 | color: #33cccc; 28 | } 29 | 30 | div.bottom-notice { 31 | position: absolute; 32 | bottom: 0.5em; 33 | left: 0; 34 | right: 0; 35 | text-align: center; 36 | font-size: 50%; 37 | opacity: 0.3; 38 | transition: all 0.2s ease; 39 | } 40 | 41 | div.bottom-notice:hover { 42 | opacity: 1; 43 | } 44 | 45 | @font-face { 46 | font-family: 'Determination Sans'; 47 | src: url('DeterminationMonoWeb.woff') format('woff'); 48 | } 49 | -------------------------------------------------------------------------------- /snowfall-getting-slower/css/webfont.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 13, 2015 2 | 3 | Copyright (c) 2009 - 2014 Grand Chaos Productions (http://grandchaos9000.deviantart.com), with Reserved Font Name 8-bit Operator+. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. 46 | 47 | */ 48 | 49 | @font-face { 50 | font-family: '8-bit Operator Mono'; 51 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot'); 52 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot?#iefix') format('embedded-opentype'), 53 | url('fonts/8-bit_operator_mono-regular-webfont.woff2') format('woff2'), 54 | url('fonts/8-bit_operator_mono-regular-webfont.woff') format('woff'), 55 | url('fonts/8-bit_operator_mono-regular-webfont.ttf') format('truetype'), 56 | url('fonts/8-bit_operator_mono-regular-webfont.svg#8-bit_operatorbold') format('svg'); 57 | font-weight: normal; 58 | font-style: normal; 59 | } 60 | 61 | 62 | /* Retrieved from http://http://loudifier.com/comic-relief/ 63 | 64 | Released under the SIL Font License as above 65 | 66 | */ 67 | 68 | @font-face { 69 | font-family: 'Comic Relief'; 70 | src: url('fonts/comicrelief.eot'); 71 | src: url('fonts/comicrelief.eot?#iefix') format('embedded-opentype'), 72 | url('fonts/comicrelief.woff') format('woff'), 73 | url('fonts/comicrelief.ttf') format('truetype'), 74 | url('fonts/comicrelief.svg#comic_reliefregular') format('svg'); 75 | font-weight: normal; 76 | font-style: normal; 77 | 78 | } 79 | 80 | 81 | 82 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 14, 2015 83 | 84 | License is summed up by the following statement from Auntie Pixelante: 85 | "i made this font for the message bar in my new game, something in the vein of midway / vid kidz arcade games. but as always you, my dears, are welcome to use it for whatever purposes you like. it’s a small, blocky font with tiny cut-outs." 86 | 87 | */ 88 | 89 | @font-face { 90 | font-family: 'Mars Needs Cunnilingus'; 91 | src: url('fonts/mars_needs_cunnilingus-webfont.eot'); 92 | src: url('fonts/mars_needs_cunnilingus-webfont.eot?#iefix') format('embedded-opentype'), 93 | url('fonts/mars_needs_cunnilingus-webfont.woff2') format('woff2'), 94 | url('fonts/mars_needs_cunnilingus-webfont.woff') format('woff'), 95 | url('fonts/mars_needs_cunnilingus-webfont.ttf') format('truetype'), 96 | url('fonts/mars_needs_cunnilingus-webfont.svg#mars_needs_cunnilingusregular') format('svg'); 97 | font-weight: normal; 98 | font-style: normal; 99 | } 100 | -------------------------------------------------------------------------------- /snowfall-getting-slower/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Calm down and relax... 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 |
15 | speed: 100.00% 16 | 17 | 20 | 21 |
Background photo by Michael Hacker on Unsplash.
22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /snowfall-getting-slower/snowforest.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowfall-getting-slower/snowforest.jpg -------------------------------------------------------------------------------- /snowfall-getting-slower/snowy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowfall-getting-slower/snowy.jpg -------------------------------------------------------------------------------- /snowfall-getting-slower/snowy.js: -------------------------------------------------------------------------------- 1 | var snowy = new Howl({ 2 | src: ["audio/snowfall.opus"], 3 | loop: true, 4 | }); 5 | 6 | var update_time = new Date(); 7 | 8 | var percent_time = 0.05; 9 | 10 | var inv_rate = 1; 11 | var rate_timer = percent_time; 12 | 13 | function update() { 14 | var new_time = new Date(); 15 | var delta = new_time.getTime() - update_time.getTime(); 16 | update_time.setTime(new_time.getTime()); 17 | 18 | rate_timer -= delta / 1000; 19 | 20 | while (rate_timer <= 0) { 21 | rate_timer += percent_time; 22 | inv_rate += 0.00001; 23 | snowy.rate(1 / inv_rate); 24 | document.getElementById("speed").innerHTML = 25 | "speed: " + ((1 / inv_rate) * 100).toFixed(2) + "%"; 26 | document.getElementById("snowy").style.opacity = 27 | 1 / inv_rate / inv_rate; 28 | } 29 | 30 | setTimeout(update, 10); 31 | } 32 | 33 | function run() { 34 | snowy.play(); 35 | update_time = new Date(); 36 | setTimeout(update, 10); 37 | } 38 | -------------------------------------------------------------------------------- /snowy-getting-slower/audio/snowy.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowy-getting-slower/audio/snowy.ogg -------------------------------------------------------------------------------- /snowy-getting-slower/css/DeterminationMonoWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowy-getting-slower/css/DeterminationMonoWeb.woff -------------------------------------------------------------------------------- /snowy-getting-slower/css/DeterminationSansWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowy-getting-slower/css/DeterminationSansWeb.woff -------------------------------------------------------------------------------- /snowy-getting-slower/css/undertale.css: -------------------------------------------------------------------------------- 1 | @import url("webfont.css"); 2 | 3 | html, body { 4 | background-color: black; 5 | color: white; 6 | font-family: "Determination Sans", Fixedsys, sans-serif; 7 | font-weight: normal; 8 | font-size: 24px; 9 | text-align: center; 10 | } 11 | 12 | #bg { 13 | display: inline-block; 14 | width: 640px; 15 | height: 440px; 16 | margin-top: 20px; 17 | overflow: hidden; 18 | text-align: center; 19 | } 20 | 21 | a{ 22 | color: #00ffff; 23 | text-decoration: none; 24 | } 25 | 26 | a:hover{ 27 | color: #33cccc; 28 | } 29 | 30 | div.bottom-notice { 31 | position: absolute; 32 | bottom: 0.5em; 33 | left: 0; 34 | right: 0; 35 | text-align: center; 36 | font-size: 50%; 37 | opacity: 0.3; 38 | transition: all 0.2s ease; 39 | } 40 | 41 | div.bottom-notice:hover { 42 | opacity: 1; 43 | } 44 | 45 | @font-face { 46 | font-family: 'Determination Sans'; 47 | src: url('DeterminationMonoWeb.woff') format('woff'); 48 | } 49 | -------------------------------------------------------------------------------- /snowy-getting-slower/css/webfont.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 13, 2015 2 | 3 | Copyright (c) 2009 - 2014 Grand Chaos Productions (http://grandchaos9000.deviantart.com), with Reserved Font Name 8-bit Operator+. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. 46 | 47 | */ 48 | 49 | @font-face { 50 | font-family: '8-bit Operator Mono'; 51 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot'); 52 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot?#iefix') format('embedded-opentype'), 53 | url('fonts/8-bit_operator_mono-regular-webfont.woff2') format('woff2'), 54 | url('fonts/8-bit_operator_mono-regular-webfont.woff') format('woff'), 55 | url('fonts/8-bit_operator_mono-regular-webfont.ttf') format('truetype'), 56 | url('fonts/8-bit_operator_mono-regular-webfont.svg#8-bit_operatorbold') format('svg'); 57 | font-weight: normal; 58 | font-style: normal; 59 | } 60 | 61 | 62 | /* Retrieved from http://http://loudifier.com/comic-relief/ 63 | 64 | Released under the SIL Font License as above 65 | 66 | */ 67 | 68 | @font-face { 69 | font-family: 'Comic Relief'; 70 | src: url('fonts/comicrelief.eot'); 71 | src: url('fonts/comicrelief.eot?#iefix') format('embedded-opentype'), 72 | url('fonts/comicrelief.woff') format('woff'), 73 | url('fonts/comicrelief.ttf') format('truetype'), 74 | url('fonts/comicrelief.svg#comic_reliefregular') format('svg'); 75 | font-weight: normal; 76 | font-style: normal; 77 | 78 | } 79 | 80 | 81 | 82 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 14, 2015 83 | 84 | License is summed up by the following statement from Auntie Pixelante: 85 | "i made this font for the message bar in my new game, something in the vein of midway / vid kidz arcade games. but as always you, my dears, are welcome to use it for whatever purposes you like. it’s a small, blocky font with tiny cut-outs." 86 | 87 | */ 88 | 89 | @font-face { 90 | font-family: 'Mars Needs Cunnilingus'; 91 | src: url('fonts/mars_needs_cunnilingus-webfont.eot'); 92 | src: url('fonts/mars_needs_cunnilingus-webfont.eot?#iefix') format('embedded-opentype'), 93 | url('fonts/mars_needs_cunnilingus-webfont.woff2') format('woff2'), 94 | url('fonts/mars_needs_cunnilingus-webfont.woff') format('woff'), 95 | url('fonts/mars_needs_cunnilingus-webfont.ttf') format('truetype'), 96 | url('fonts/mars_needs_cunnilingus-webfont.svg#mars_needs_cunnilingusregular') format('svg'); 97 | font-weight: normal; 98 | font-style: normal; 99 | } 100 | -------------------------------------------------------------------------------- /snowy-getting-slower/howler.js: -------------------------------------------------------------------------------- 1 | /*! howler.js v2.0.0-beta5 | (c) 2013-2015, James Simpson of GoldFire Studios | MIT License | howlerjs.com */ 2 | !function(){"use strict";function e(){try{"undefined"!=typeof AudioContext?n=new AudioContext:"undefined"!=typeof webkitAudioContext?n=new webkitAudioContext:o=!1}catch(e){o=!1}if(!o)if("undefined"!=typeof Audio)try{var u=new Audio;"undefined"==typeof u.oncanplaythrough&&(d="canplay")}catch(e){t=!0}else t=!0;try{var u=new Audio;u.muted&&(t=!0)}catch(e){}o&&(r="undefined"==typeof n.createGain?n.createGainNode():n.createGain(),r.gain.value=1,r.connect(n.destination))}var n=null,o=!0,t=!1,r=null,d="canplaythrough";e();var u=function(){this.init()};u.prototype={init:function(){var e=this||i;return e._codecs={},e._howls=[],e._muted=!1,e._volume=1,e.state="running",e.autoSuspend=!0,e._autoSuspend(),e.mobileAutoEnable=!0,e.noAudio=t,e.usingWebAudio=o,e.ctx=n,t||e._setupCodecs(),e},volume:function(e){var n=this||i;if(e=parseFloat(e),"undefined"!=typeof e&&e>=0&&1>=e){n._volume=e,o&&(r.gain.value=e);for(var t=0;t=0;t--)o._howls[t].unload();return o.usingWebAudio&&"undefined"!=typeof n.close&&(o.ctx=null,n.close(),e(),o.ctx=n),o},codecs:function(e){return(this||i)._codecs[e]},_setupCodecs:function(){var e=this||i,n=new Audio,o=n.canPlayType("audio/mpeg;").replace(/^no$/,""),t=/OPR\//.test(navigator.userAgent);return e._codecs={mp3:!(t||!o&&!n.canPlayType("audio/mp3;").replace(/^no$/,"")),mpeg:!!o,opus:!!n.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/,""),ogg:!!n.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),wav:!!n.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),aac:!!n.canPlayType("audio/aac;").replace(/^no$/,""),m4a:!!(n.canPlayType("audio/x-m4a;")||n.canPlayType("audio/m4a;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),mp4:!!(n.canPlayType("audio/x-mp4;")||n.canPlayType("audio/mp4;")||n.canPlayType("audio/aac;")).replace(/^no$/,""),weba:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),webm:!!n.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,"")},e},_enableMobileAudio:function(){var e=this||i,o=/iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk/i.test(navigator.userAgent),t=!!("ontouchend"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0);if(!n||!e._mobileEnabled&&o&&t){e._mobileEnabled=!1;var r=function(){var o=n.createBuffer(1,1,22050),t=n.createBufferSource();t.buffer=o,t.connect(n.destination),"undefined"==typeof t.start?t.noteOn(0):t.start(0),t.onended=function(){t.disconnect(0),e._mobileEnabled=!0,e.mobileAutoEnable=!1,document.removeEventListener("touchend",r,!0)}};return document.addEventListener("touchend",r,!0),e}},_autoSuspend:function(){var e=this;if(e.autoSuspend&&n&&"undefined"!=typeof n.suspend&&o){for(var t=0;t0?_._seek:o._sprite[e][0]/1e3,l=(o._sprite[e][0]+o._sprite[e][1])/1e3-s,f=1e3*l/Math.abs(_._rate);f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),_._paused=!1,_._ended=!1,_._sprite=e,_._seek=s,_._start=o._sprite[e][0]/1e3,_._stop=(o._sprite[e][0]+o._sprite[e][1])/1e3,_._loop=!(!_._loop&&!o._sprite[e][2]);var c=_._node;if(o._webAudio){var p=function(){o._refreshBuffer(_);var e=_._muted||o._muted?0:_._volume*i.volume();c.gain.setValueAtTime(e,n.currentTime),_._playStart=n.currentTime,"undefined"==typeof c.bufferSource.start?_._loop?c.bufferSource.noteGrainOn(0,s,86400):c.bufferSource.noteGrainOn(0,s,l):_._loop?c.bufferSource.start(0,s,86400):c.bufferSource.start(0,s,l),o._endTimers[_._id]||f===1/0||(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),t[1]||setTimeout(function(){o._emit("play",_._id)},0)};o._loaded?p():(o.once("load",p),o._clearTimer(_._id))}else{var m=function(){c.currentTime=s,c.muted=_._muted||o._muted||i._muted||c.muted,c.volume=_._volume*i.volume(),c.playbackRate=_._rate,setTimeout(function(){c.play(),t[1]||o._emit("play",_._id)},0)};if(4===c.readyState||!c.readyState&&navigator.isCocoonJS)m();else{var v=function(){f!==1/0&&(o._endTimers[_._id]=setTimeout(o._ended.bind(o,_),f)),m(),c.removeEventListener(d,v,!1)};c.addEventListener(d,v,!1),o._clearTimer(_._id)}}return _._id},pause:function(e){var n=this;if(!n._loaded)return n.once("play",function(){n.pause(e)}),n;for(var o=n._getSoundIds(e),t=0;t=0?o=parseInt(r[0],10):e=parseFloat(r[0])}else r.length>=2&&(e=parseFloat(r[0]),o=parseInt(r[1],10));var a;if(!("undefined"!=typeof e&&e>=0&&1>=e))return a=o?t._soundById(o):t._sounds[0],a?a._volume:0;if(!t._loaded)return t.once("play",function(){t.volume.apply(t,r)}),t;"undefined"==typeof o&&(t._volume=e),o=t._getSoundIds(o);for(var _=0;_0?Math.ceil(1e3*(s-n.currentTime)):0)}.bind(d,u[i],a),t)}else{var l=Math.abs(e-o),f=e>o?"out":"in",c=l/.01,p=t/c;!function(){var n=e;a._interval=setInterval(function(e,t){n+="in"===f?.01:-.01,n=Math.max(0,n),n=Math.min(1,n),n=Math.round(100*n)/100,d.volume(n,e,!0),n===o&&(clearInterval(t._interval),delete t._interval,d._emit("faded",e))}.bind(d,u[i],a),p)}()}}return d},_stopFade:function(e){var o=this,t=o._soundById(e);return t._interval?(clearInterval(t._interval),delete t._interval,o._emit("faded",e)):t._timeout&&(clearTimeout(t._timeout),delete t._timeout,t._node.gain.cancelScheduledValues(n.currentTime),o._emit("faded",e)),o},loop:function(){var e,n,o,t=this,r=arguments;if(0===r.length)return t._loop;if(1===r.length){if("boolean"!=typeof r[0])return o=t._soundById(parseInt(r[0],10)),o?o._loop:!1;e=r[0],t._loop=e}else 2===r.length&&(e=r[0],n=parseInt(r[1],10));for(var d=t._getSoundIds(n),u=0;u=0?n=parseInt(t[0],10):e=parseFloat(t[0])}else 2===t.length&&(e=parseFloat(t[0]),n=parseInt(t[1],10));var u;if("number"!=typeof e)return u=o._soundById(n),u?u._rate:o._rate;if(!o._loaded)return o.once("load",function(){o.rate.apply(o,t)}),o;"undefined"==typeof n&&(o._rate=e),n=o._getSoundIds(n);for(var i=0;i=0?o=parseInt(r[0],10):(o=t._sounds[0]._id,e=parseFloat(r[0]))}else 2===r.length&&(e=parseFloat(r[0]),o=parseInt(r[1],10));if("undefined"==typeof o)return t;if(!t._loaded)return t.once("load",function(){t.seek.apply(t,r)}),t;var i=t._soundById(o);if(i){if(!(e>=0))return t._webAudio?i._seek+(t.playing(o)?n.currentTime-i._playStart:0):i._node.currentTime;var a=t.playing(o);a&&t.pause(o,!0),i._seek=e,t._clearTimer(o),a&&t.play(o,!0)}return t},playing:function(e){var n=this,o=n._soundById(e)||n._sounds[0];return o?!o._paused:!1},duration:function(){return this._duration},unload:function(){for(var e=this,n=e._sounds,o=0;o=0&&i._howls.splice(t,1)}return s&&delete s[e._src],e._sounds=[],e=null,null},on:function(e,n,o,t){var r=this,d=r["_on"+e];return"function"==typeof n&&d.push(t?{id:o,fn:n,once:t}:{id:o,fn:n}),r},off:function(e,n,o){var t=this,r=t["_on"+e];if(n){for(var d=0;d=0;t--){if(n>=o)return;e._sounds[t]._ended&&(e._webAudio&&e._sounds[t]._node&&e._sounds[t]._node.disconnect(0),e._sounds.splice(t,1),o--)}}},_getSoundIds:function(e){var n=this;if("undefined"==typeof e){for(var o=[],t=0;t>(-2*d&6)):0)o=t.indexOf(o);return i};for(var o=atob(n.split(",")[1]),t=new Uint8Array(o.length),r=0;r0&&(s[o._src]=e,p(o,e))},function(){o._emit("loaderror",null,"Decoding audio data failed.")})},p=function(e,n){n&&!e._duration&&(e._duration=n.duration),0===Object.keys(e._sprite).length&&(e._sprite={__default:[0,1e3*e._duration]}),e._loaded||(e._loaded=!0,e._emit("load")),e._autoplay&&e.play()};"function"==typeof define&&define.amd&&define([],function(){return{Howler:i,Howl:a}}),"undefined"!=typeof exports&&(exports.Howler=i,exports.Howl=a),"undefined"!=typeof window&&(window.HowlerGlobal=u,window.Howler=i,window.Howl=a,window.Sound=_)}(); 3 | /*! Effects Plugin */ 4 | !function(){"use strict";HowlerGlobal.prototype.init=function(e){return function(){var n=this;return n._pos=[0,0,0],n._orientation=[0,0,-1,0,1,0],n._velocity=[0,0,0],n._listenerAttr={dopplerFactor:1,speedOfSound:343.3},e.call(this,o)}}(HowlerGlobal.prototype.init),HowlerGlobal.prototype.pos=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._pos[1]:n,t="number"!=typeof t?o._pos[2]:t,"number"!=typeof e?o._pos:(o._pos=[e,n,t],o.ctx.listener.setPosition(o._pos[0],o._pos[1],o._pos[2]),o)):o},HowlerGlobal.prototype.orientation=function(e,n,t,o,r,i){var a=this;if(!a.ctx||!a.ctx.listener)return a;var p=a._orientation;return n="number"!=typeof n?p[1]:n,t="number"!=typeof t?p[2]:t,o="number"!=typeof o?p[3]:o,r="number"!=typeof r?p[4]:r,i="number"!=typeof i?p[5]:i,"number"!=typeof e?p:(a._orientation=[e,n,t,o,r,i],a.ctx.listener.setOrientation(p[0],p[1],p[2],p[3],p[4],p[5]),a)},HowlerGlobal.prototype.velocity=function(e,n,t){var o=this;return o.ctx&&o.ctx.listener?(n="number"!=typeof n?o._velocity[1]:n,t="number"!=typeof t?o._velocity[2]:t,"number"!=typeof e?o._velocity:(o._velocity=[e,n,t],o.ctx.listener.setVelocity(o._velocity[0],o._velocity[1],o._velocity[2]),o)):o},HowlerGlobal.prototype.listenerAttr=function(e){var n=this;if(!n.ctx||!n.ctx.listener)return n;var t=n._listenerAttr;return e?(n._listenerAttr={dopplerFactor:"undefined"!=typeof e.dopplerFactor?e.dopplerFactor:t.dopplerFactor,speedOfSound:"undefined"!=typeof e.speedOfSound?e.speedOfSound:t.speedOfSound},n.ctx.listener.dopplerFactor=t.dopplerFactor,n.ctx.listener.speedOfSound=t.speedOfSound,n):t},Howl.prototype.init=function(e){return function(n){var t=this;return t._orientation=n.orientation||[1,0,0],t._pos=n.pos||null,t._velocity=n.velocity||[0,0,0],t._pannerAttr={coneInnerAngle:"undefined"!=typeof n.coneInnerAngle?n.coneInnerAngle:360,coneOUterAngle:"undefined"!=typeof n.coneOUterAngle?n.coneOUterAngle:360,coneOuterGain:"undefined"!=typeof n.coneOuterGain?n.coneOuterGain:0,distanceModel:"undefined"!=typeof n.distanceModel?n.distanceModel:"inverse",maxDistance:"undefined"!=typeof n.maxDistance?n.maxDistance:1e4,panningModel:"undefined"!=typeof n.panningModel?n.panningModel:"HRTF",refDistance:"undefined"!=typeof n.refDistance?n.refDistance:1,rolloffFactor:"undefined"!=typeof n.rolloffFactor?n.rolloffFactor:1},e.call(this,n)}}(Howl.prototype.init),Howl.prototype.pos=function(n,t,o,r){var i=this;if(!i._webAudio)return i;if(!i._loaded)return i.once("play",function(){i.pos(n,t,o,r)}),i;if(t="number"!=typeof t?0:t,o="number"!=typeof o?-.5:o,"undefined"==typeof r){if("number"!=typeof n)return i._pos;i._pos=[n,t,o]}for(var a=i._getSoundIds(r),p=0;p 2 | 3 | 4 | 5 | Calm down and relax... 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 |
15 | speed: 100.00% 16 | 17 | 20 | 21 |
Background: Snowy Forest by Artwork-Production on deviantART.
22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /snowy-getting-slower/snowy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/snowy-getting-slower/snowy.jpg -------------------------------------------------------------------------------- /snowy-getting-slower/snowy.js: -------------------------------------------------------------------------------- 1 | var snowy = new Howl({ 2 | src: ["audio/snowy.ogg"], 3 | loop: true, 4 | }); 5 | 6 | var update_time = new Date(); 7 | 8 | var percent_time = 0.05; 9 | 10 | var inv_rate = 1; 11 | var rate_timer = percent_time; 12 | 13 | function update() { 14 | var new_time = new Date(); 15 | var delta = new_time.getTime() - update_time.getTime(); 16 | update_time.setTime(new_time.getTime()); 17 | 18 | rate_timer -= delta / 1000; 19 | 20 | while (rate_timer <= 0) { 21 | rate_timer += percent_time; 22 | inv_rate += 0.00001; 23 | snowy.rate(1 / inv_rate); 24 | document.getElementById("speed").innerHTML = 25 | "speed: " + ((1 / inv_rate) * 100).toFixed(2) + "%"; 26 | document.getElementById("snowy").style.opacity = 27 | 1 / inv_rate / inv_rate; 28 | } 29 | 30 | setTimeout(update, 10); 31 | } 32 | 33 | function run() { 34 | snowy.play(); 35 | update_time = new Date(); 36 | setTimeout(update, 10); 37 | } 38 | -------------------------------------------------------------------------------- /undyne-getting-faster/audio/bonetrousle.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/undyne-getting-faster/audio/bonetrousle.ogg -------------------------------------------------------------------------------- /undyne-getting-faster/bonetrousle.js: -------------------------------------------------------------------------------- 1 | var bonetrousle = new Howl({ 2 | src: ["audio/bonetrousle.ogg"], 3 | loop: true, 4 | }); 5 | 6 | var update_time = new Date(); 7 | 8 | var percent_time = 0.8064; 9 | 10 | var rate = 1; 11 | var rate_timer = percent_time; 12 | 13 | function update() { 14 | var new_time = new Date(); 15 | var delta = new_time.getTime() - update_time.getTime(); 16 | update_time.setTime(new_time.getTime()); 17 | 18 | rate_timer -= (rate * delta) / 1000; 19 | 20 | if (rate_timer <= 0) { 21 | rate_timer += percent_time; 22 | rate += 0.01; 23 | bonetrousle.rate(rate); 24 | document.getElementById("speed").innerHTML = 25 | "speed: " + (rate * 100).toFixed(0) + "%"; 26 | } 27 | 28 | document.getElementById("undyne").style.top = 29 | rate * 2 - Math.random() * rate * 4 + "px"; 30 | document.getElementById("undyne").style.left = 31 | rate * 2 - Math.random() * rate * 4 + "px"; 32 | setTimeout(update, 10); 33 | } 34 | 35 | function run() { 36 | bonetrousle.play(); 37 | update_time = new Date(); 38 | setTimeout(update, 10); 39 | } 40 | -------------------------------------------------------------------------------- /undyne-getting-faster/css/DeterminationMonoWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/undyne-getting-faster/css/DeterminationMonoWeb.woff -------------------------------------------------------------------------------- /undyne-getting-faster/css/DeterminationSansWeb.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/undyne-getting-faster/css/DeterminationSansWeb.woff -------------------------------------------------------------------------------- /undyne-getting-faster/css/undertale.css: -------------------------------------------------------------------------------- 1 | @import url("webfont.css"); 2 | 3 | html, body { 4 | background-color: black; 5 | color: white; 6 | font-family: "Determination Sans", Fixedsys, sans-serif; 7 | font-weight: normal; 8 | font-size: 24px; 9 | text-align: center; 10 | } 11 | 12 | #rumbling_undyne { 13 | display: inline-block; 14 | position: relative; 15 | width: 500px; 16 | height: 500px; 17 | overflow: hidden; 18 | } 19 | 20 | 21 | 22 | @font-face { 23 | font-family: 'Determination Sans'; 24 | src: url('DeterminationMonoWeb.woff') format('woff'); 25 | } 26 | -------------------------------------------------------------------------------- /undyne-getting-faster/css/webfont.css: -------------------------------------------------------------------------------- 1 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 13, 2015 2 | 3 | Copyright (c) 2009 - 2014 Grand Chaos Productions (http://grandchaos9000.deviantart.com), with Reserved Font Name 8-bit Operator+. 4 | 5 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 6 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. 14 | 15 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. 16 | 17 | DEFINITIONS 18 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. 19 | 20 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s). 21 | 22 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). 23 | 24 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. 25 | 26 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. 27 | 28 | PERMISSION & CONDITIONS 29 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 30 | 31 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 32 | 33 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 34 | 35 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 36 | 37 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 38 | 39 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. 40 | 41 | TERMINATION 42 | This license becomes null and void if any of the above conditions are not met. 43 | 44 | DISCLAIMER 45 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. 46 | 47 | */ 48 | 49 | @font-face { 50 | font-family: '8-bit Operator Mono'; 51 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot'); 52 | src: url('fonts/8-bit_operator_mono-regular-webfont.eot?#iefix') format('embedded-opentype'), 53 | url('fonts/8-bit_operator_mono-regular-webfont.woff2') format('woff2'), 54 | url('fonts/8-bit_operator_mono-regular-webfont.woff') format('woff'), 55 | url('fonts/8-bit_operator_mono-regular-webfont.ttf') format('truetype'), 56 | url('fonts/8-bit_operator_mono-regular-webfont.svg#8-bit_operatorbold') format('svg'); 57 | font-weight: normal; 58 | font-style: normal; 59 | } 60 | 61 | 62 | /* Retrieved from http://http://loudifier.com/comic-relief/ 63 | 64 | Released under the SIL Font License as above 65 | 66 | */ 67 | 68 | @font-face { 69 | font-family: 'Comic Relief'; 70 | src: url('fonts/comicrelief.eot'); 71 | src: url('fonts/comicrelief.eot?#iefix') format('embedded-opentype'), 72 | url('fonts/comicrelief.woff') format('woff'), 73 | url('fonts/comicrelief.ttf') format('truetype'), 74 | url('fonts/comicrelief.svg#comic_reliefregular') format('svg'); 75 | font-weight: normal; 76 | font-style: normal; 77 | 78 | } 79 | 80 | 81 | 82 | /* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 14, 2015 83 | 84 | License is summed up by the following statement from Auntie Pixelante: 85 | "i made this font for the message bar in my new game, something in the vein of midway / vid kidz arcade games. but as always you, my dears, are welcome to use it for whatever purposes you like. it’s a small, blocky font with tiny cut-outs." 86 | 87 | */ 88 | 89 | @font-face { 90 | font-family: 'Mars Needs Cunnilingus'; 91 | src: url('fonts/mars_needs_cunnilingus-webfont.eot'); 92 | src: url('fonts/mars_needs_cunnilingus-webfont.eot?#iefix') format('embedded-opentype'), 93 | url('fonts/mars_needs_cunnilingus-webfont.woff2') format('woff2'), 94 | url('fonts/mars_needs_cunnilingus-webfont.woff') format('woff'), 95 | url('fonts/mars_needs_cunnilingus-webfont.ttf') format('truetype'), 96 | url('fonts/mars_needs_cunnilingus-webfont.svg#mars_needs_cunnilingusregular') format('svg'); 97 | font-weight: normal; 98 | font-style: normal; 99 | } 100 | -------------------------------------------------------------------------------- /undyne-getting-faster/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NGAAAAAHHHHHHH!!! 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 |
15 | speed: 100% 16 | 17 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /undyne-getting-faster/undyne.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joezeng/ytmnd/125c68352fafa0fa1b16a644068111c97625be28/undyne-getting-faster/undyne.png --------------------------------------------------------------------------------