From 4ab3041fd08f92f688938b96781408563dd6bb1f Mon Sep 17 00:00:00 2001 From: thepaperpilot Date: Tue, 29 Oct 2019 22:56:34 -0500 Subject: [PATCH] Added new header and part of the homepage --- .jekyll-metadata | Bin 36797 -> 0 bytes _layouts/default.html | 25 ++++++++-- _posts/2017-03-30-babble.md | 2 +- assets/home/arrowLeft.png | Bin 0 -> 15286 bytes assets/home/arrowRight.png | Bin 0 -> 15282 bytes assets/home/arrowUp.png | Bin 0 -> 15229 bytes assets/home/deviceTilt.png | Bin 0 -> 15166 bytes css/main.css | 85 ++++++++++++++++++++++++++++----- index.html | 19 ++++++-- js/home.js | 92 ++++++++++++++++++++++++++++++++++++ 10 files changed, 202 insertions(+), 21 deletions(-) delete mode 100644 .jekyll-metadata create mode 100644 assets/home/arrowLeft.png create mode 100644 assets/home/arrowRight.png create mode 100644 assets/home/arrowUp.png create mode 100644 assets/home/deviceTilt.png create mode 100644 js/home.js diff --git a/.jekyll-metadata b/.jekyll-metadata deleted file mode 100644 index 5ae21f975b5608427869085a84cc99bfd766758f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36797 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
+ {% if page.title != "The Paper Pilot" %} -
The Paper Pilot
+

{{ page.title }}

{% endif %} -

{{ page.title }}

+
+ {% for section in page.sections %} +
{{ section }}
+ {% endfor %} +
{% if page.links %} @@ -59,6 +70,7 @@ {% if page.nocard %} {{ page.content }} {% else %} +
{% if page.embed %} @@ -73,6 +85,7 @@ {% endif %}
+
{% endif %} {% endif %} {% endfor %} @@ -80,9 +93,11 @@ {% elsif page.nocard %} {{ content }} {% else %} -
-
- {{ content }} +
+
+
+ {{ content }} +
{% endif %} diff --git a/_posts/2017-03-30-babble.md b/_posts/2017-03-30-babble.md index 60f73fef..12674729 100755 --- a/_posts/2017-03-30-babble.md +++ b/_posts/2017-03-30-babble.md @@ -7,4 +7,4 @@ cards: [Babble Buds Preview, Babble Buds, Babble Buds Screenshot, Engine, Movie links: ["Source Code|https://github.com/thepaperpilot/Babble-Buds", "URealms Post|https://forums.urealms.com/discussion/272/babble/p1", "Babble Buds Download Page|https://github.com/thepaperpilot/Babble-Buds/releases", "Babble Movie Maker Download Page|https://github.com/thepaperpilot/BabbleMovieMaker/releases"] tags: [javascript, pixi.js] --- -A free, open source virtual puppet show engine for pixi.js and unity, as well as an accompanying electron-based software suite. Use it for enhancing your digital tabletop roleplaying game, creating silly videos, or even cutscenes in a videogame! +A free, open source virtual puppet show engine I made for web and unity, as well as an accompanying electron-based puppet editor and multiplayer stage. Use it for enhancing your digital tabletop roleplaying game, creating silly videos, or even scripting cutscenes in a videogame! diff --git a/assets/home/arrowLeft.png b/assets/home/arrowLeft.png new file mode 100644 index 0000000000000000000000000000000000000000..5d5bf2e8c02921806ea52c04969452f1b648812f GIT binary patch literal 15286 zcmeI3ZEO@p7{`aBLR(%eng~&Y%hf7I@Al>H+TMCSdM~Z5;Yuy7v|s|;-D$gWcYE$` z+be;jt(a&66tE%?j0E8eAM}gSL}D-~Bt|j31QSe9qmA(`fk?m@&^mjs)9W3Bi63W^ z>ph+MKmXbJ%`9pYnO=Z{mkHI?-1}qNT?GV8Q*? zXAU@cXc++BeQIa7*&SIe%391RDOxXdCSwVt2Eex}nULho&}4dHzZ!3_Up;Zs&ZtU* zeVr%5MG_%6ptfw$;o2>2o${8=vRARM@>lwjA~J|UQ(}^_XxtE!4fd3;h+?amwKFM+ zxw*j}um)thBkfE`(;?$=dK@w*@JyZ8$$Q*ho_~rFINrtb94mMoJTJQIM81~ETy}pY zihR1#Cw7FJGsB_(8ten6nGjiaczD=3>~d;)Kg)Z)UX~MBL2w|2!x)L1QqmDOs?#P} zpD;9JT}_y(7H2G9saG2`8|-##pxl+2S1gemC~jofA&P8LO0c|>V@o7OB6m)U#foMc zW(UmAtmuG7=STvw9njDQbr~Xgb+KD8%%&kUr3|9GFlritakHqEBIkS(gL*UtT9H{8 zg)x+3APRiZxg-WOQ!@s%5&(1EB{7<6UkMggPsucxR7<2;J?XSmO{JIGhYDE?=}Zq<9?Fk zMUKNv(#islh^DB0BeOgNk*gP7F5ClC7J8sPs7R)CS1!1ArcWdyw#E%pip#Jy>_>BV zs;VLiZnRxFS#by+!R-+0+=|1Cnj9XkPvCp&-LOt_rzSZweU^1tlLxID%2+GN+Fc(C z)VjlUwL++w=bPO1!FpF9xgU4w`F$*|z*mr8BI7(t;vudUxeJE4}m>!viorW4jk@)wESgRocYR`pjWThk<^yBM663 z+Hht@X=iyriuXgs&t{=z8wyi=thH)Ub>^a_TW79iw*F?Xy-$(FK248FreBRo{g6$> z`+aP_F+Zj+_X{9~w5X<|!wmXeKDJmhmSvs&R%s(jQmP(!A3Lk9P~UBB{ODjxUng+r zLQfm$%B14mg{eJvPQ|+mQ}dZ!anTdMJbbT93!&@v()?g&FN? z5=OhjDmqIIYlonzWs(Yeie~nd%*1*!ndxG{9-vaSl5RzhXXwe0%{>~TR9+>Q={(;&ta7ZDLIptx`v#F*kDBEkg}7fyp1Q(QzuxPaoqX%J(Ii--spP+T|- zVoY%n5#a)g3#UPhDJ~)+TtIQ*G>9?9MMQ)PC@!1^F{ZePh;RYLh0`F$6c-T@E}*z@ z8pN35A|k>C6cL`1lN z;=*YV<2&N2%)e|2B^#z^|JC z5cdPHRNK4pbTa^R4z`8^oyl*0zj8Kqs=ex!^Zc^`bGI4%nW;G!6cdlDV`gyvSM%VW z$o9mcTl=rKKJd_I6BEtz7EY)=`#Rd5J^@}G1xu+s)hM z%*DoybH&a}x4#&?*>yt=3f%GIZI3-V|HoV21G^tyIDc?iL*x41qvP+NZYfiD?wNOC zd38lub5;2crfOM$;l>*`m5qH;Zo6!gFDEzL*!tzZw{H&Z-?8n=h`(>Xe5tK^b<2nH znMvP@#ouGhhEgw|nUce!Ucd#QwW%%qZgA81zwf}O&j0`b literal 0 HcmV?d00001 diff --git a/assets/home/arrowRight.png b/assets/home/arrowRight.png new file mode 100644 index 0000000000000000000000000000000000000000..f0c041b32bd5d6c9de51c175fbf2f976a57c9c70 GIT binary patch literal 15282 zcmeI3ZEO@p7{{kYuq{-ekkAl`>xl}1>+ar5+uK~PEq5(f! zw%6iItp-F;!62X^#()t+hzSut2nouIiU=kcMMdKWz#xS9Mj~QjaQ0s3u6GP3e4I<} z?zx%&^PipHJTtdnc0*h1((o`04kktq|Wl&p^q$#BG*|~ zIs;rF>V^G^e^i5=qpe-i=z!#sE%lx#VA66M;Kx_ZXzWfrVdBCP*dKjG#|6pa<2o168w?vvt{c!Oja#$0Cjw zI1V#OD04gls;mS@CV1Ecu2!(yaSu$H>w)&5EE?i%x!~GtpFlupiRgwHkzk9@gXUhP zD6$ajb@ukU?6ubFUc19;;~aLYi%0t{=n`d~uXP0Zpglgx?DPrNK2;htYba?gBWp*k zx3Svcvsc@^%{<@as9jQPZ}d7H_9fnG-sP-L*P z+BWI)AXx+PeJ3arr<%MTuJH9tNX=XiGIuAs<$^QiNzPbm#yO24Gu51uM(CGo3Odon z5XQ<}!T*Cfj|FxS$PEqSS9G*>MzHbCd7I~ICwwBiHPsPPZgXMM%Y#lcL6poB+oOwU zaoueEgiEz$E-H~>4wMk&S<~Aq-wEl3#~AL1k*w{WvsDvTaaCaxT@4z;q6QoL(2gJ+ zLJ7m{jKa=RzZmI*vWHDUOEu)CxLI@6LQ3|cC0euBGF5*Q*WN8lLQvJhqTx}(VjpCq zkv=z@Y0Ql2PX7Z4UNxj@=rDsGbZ+Ep#uYQr zdZD`w^h&1U-MOi&Zk>vE=cZ;dS40%UV@r;f(~M=Ae^3b+o#>_vda9jHyVK3)Hs@xv zDKQx8_9^Hr)y*A(rj|^~?a78}kka znJL|2W897og3}C6cL`1lN;=*YVV~UH22p3RXI1OS&z z0KyIc=BTee{z)?cMcZ0@ja{*GSARUxeza}&x-%Qg+sB72Lp`MjdhXs|vD&}Tm{GIu z(UO<%zjo>HwbSzU@|_>fXQ$UL{-WdL<K|#k%78(Ix^|2l1cu` zDVw=zj9A%llpA|q1f|Eir^@TLOtu|4QGDawz1R01{P^!@cK`c}eeSWQx@mdjpkf^_ z`0xGn1hb`b_xSPNO(hjCotZ5EI*vZBppT1ZpFS1g_Ksd%f8gXJ^IjMOGiNZx#U`)p i`06edE#J+XlfcQrCkJ*!XKp}0K}%Ds@4Y2GOevsMNkK*39w8|yce{Hp?$+x;d)Lwu58G0q3{AOxEx)qaFPkMa{e2 z_*79Z9av0J?&sy+KD{q+KQF2giy*0kz>>(*>w5%NfRwg z&8Cfx02_$w3kpVbLv_R(WeZ2_70mfG*I9NLbPMM6)U7%fr}cW=wQS zq7OHlT8shdzCai4Q)7U3SR7`NwQ}@Iw}o@q-5j@qwz8a!;aJA%Hggp#F!k_WmTaKUtv%k(VI;sW1!rXnO7v58%WVI>>x!ZAw(I@!ZH<-0)gwNMIvQ0 zHN6MqXI6GVt#>pEm>!_1BQX&``O?aJOg?eo!%8)ZdO@O{Ox_6i1s!-{P1|8Ln^|kGmE&z3@31$q z9M7_dNm^Ot5l|&LI9lRiNE|~{KNiqwZ4Y);zAPkDZ)FcbjORW8>IAYXL##(~bc9-Aj zvbOk~R$n{Ewb@;*E?bMwVYjvVoSfU?%-SNUrM4g@Zvj$!OpTtRwST(&KLQ|Sz2ptPXOn$E0zOVTTk5f1^SV7nJ>)wESgRoO&SgL+(uftDe- zBQS?h+OROAva=Wxlp!E_nJlzyLvf0SF;*=s7cN@5wQw!7^;f#~9!cbbYAhn?UO6HR z0Vb*pd6;}-eoRm97l8MvVKoL1GvKv(m~zcXmT~qQr41R>+@oP(8Ra(S z4G!{Cy1~Y%9T^0rfsF|+EFx4uaG^A?F~NmJgbD~Qlm<2?xUh&&0l|gRz{Ug@77;2S zxKJ9{nBc-9LIngDN&_1cTv$Y?fZ#%DU}J&{iwG4ETqq4}OmJZlp#p*nrGbqJE-WHc zKyaZnura}fMT80nE|dl~Cb+POPyxY((!j<97ZwpJAh=K(*qGqLB0>cO7fJ&g6I@tC zsDR)?X<%c53yTO95L_q?Y)o)r5upNt3#EaL2`(%mR6uZ{G_Wzjg++u42riTcHYT{R zh)@B+h0?&r*Tq$vf7uc!@D0m2e3kNj#d8I|hDnPZJpqauTSigacT&{VYw&xDqDEMX zx;Q{l{EHN|NF9G@vYn!;gie1;Z{qBw^KS)ZVqL`&&AB0U(o_~1fW_@D$9lN;dWgoF;lM>xNynp^==;`s(i_P8ECCR(j)}IRP9&cmMzA82B zsc-C`pY*J)KhyZkcpLZGK}py%-q^n+xn%9YSFLmRY--%mJ#QKN@N2W%&HGOs+I`#N zqg~a>dZZJa{O!$Wr=B=;>B|ilQ#ba=H}1sw&-c=w4D9=PFU|b9=+S$fwtJ36w*KTFx*f2(!ivHt+nDVw+e literal 0 HcmV?d00001 diff --git a/assets/home/deviceTilt.png b/assets/home/deviceTilt.png new file mode 100644 index 0000000000000000000000000000000000000000..d4cfd0e0a63da1220c56658bd78fdaf2b8bf0fc5 GIT binary patch literal 15166 zcmeI3OKclO7{@0eLNv4p!lPAHVC9O6Lhar4BaWAio74{ysSZ)%(zHTt*Slk96?=Et zUB^ziL~sBEr&bA7Td7hnNF0Dl2o);CLqZ&&Qrlxo5du-v78Fj1hoH=Q{TRP8LF#c< za{OiH|NUp@H{Xo+vae50JiDoXYd-*B)A(3?3Vkci=bpRKU*m`6H2T_Lj2*B5xc5Ql z(*sVN+5$jiMNQAxGpW6TtQUNeqGzD5TriLt0C9KOkmNaNGZ~muwPDZd`A` z&!{sXGn1NRV!8>LkT2wwIX};YBR)P9jPU#}#?SEqmgiW1#LM$SFf8zcO!e|a`%xsC zN>-SPC#%Du|AsxYwrvP3TPl@&rGQU2b1WZ;L|D$x`u$#{@LCI+EtS2RwcRzT`NW|m zo2p@}y2d!ZQbsS@!yb<_Q2naTt687GfrpY~4)jdOqrw z>tyZjnOKZ@a=)r6ddb=;vaRYy%`}W)T(V&l)pQV5vzL#gIZg-!gaG$6#|s>XnYhXp zkCd*c*@X@sAx;Pl;U1W>)dTH8MY5%Jx!~GnpHxa1*DPDoWH=s=qPhE2RS}eMkoQZ{ zkT;yoD&7nqjCeD$f5sA{bs>tH+?PH;o~U^2Xi z=M%w5AdnnQB$7#gEXhUuE<0q4rMBBbQ=NxO($ou;?QKY=1)W_p?5S;=`gu^Tfy%xU z)b^>m_Y+QZzn`|$#{D33(d|~c%`}`OIb*2}=NjF3W2!ABjTk*=s^~;1^*A` z4i?x=AU8D3m};S|vw)57%-cCvr{Rmut+kH4y3U2EFAqA+1W9&I?5HK7#TD7g30G@t z+?1Q)4CD$rtm*p7w=KQ<7^PXLwQTpMt?F7;RNYN1J!_XF6OQK4jvyRDu3>XVcV~H4 z(sEFVvNdS6hSn63byh8}HZPjn+Ps#v`fFc%QIUnLZWbgvsurXiWDPARvW>>Zm}31G zK#1vi-9(2Oj0QxuQ!|$3oc&H|BT7=G9(a*$YirfdI2%7-tmwmj4qfPJ16|cryt_5^ zz}l&JcWY`RbDyT#QGa!`mS!x=`GIm_OrwV~7#$3S0wIxYZEnq&RLd|w6Ian$YB@Uu zO|6>L+S4)fK-WyHr<&;&1NHz_sTH>sJ)WT_L$>~C*jz^Sjd_QI#+2@`F>Xf(!D$d< zii?N{7f@U{4Ps1j5fR}6iVLSfj43W6B3wXm;WUUb#YIGf3n(s}1~I0%h=_0j#f8%# z#uOJ35iX#(a2mvz;vyo#1r!%fgBVj>L`1lN;=*YVV~UH22p3RXI1OSar$LM zLJhrPSwgQ;Zusu4CG;95Bacm`09bqifTdRe`13aUz5zgy1K{Qn0EFWJY}St+{xS(b zk7qnSnl4}Y7UmSflUtt^2{$1l7c{ovnonOFb# zdH{{%VH)G$@tKV;9bP$k_Sed-?C!n1W&i34eq`eMmGjrOFkk)thJO93n#&)1;m|)L rKc!CJSM2F&WOs^p-0A_~_U*gCg~y<={QS%UA`8Y76Y+QV9C`UaQ*U$> literal 0 HcmV?d00001 diff --git a/css/main.css b/css/main.css index fa799085..2280e619 100755 --- a/css/main.css +++ b/css/main.css @@ -194,12 +194,82 @@ button.accordion:focus { .head { color: white; + background-color: #333c4a; + padding: 20px; + position: fixed; + top: 0; + left: 0; + right: 0; + z-index: 1; + display: flex; + justify-content: space-between; + align-items: center; +} + +.head > * { + flex-basis: 50%; +} + +.sections { + text-align: right; +} + +.sections div { + display: inline; + cursor: pointer; + font-size: large; + padding: 10px; + color: white; +} + +#intro { + width: 100%; + height: 100vh; + background-color: #333c4a; +} + +#current_chat { + display: none; + width: 50%; + position: absolute; + left: 50%; + top: 50%; + transform: translate(-50%, -50%); + color: white; + font-size: xx-large; + background: rgba(1, 1, 1, .2); + padding: 20px; + border-radius: 10px; +} + +#controls { + opacity: 0; + position: absolute; + left: 50%; + top: 25%; + transform: translate(-50%, -50%); + color: grey; + font-size: 250%; + background: rgba(1, 1, 1, .1); + padding: 20px; + border-radius: 10px; + text-align: center; + transition: opacity 1s ease; +} + +#controls .inline { + width: 2rem; } .page-title { - font-size: 4.2rem; - line-height: 110%; + font-size: xx-large; font-weight: 400; + text-align: center; +} + +.section { + margin-top: -150px; + padding-top: 150px; } .card .card-content .card-title { @@ -261,15 +331,6 @@ a { padding: 10px 10px 0 10px; } -.head { - background-color: #333c4a; - box-shadow: 0 2px 3px #222; - padding: 20px; - padding-bottom: 40px; - margin-bottom: -50px; - text-align: center; -} - table { margin: auto; } @@ -299,7 +360,7 @@ a.btn, a.btn-flat, input.btn, input.btn-flat { height: 100% !important; } -body > .collapsible, body > .collection, body > .card, body .slider, body > .container { +body > .collapsible, body > .collection, body .card, body .slider, body > .container { width: 90% !important; max-width:940px !important; margin:auto !important; diff --git a/index.html b/index.html index 1369c2dc..8124d279 100755 --- a/index.html +++ b/index.html @@ -2,17 +2,24 @@ layout: default title: The Paper Pilot nocard: true +sections: [intro, about, featured, favorites] featured: [Dice Armor, Babble Buds] --- +
+
Use , , , and to control me!
+
+
+ +
Hello! -

I'm Anthony Lawn, or "The Paper Pilot", and I develop free, open source programs and games in my spare time, using a variety of languages and engines. I'm currently working towards my B.S. in Computer Science, after which I plan to go on to earning a Masters degree in the same, with a focus on Data Science.

- Why are most of your projects free and open source? -

I really liked playing free online games growing up, but most of those sites have died- Armor games peaked in 2010! I do not believe mobile games have the same effect since, as a kid playing a game on a phone, you can't just think "This is fun I want to make one of these" unless you also have a computer. I believe there needs to be a new generation of sites with free online games (like itch.io!) to inspire the next generation of game developers and computer scientists. That's why I want to make free online games anyone can play, and see how they work. No credit cards or even admin privileges required. All free, and open source. Enjoy :)

+

I'm Anthony Lawn, or "The Paper Pilot", and I develop free, open source programs and games in my spare time, using a variety of languages and engines. I received my B.S. in Computer Science at the University of Texas at Dallas, and am still there as I pursue my M.S. in Computer Science, with a focus on Human Computer Interaction.

+
+ {% endfor %} +
+
{% assign projects = site.posts | where:"featured","true" %} {% for project in projects %} @@ -49,3 +58,7 @@ featured: [Dice Armor, Babble Buds]
{% endfor %}
+
+ + + diff --git a/js/home.js b/js/home.js new file mode 100644 index 00000000..6a8e9da0 --- /dev/null +++ b/js/home.js @@ -0,0 +1,92 @@ +let current_chat = document.getElementById("current_chat") +let controls = document.getElementById("controls") + +// Load the stage and characters and stuff +let stage = new babble.Stage("intro", { + "numCharacters": 3, + "puppetScale": 1.5 +}, { + "94370077":{"name":"brow_excited","location":"eyebrows/94370077.png"},"-1478408941":{"name":"brow_normal","location":"eyebrows/-1478408941.png"},"-1370165314":{"name":"brow_confused","location":"eyebrows/-1370165314.png"},"-894109551":{"name":"brow_sad","location":"eyebrows/-894109551.png"},"-1624236206":{"name":"brow_angry","location":"eyebrows/-1624236206.png"},"-679379193":{"name":"eyes_normal","location":"eyes/-679379193.png"},"256135152":{"name":"mouth_teeth","location":"mouths/256135152.png"},"1802568030":{"name":"mouth_ooo","location":"mouths/1802568030.png"},"-1156489428":{"name":"mouth_normal","location":"mouths/-1156489428.png"},"-2006318913":{"name":"mouth_open","location":"mouths/-2006318913.png"},"-1834200705":{"name":"mouth_sad","location":"mouths/-1834200705.png"},"1879914476":{"name":"body","location":"shirts/1879914476.png"},"-925878550":{"name":"head","location":"skin/-925878550.png"},"-1259854622":{"name":"glasses_normal","location":"glasses/-1259854622.png"},"208380174":{"name":"kobold","location":"hats/208380174.png"},"354769791":{"name":"seachef","location":"hats/354769791.png"},"478565665":{"name":"tophat","location":"hats/478565665.png"},"-479894397":{"name":"elf","location":"hats/-479894397.png"},"-1611255066":{"name":"petalwalker","location":"hats/-1611255066.png"},"-5576877":{"name":"porc","location":"hats/-5576877.png"},"-1485571036":{"name":"wizard","location":"hats/-1485571036.png"} +}, "assets/blackhat-assets/assets", loaded); +let gravy = {"deadbonesStyle":false,"body":[{"tab":"shirts","id":"1879914476","x":1.5,"y":-54,"rotation":0,"scaleX":1,"scaleY":1}],"head":[{"tab":"skin","id":"-925878550","x":1,"y":-210.5,"rotation":0,"scaleX":1,"scaleY":1},{"tab":"hats","id":"478565665","x":-6,"y":-305,"rotation":0,"scaleX":1,"scaleY":1}],"hat":[],"mouths":["2","3","4","5"],"eyes":["0","1","5","6"],"emotes":[{"name":"default","enabled":true,"mouth":[{"tab":"mouths","id":"-1156489428","x":-15.5,"y":-125,"rotation":0,"scaleX":1,"scaleY":1}],"eyes":[{"tab":"eyes","id":"-679379193","x":-7,"y":-187.5,"rotation":0,"scaleX":1,"scaleY":1},{"tab":"eyebrows","id":"-1478408941","x":-6.5,"y":-210,"rotation":0,"scaleX":1,"scaleY":1}]},{"name":"happy","enabled":true,"mouth":[{"tab":"mouths","id":"-1156489428","x":-16,"y":-125.5,"rotation":0,"scaleX":1,"scaleY":1}],"eyes":[{"tab":"eyes","id":"-679379193","x":-7,"y":-187.5,"rotation":0,"scaleX":1,"scaleY":1},{"tab":"eyebrows","id":"94370077","x":-10.5,"y":-225,"rotation":0,"scaleX":1,"scaleY":1}]},{"name":"confused","enabled":true,"mouth":[{"tab":"mouths","id":"256135152","x":-6,"y":-126.5,"rotation":0,"scaleX":1,"scaleY":1}],"eyes":[{"tab":"eyes","id":"-679379193","x":-7,"y":-187.5,"rotation":0,"scaleX":1,"scaleY":1},{"tab":"eyebrows","id":"-1370165314","x":-9,"y":-212.5,"rotation":0,"scaleX":1,"scaleY":1}]},{"name":"gasp","enabled":true,"mouth":[{"tab":"mouths","id":"-2006318913","x":-5.5,"y":-123.5,"rotation":0,"scaleX":1,"scaleY":1}],"eyes":[{"tab":"eyebrows","id":"94370077","x":-10.5,"y":-225,"rotation":0,"scaleX":1,"scaleY":1},{"tab":"eyes","id":"-679379193","x":-7,"y":-187.5,"rotation":0,"scaleX":1,"scaleY":1}]},{"name":"ooo","enabled":true,"mouth":[{"tab":"mouths","id":"1802568030","x":-2,"y":-122.5,"rotation":0,"scaleX":1,"scaleY":1}],"eyes":[{"tab":"eyebrows","id":"94370077","x":-9.5,"y":-220,"rotation":0,"scaleX":1,"scaleY":1},{"tab":"eyes","id":"-679379193","x":-7,"y":-187.5,"rotation":0,"scaleX":1,"scaleY":1}]},{"name":"sad","enabled":true,"mouth":[{"tab":"mouths","id":"-1834200705","x":-14.5,"y":-125.5,"rotation":0,"scaleX":1,"scaleY":1}],"eyes":[{"tab":"eyes","id":"-679379193","x":-7,"y":-187.75,"rotation":0,"scaleX":1,"scaleY":1},{"tab":"eyebrows","id":"-894109551","x":-7.5,"y":-211.5,"rotation":0,"scaleX":1,"scaleY":1}]},{"name":"angry","enabled":true,"mouth":[{"tab":"mouths","id":"256135152","x":-12,"y":-128.5,"rotation":0,"scaleX":1,"scaleY":1}],"eyes":[{"tab":"eyes","id":"-679379193","x":-7,"y":-187.5,"rotation":0,"scaleX":1,"scaleY":1},{"tab":"eyebrows","id":"-1624236206","x":-7,"y":-207,"rotation":0,"scaleX":1,"scaleY":1}]},{"name":"wink","enabled":false,"mouth":[],"eyes":[]},{"name":"kiss","enabled":false,"mouth":[],"eyes":[]}],"props":[{"tab":"glasses","id":"-1259854622","x":-3,"y":-158,"rotation":0,"scaleX":1,"scaleY":1}],"name":"Gravy","id":1,"position":0,"facingLeft":false,"emote":"0"} +let start = "delay 100;\n" + +"add gravy 1 0;\n" + +"move 1 2;\n" + +"chat 1 0;" + +let stageElement = document.getElementById("intro") + +function loaded() { + stage.resize(null, stage.innerWidth, stage.innerHeight) + window.onresize = () => { + stage.resize(null, stage.innerWidth, stage.innerHeight) + } + startCutscene() +} + +function startCutscene() { + let cut = new babble.Cutscene(stage, start, {"gravy": gravy}) + let add = cut.actions.add.bind(cut) + cut.actions.add = function(callback, name, id, position) { + add(callback, name, id, position) + this.stage.resize() + } + + cut.actions.chat = function(callback, target, chatId) { + let chats = [{ + message: "I'm Anthony, or The Paper Pilot, and I make fun games and tools using Javascript and Unity!" + }] + current_chat.style.display = 'block' + this.stage.getPuppet(target).setBabbling(true) + chatter(callback, target, chats[chatId], this.stage, 0) + } + cut.start() +} + +function chatter(callback, target, chat, stage, textPos) { + if (textPos++ > chat.message.length) { + stage.getPuppet(target).setBabbling(false) + } else { + current_chat.innerText = chat.message.substring(0, textPos) + "_" + setTimeout(() => {chatter(callback, target, chat, stage, textPos)}, 20) + } +} + +// Make player controllable +window.onkeydown = function(e) { + let key = e.keyCode ? e.keyCode : e.which + current_chat.style.display = 'none' + hideControls() + + if (key == 32) { + stage.getPuppet(1).setBabbling(true) + e.preventDefault() + } +} +window.onkeyup = function(e) { + let key = e.keyCode ? e.keyCode : e.which + + if (key > 48 && key < 58) + stage.getPuppet(1).changeEmote(key - 49) + else if (key == 37) stage.getPuppet(1).moveLeft() + else if (key == 38) stage.getPuppet(1).jiggle() + else if (key == 39) stage.getPuppet(1).moveRight() + else if (key == 32) { + stage.getPuppet(1).setBabbling(false) + e.preventDefault() + } +} + +function showControls() { + controls.style.opacity = 1 +} + +let timeout +function hideControls() { + controls.style.opacity = 0 + if (timeout) + clearTimeout(timeout) + timeout = setTimeout(showControls, 4000) +} + +hideControls()