2,]']±>Sï}WÿÍu§ðp8·d%qy)6o;]ÉA¦ösï÷ôôô”°ÂVl†3;85322233444556678899:;<<=>?CÈ€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€@€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€ € € € € € € € 3�0’(;4ÿÿðÿÿÿÿÿÿÿÿÿÿÿþÿððÿÿÿÿïÿïÿÿÿÿÿÿþîîîîþðÿÿÿÿÿïïîîîîÿÿÿÿÿÿþîîþîîþðÿÿÿÿÿÿïîîïîîÿÿÿÿÿîîîîîîþðÿÿÿïîîîïîîÿÿÿþîîîîîîÿÿÿïïîîîîîÿÿÿÿÿîîîíîîþðÿÿÿïîÿïîîîîîðÿþîíÝíþîíííîðïÞÝÝÝîîÞîîîÿîÝÝÝíîÝííîÿîîÞíÞÞÝÞîþîíîÝÝÝíðïïÞÞÝî!ðÿîíÝí"3àÞÝÝ 3ðÿîÝÝïîÞÝÝÿîîÝÝýðððððððÿïÞÝíÿÿÿÿÿÞÝÝððÿðððððððÞÝÝýÿÿÿÿÿÿÿÿÿîÝÝíððÿÿÿÿÿÿÿÿÿïÞÞÝÿÿðÿÿðÿÿÿî3Ý ðððïÿî ÓÝððîíÝ2Ý=ðððàãÞ.0ÓÝã =# 3Ý#ððð23"23#"ÿ3#"3#"ððððð ""2""âÿÿî""""ððÿÿàî""""ÿÿÿÿïí!""ððÿÿÿÿàî!"ÿÿÿÿÿïí"ðÿÿÿÿÿàî!ÿÿÿÿÿïíððÿÿÿÿÿððÞîÿÿÿÿÿÿÿÿÝíðÿÿÿÿÿÿðïÞîÿÿÿÿÿÿÿîííððÿÿÿðïîîîÿÿÿÿÿîîííþððÿîîîîþÿïîîîîþðïïîîîîÿÿîîîîîðÿÿïïîîÿÿÿþþðÿÿÿÀÌ ÐÜÀð ÀÀà Í ÐÌÐÌ àÌÐÌÜÀÌ ÀÀþ Àî àÀàÀÏ ÐÜÀÌ À ðÀðÀÐ ÀÀÀî ÀÀàìÍÌ ÍÜÐÌ ÐÌ ÀÐðàþÿþïàÿàÿÐàððððàððÜÀÜÌÌÌ ÀÌÌ ÌÌÌÌÌÌÌÎüÌÍÝ ÐÍÌ ÌÌÌÜÌÌÌÌîÌàÎ àÏì ÌÌÌÀÜîÌÎ ðÏì ÌÌÌÍìÌíÞÎ àÀìÌîîÌÌÌíÌÌÌ Î ÀìÌÌÌÌÌÌìÌÝÝ À ÀìÌÝÝÌÌÎÌÌîÀ ÀìÌÿÌÌïÌÌ À ÀüÌÿÌÌàÍ Ì Î À ÌïÌÌÍüÌÍÜ ÐÍÌ ÀüÌïÌÌÎÌÌÌÌ ÀÌÌ À ÌÌþîîàîàîïþðààà ðïàààðàààððàð$Š*‰PNG  IHDRðˆ+ { ÃzTXtRaw profile type exifxÚmP[à ü÷=<Ži’™Þ Ç/ìĦ›‘×êHûûu¤‡3'.‹ÔV+(¸qî�€£Ÿ6ŸöÄ”æS=Éx„Z"õä©Ô¸?êù+à®kT®BÏ Ö™húò#„îÈ:²x ¡B„Näè>Ô&Ëu„u‡â'™a™Û¾å‹no+úBÜ)¨%bo€ìP¢n„Z Ñ‹™X㢟Uƨº�{H:¤YN‡j÷±„iCCPICC profilexœ}‘=HÃ@Å_S¥¥Tì â�¡:ÙE‹.µ E¨j…VL.ý‚&-IŠ‹£àZpðc±êà⬫ƒ« ~€¸º8)ºH‰ÿK -b<8îÇ»{�»w€Ðª2ÍìKšn™TRÌåWÅÀ+B"Œ8fefÖç$) Ïñu_ïb<ËûÜŸc@-˜ ð‰Ä V7,â âéM«ÎyŸ8ÂʲJ|N 94r10PLTE $),028?S�÷mG¢¦bKGDˆH pHYs  šœtIMEç  7¡æ ýIDATxÚ¥[ÝoÛXv¿”åÉ¢_i;I �(Ù (`‹tl�±(Û˜E‹²›‡"qLR» ;N,r³@±Ç"Åy)ÚíFæ¼ &š. lÑî ¬ÙbQ @±Éþô©ènßúPìì_ÐIÏ9—’%{œÍuSòÇáß9÷�±x ’ÈN®[,¯®®8žçá§m[–ešzÓÄÿ,Ó²|ËÆïáò½¡ßrº¾g;®mjªZ×ëšZ•dX"¬D†(–ÒëÊR|‘+2¦®[¶ç¹žz®m»v»mšøiÚ\ k§’Â!¹.ü¸ö\×sÛfCÓt£¡5´¥V«–`%x!½‰É…AÔ×m›þºí8@"r�ëxg.¿e[¦®Õ›ðY×4¹ª)²œ“â?_(ˆb�_Jõ“;>¹Ûðppÿ¸»;,&ôF^ÃO†n6 ÀꦡãjT´š² —2`‚À¯µÁÅz‹#sžZwÉ.4D¬ëM½ij€,\Œ‹ëu}ÄÈV´¾RFxÊû`¹¡bCGÓ�ÕF� b-s)3µéëf�s"< Uláy¸ØÆl=CŒhc úzaTðªåžq/Lß{!˜šDœÝlã‘®(Õj5 VÍwº!�ÊÍË«žãzÎÙÚÿß+›¼]Á¶ŒJ¹¬¤ˆ£ži,�ü`5äVz:àpè"L¯]zEÎ`»øÕÞQ”šRMM:ДÉq{½Óøtø•3pkÀœùqaŒä ?:ê÷#ˆÒAàuÇößzÖNÀ&¹1hY*/Œƒ|#ê÷_R¤îáv÷ΦÞy˜· V Žw„\Y™­%ÿèèsä²'@}n‚y`¸µ#†ì¤,�@nø¸|| A,û°7¾~“åÚÓ0Sĺ”Ñȵá|*úA” ²ÓPôõÓJØ?·TÏk7!#â˜VâùˆK¶ã#`@Œi‰'§ò��ì°ž­óáÕáaËÄì$Ä€eõ„’óŽå‚Š pÀ »ëyà.+Î.Ÿ:»sÍf“b5êïe‡o¸ŽƒMã¢Ü”u˜°� IÆ>Fªaü| (Z�^nƒ‚oÍêDêFƒ%Ô2wB¿s-tˆ#øï2°ŸöSú�WÝdsxÜÖÎJ{¶¼N×ìªk‹jIf½qº�Äè낺#4Æ- ^œtÅ1rȱÃ>ôæ0‹Öa�߫ޙ¯SËÙéÜc9Ç�_ÔÍe½¡7ЦŘyT²Úܪk:"¸ˆ8ÊX²‘nL4}*�8÷à†³[_B[q<ÇÝRÑ‚6Û·¦u½¢ëu�!ûH¢e*ønôäBîs%'i5DÍdxƒo¢ )ñ!v]j™Õ°Sî9›Ù½7¡o+:êXäW‰S¯ø¤â(B-cä‚HM�ñû!X1à倎»ÝÞ�¿µ¾(Šy›·À/¹àF¹z¥©kT¦ ÆêÄ¥>Ýy„ÖŒ�9© P‰py@a„UR/FÌ©öP å¹»ôséF^t ó6+«ºNˆG’ð7ŽúO-€í@:˵‹m ˜AL¾º#OFí-@”ŸfKl6V¥°i6·§Xêx _Ú#ªý¸õÔñ«‡þË›”HõD¯—v²â1½ð£YD*JKáv"Aj›m‘Í6¸U`þóîªñþ÷ Ñ-btÕ ›„�\ÔnìÏþie£½ZÙds8*éM ’^]#Ä ¿ΙMˆV=ŒI ÔÚ ã†íj/êq¼À¤@Û=ˆÖ^x� Ñ¡{Û�G˜…n.±Š†�!Ä,'³ÜÃRi?®â±íúÔZ-æœØoIÁ¸à¢;ž‹¹ÆÆí‘ò Þ¼Çf4EQ‡Ù¥ãúÙæ·^,Z{ŽV òÎû…Âu‡Ú±äÏ´¢Þ⺋£¤fѼÅrZ­ªPŸ+Ùè÷ÙŸá8ö;êâªÓ=È»žÛ„h°šU½¨ÝLX>_£ÄÖ­q,®‰¸•r™•ÒP�k}6Wé¿zyüÀ{¸ �ºÛk×3=ï>†µ+OíµŒHGI 9T<¦�‚ÎÒ¸ö¨ð%Ue³S,xâ1Üyÿs°é me&úÝ®{óoa”™ôn;YEp'‡lÝõ"y’«��[cØcnž7Õqš†¯yvëqÿåË—Ç᛺µ.v,¼Ð²Ý'‚÷pž]EìY›!=Á =Љsñýqýà‹K\°Œý-Ú‚â„Áÿ¸¾f9P,9}½Fgzû} ö®øõÁ~U:๺‹Ø¸7²»5?Fðœ+ˌڶRIQV@ÐÇG¯^ý¬ÉS­Gÿ; {×v 7Ю‡šwèË@B1W†½Œ‘q»ß‘g3Ó*gØs´ÿRUfxü"æ$¥¼‚Ç,@±VsMW|: ך^¸u›ÍÉÖÈùïQ3T~'i~ ´©šÚÓO~ñÅ¿[�´a¡V¦4m€|·[ƼÎÞßô¢g•+ ÷–˜½¿=•(bNÊÕÇxr=S» ۵ܛ±˜?žÙ�gMÔð¤M�Dµ¡)êŠe9®ï=·;ò�Åw#óÒp—1wóË?jÞð½’eã6O_>÷hì !%õv“λ@}Ÿ æçNâ”n¬W5ÝlC`ò>Z,ME£S¸üþôÞ½wkƒá¸‡´ë ˆˆþØ�ˆzÄ !Þ “ãïßn“¢ù™„0U×ñ ¿©ë–þˆå‹°ÿëóìÂ΄Ÿ�-Þ™-o¶†ÒB|òn7-ýcÇÆ¯û±”ߥ6á—CˆUÞ6–èø¾¡+Õe6Ï·¿˜˜âô>¾—wšu¨Oø8&pϿ֋ûñ=.7¤¯IÓðÏx+ø;,Íû’Òù 0{]ƒ¨]`Ù·{^øÞZÖ}&" ‹öûÁÕä„©K…Q/I‰I‚_ÿt`§Õ:�;±\Ó04½¶pêÉÓ21"/eT±Û¢:ŸCÕ|ƒ‡ç’Y{søÌV‡ÎðP'æ:‚ ÂÈÙ@ÇzE]`g¬<|:I£ {ÒAD¡:¸ÕŠ¢–Ÿúoš™÷›»ñ¯þÞë:ž*ku~~\Ö×*µQ¼¾‡Ž·™4¬B‚bïëÞ\mÆ)š˜i¬o×ÝIŒkD°¦5±PiÎÞœVNŠ•6=[,ª.9ݬ>�=@V}{ÃÿaîqÌ:áý -*Á¿l~³|AÐqJýXÕ·—Ô›ÃbU ¼3\�m˜LïôjVB¬Æ–½¥Ô·P±ØÏBÿ¦Ÿ8;I_‡ýU¬â8ÞbÀª—e2²kº²<¤â5Û§dã FºÜÕ‘3bbcA¡6²1?=­y:‘ö¬~ñë/þ3ë«,!¯®J4êÒ®ÜTŽè…#,Š ^g@òÌÆÐ™‘OÒè“Ɉ’5³“C6/Kг?ù�ìE~�AØX.Qà2—Ëb5ûÖ»�”ûýCøõ–OéS,Òí_NP)Ûc¿S?9Ÿ‚뇧ºÈœ®U±rZ4ŒZIÌ(ð·û¯^½B¾ù„º!KèN¹�á ÕK)åÒe„Š6�%åO�*øšÑ¨–˜XY1ræ:äXä!ñI“[È"ØÆ©Íœ«1ÏLC`Ýí1"ë4 ‘×YdµºiÔäT®ôÇØèy‰Í-¢Qá~ø^!¡WÎèáaFöz)âàø°7Êõ&ì6*[Ðj�3ëMS­f ã»}ìóô©óAGÏo`­S_]^mãd6NL;ðbÄQäŽF¤K¶�šÏIe@¬›F&X°¤QXÇÍÆÄ”Áq_ì�Žkæ(ÈCðëÏFwÚ²9ä‰j©ÄuMIÎÊ…Ë]¬jäó¤D/þÉÆªïoMãÁù�ÓNŒ‘te�¡#(8GfwË2­;ÔU+‰¬¬Õ@ÕÅxÞƒjþcÐV˜�‰ãǼÇÕÖ*kiójôP‚Ì:©¡lù†#:žlÃÚ†Í�BÄSÀd�ó-/K0˜qIx ÙTðLT§9Úº3¦UÑkž§>D#9Üñ_l"˜*I"ÃqÅ8·¨t{üØ%9[»¹ä3|�5Þ»DÑB¼2¦eÉô€ªKL^ñ,±XÞ(l´q¤Ë€¬\*�QI²•¹±©•Úz�ÇøjÿæUl”1Aßç[]ZC=CœYêÄH¨ „Vaà(ðb³Î6](ã@t ‚RB›’å’\-²qú!cñÉv sìîüœç½(²›í&2Úc3vÖ�Åa@γ{a�ûq€Ñ%zß�¿ûô¶Ö¤AMÐqcJY¦ \J¢8=gZ¶i;~pˆ®¿wÅvœÇî�ûBËß‚o7Œ8r‡Ò”ÙÞhA.C.ÝÅÓ)¨.0ÔÃ-ø ™ð6œé´@BCÕª%ü¨V-ÉÈr&ÜŽaÚH–{XƒìC¼p|çÖeØ´+޾¿Éëü=óúàVÛ-R1檀8uÿå+P1nA’“ 9¯máY„Õ6 WeP2SdI––›ÃvP{Ÿ@¼unÊywÑÛe:lb¦^_§�¹ ›¶ŸnµîyVÓ²âã ¢ÕxŠ�ˆ»ç³I’‡×m~Q¯k²,b/—«… ƒçfûÖZ¿ÿiË®7¶òögõEgžM-°‰û‹�-üÈHwyc£å�¥:6UMÕRÑ1U�Ǩö÷ÒXùÂvɦÛFø–ŒV-‹‚TV±�0!°4ÂãÆçîæfŠ‚(ZN{–û¾zG(¬Q/$‹]�Mº‰V'9?„z9íM@u½Ÿ5Ýçl€Kˆ5ˆ*ñظ¤VºIZØÞP¢{—ͬíØÃ›)³^6éøÑî€eé ßvÔ ä÷q\8õ vçŒ)´Ý­iØè6¬(Õät>WÑêuêšh)K,/a{y~‚ ˱�H1qµDh gu: ¶0Ü«-LJ1û¦‚rIàÄByÆlâX6Þ*J:€!¨š®›66\o|E›{Où—‚ð‹Ÿ2îlf½ž‡èÎué‘‚âƒç;× ~¡Õ 7$'™¹ èxeÃñ¾ë>xwcª\~trf‘ö`½èPM×�àOÎÓn÷Q³°‰¥Szjázþá|.Ÿ£‰³Í•k¸Ó)íÀA' ¢‡1/|‚ ´ËcZEBk®³‡/ . 6î°ëÔ( Ãl‚{œoÜØâ³Dš¾UÄ c ”1b,­ HP/?o/�63¸98slÆ‚·V)Žt;5v!kØc©€_÷–vs“sM£ÈrõY×±Š3ÄËàÍêm<‘)ÖO#‡¹U7ÍÄnÇÚms-K” {#2a:“IŸ€LÛ÷À—%ÃÙ]®¸q£š5›ò# Ó•é%¦n�>%¹šu*]«•Àß(‚w[.Tßôã‚"6Pìîuß›™`“MmºÙlêú0âr­Z`by=W`Úã™›è@±äöv3ÉQûÛ«^ÏiÞÙZbȇ½ø§V½`;�åµ10ò)úF­”R¼Š‚ü6'²3XµkÆ� ¸w¦æÒäøDØÞ\�2a¿F}NºúQ׿÷MŸ({á>\aÞ&V U”š8u¶`ðc7±ëÎvµ™Úýk[�~È霈™*¢CÉ(|¾áÂ3£iâ”M�Ñ–b£Ä‚Xø Á7 Ur‹j·•EOõã!ÏûUô…[ôãõQRTìçïFEê” “ž–бŠAb ^Öªr��N•¸âí59©·«âôªM|:éÆï2ÉÛn=ù€N#‘…D½âÝç úVÖѦuÈÆ¸ÔG(ƒ`¸ abÔž¬kƒí©ùc([µâ¬=<öƒ��`s/øþ÷ŽxõÕ‡0f_ ïL.-ò5–ËÅ’„v´ L%×g[�¯®zO¹b÷o*’æ™®g–Sû+øØçÕ±óï¢'l÷ÊßëK,1 ÛèÅH®iQW¤SÔ:+ ZuûÑZµ»3]’®Y¶ë <Å@ó|>r�££¿GÄ4MñÌ?úŒå-7¯‚�iNVDZTSt]»Y•J#¡rb–mÕ3-O¸Þ 1\·(,WfÛÖèÜÒÌçXóõ©Âæ ì¯YÉ ·—S!5ác!qõ)«u]«È%öUkÒYÙ¦£(¹Ë9aNóZ–=4KMý¯è(SÄ îÏ?›g9Ï])äTMUÔ4p‰¢ª?¨j%ñ+ÏxMÎò€UÌçÄ› ×2O f"äÏüã�PÅ/ûp…Ø_þ¢mèÞT(kH¹ 4s[ÑïätöÕë’ë¯}Ÿ3ƒ;ÍÖCûÄÈ 6t�Ž®`]Gt±y–›³�‹9dÒ²,—”1æ8÷äšöêñ¯ÏS8çäíUíX×='�èÂöfÿغ‹f�c„픟-`¯=ηj€¸J• $byZ)ŽLEŒ™±r(b/O4¬¼¬Î¬ÕVv7t9;‹ò}Të·AÅnOÚ�c¿úüóAý´ÒD‚©*1êv¼X.žc§¡¡�ÕÖS¥¯7Vî\š_ÍfØPÇǶþ‘JdRñËÇ¢mÅT‰pi\ÉP-J§‹g.á�E`]OÛóƒO… ‰|¦OE`{¼òAÿˆBèúüÑ„-pdŸv‚úxhèö+Ö6øðbûþà[å{l3ôÒCVjv!Øûçh¤‚Ï íÕñn+8ÿ¡)U¨\ðÜ Âôy%Ϭ¹{le8Æ, @Gžÿ€� HïG` %"q›ÆMêÌ×ëøX˜•LÁœW° Ý/ÍP0¡Tðé¾ä Õŧ£�õ£Ïð¤&âS$aÛY!Ó�ž–K(¹Ze’|î�géUˆ+{-'Ñ1>¿öØvá( }šÔÅHÖ?êÙöÃys_title.bd/2 then print("Press Start",101,121,15,false,1,true) print("Press Start",100,120,12,false,1,true) end if btn(4) and s_title.start==false then s_title.bd=8 s_title.start=true music() sfx(0,20,70) spawn_wave(118,40,2,10,4) end if s_title.start then s_title.tmr=s_title.tmr-1 if s_title.tmr==0 then p.x=16 p.y=60 change_scene(1) end else spr(72,112,32,-1,1,72,0,1,2) end --Game: 1 elseif s==1 then render_stars(-0.25,0) if btn(0) then p.y=p.y-1 end if btn(1) then p.y=p.y+1 end if btn(2) then p.x=p.x-1 end if btn(3) then p.x=p.x+1 end p.x=math.clamp(p.x,8,232) p.y=math.clamp(p.y,8,128) if btn(4) and p.sd==0 then spawn_bullet(p.x+8,p.y,0,math.random(p.pow/2,p.pow),276) spawn_wave(p.x+8,p.y,4,7,1) sfx(1,36,10) p.sd=10 end if p.sd>0 then p.sd=p.sd-1 end if t%60==0 then spawn_enemy(240,math.random(0,120)) end check_colission() check_player_colission() render_bullets() render_enemies() render_explosions() render_txt() spr(288+math.floor(t/6%4)*2,p.x-8,p.y-8,0,1,0,0,2,2) --Game Over: 2 elseif s==2 then print("Keith is rekt son!",0,0,12) end render_waves() t=t+1 end function change_scene(i) t=0 s=i s_title.start=false s_title.tmr=99 s_title.bd=64 end function check_overlap(obj1,obj2) if obj1.x>obj2.x and obj1.xobj2.y and obj1.y 0 then circb(e.x+8,e.y+8,8,e.ht+7) e.ht=e.ht-1 end spr(256+math.floor(t/6%2)*2,e.x,e.y,0,1,0,0,2,2) if e.free then enemies[i]=nil end end end function render_bullets() for i in pairs(bullets) do local b=bullets[i] b.ls=b.ls-1 b.x=b.x+b.xspd b.y=b.y+b.yspd if b.ls<1 or b.free then bullets[i]=nil end spr(b.sprt,b.x-4,b.y-4,0,1,0,0,1,1) end end function render_stars(x,y) for i in pairs(stars) do local s=stars[i] local color=12 local spd=s.speed s.x=s.x+x*spd s.y=s.y+y*spd if s.x<0 then s.x=241 end if s.y>135 then s.y=0 end if spd==1.5 then color=13 end if spd==1 then color=14 end if spd==0.5 then color=15 end pix(s.x,s.y,color) end end function render_waves() for i in pairs(waves) do local w=waves[i] w.ls=w.ls-1 w.size=w.size+w.speed if w.ls<1 then waves[i]=nil end if not w.f then circb(w.x,w.y,w.size,w.color) else circ(w.x,w.y,w.size,w.color) end end end function render_explosions() for i in pairs(explosions) do local ex=explosions[i] ex.f=ex.f+0.35 spr(320+2*math.floor(ex.f),ex.x-16,ex.y-16,0,2,0,0,2,2) if ex.f>5 then explosions[i]=nil end end end function render_txt() for i in pairs(txts) do local d=txts[i] if d.y>0 then d.y=d.y-0.5 end d.ls=d.ls-1 print(d.amt,d.x+1,d.y+1,0) print(d.amt,d.x,d.y,d.c) if d.ls<1 then txts[i]=nil end end end function math.clamp(n,low,high) return math.min(math.max(n,low),high) end