0,]']>S}Wup8d%qy)6o;]AsVl3=>???`bPp_p^p]p\p[`bp[p\p]p^p_P44`bPp^p]pZpXpUP4PF % B-0EBDeFiH bdEFhIbD hiBEhBiF ebBDhEFbfHDeFiH bdEFhIbD hiBEhBiF ebBEfEFdf()J+I+*H)(J*K)(H()J+I+*H)(J*(I*K()J+I+*(I(**K)H((I*+I+J(IJkI(I*KdbBDeFiH bdEFhIbD hiBEhBiF ebBDhEFddBDeFiH bdEFhIbD hiBEhBiF ebBEfEFd N N)(+ *)k)(+ *)k)(+ *)k)(+ *)k)(+ *)k)(+ *)k)(+ *)k(I+ (JkooooooooOoo?o/ooooooooooooOoo?o/oooohdfbdefiebibidibjeifHDeFiH bdEFhIbD hiBEhBiF ebBEfEFdfdhdfbdefiebibidibjeifHDeFiH bdEFhIbD hiBEhBiF ebBEfEFdoJ?*/ooooooOoo?o/ooooIhJ IKkJiK iKkKiH JikhkI Kjk)(+ *)k)(+ *)k)(+ *)k(I+ (Jk0h`moOfO?o/Om=OM0h`moOfO?o/Om=OM0h`0h`Ooeeue_??_?DBDeFiHbdBDeFoiH]bdOBD?eF/iHbdBDeFiBDeFiH}bdoBD_eFOiH=bd/BDeFiHaattttaattattaattttaattattata @ @   @      @   ____DD]]b b b bbb b b b b b b bb  b   *fqq š$ 8ő< @aDTeyTeyTe}TeTe},?̪̪̪̪̪̪̪̪̪̪̪̪̬̬̬̬̬̬̬̬̬̬̬̬̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪̪ﯪ̪̪̪̪̪̬̬̬ݭݭݭݭݭݭ̬̬̬̬̬̬̬̬̬̬̬̬̪̪̪zzzzzzzzz窪zzzzzzzzzzzwzzzzwzzzz窪wzzzwwzzwzzwzzzwwzzzwwzzzwwzzzzwwzzzzwwzzwzzzzwwwzzzzwwwzzz~wwwzzzzwwwwzzzwwwzwwzzzwwwwzzzwwwwzqqwwwwzzzwwwwzzzwwwwzwwzzzwzwwwwzzzzwwwwzqqzwwwwzzzwwwwzzzzwwwwzwwzzzwzwwwwwzzwzwwwwwr'"rwwwwwwzzwwwwwwzzwzwwwwwwwwzzwzwwwwwzzwzwwwwwr'"rwwwwwwzzwwzwwwwzzwzwzwwwwwwwzwzwzwzwwwwzwzwzwwww"w'"r"qw~wwwwwzzwwzwwwwzzwzwzwwwwwwwwwzwzwzwwwwwwzwzwwww"w'"ww"qw~wwwwwwwzwwzwwwwwwzwzwzwwwwjwjwjwjwwvwvwvwjwjwjwwwvwvwvwaw'bw'bw'"wwvwvwvwvwjwjwwwvwvwvwvwjwowwwvwvwvwvwjwjwjwjwjwwjwwvwvwvwjwjwjwwjwwvwvwvwaw'bw'bwwbwwvwvwvwvwjwjwjwwvwvwvwvwjwowjwwvwvwvwvwjwjwfwjwjwwjwwvwvwvwfwjwjwwjwwvwvwvwfw'bw'bwwbwwvwvwvwvwjwjwwjwwjvwvwvwvwjwjwwjwwjvwvwvwvwjwjwwfwjwjwwjwwjvwjvwvwfwjwjwwjwwjvwjvwvwfw'bw'bwwbwwovwavwvwvwjwjwwjwwjvwovwvwvwfwjwwjwwjvwvwvwvwfwjwwfwfwwjwwjwwjvwjvwvwfwfwwjwwjwwjvwjvwvw'fw'fwwbwwbwwnvwavwvwvwfwwjwwjwwjvwovwvwvwfwwjwwjwwjvwjvwvwvwfwwjwwfwfwwjwwjwwjvwgvwvwfwfwwjwwjwwjvwgvwvw'fw'fwwbwwbwwnvwgvwvwvwfwwjwwjwwjvwgvwvwvwfwwjwwjwwjvwjvwvwvwfwwjwwfwwfwwjwwjvwjvwgvwvwfwwfwwfwwjwwjvwgvwvwfwwfwwfwwowwovwgvwvwfwwfwwfwwjwwjvwgvwvwfwfwwfwwjwwjvwgvwvwfwfwwfwwfwwfwwfwwjvwgvwgvwfwfwwfwwfwwjvwgvwgvwfwfwwfwwfwwovwgvwgvwfwfwwfwwfwwjvwgvwgvwgfwfwwfwwfwwovwjvwgvwgvwfwwfwwfwwwfwwfwwfvwfvwgvwgvwgfwwfwwfwwfvwfvwgvwgvwgfwwfwwfwwfvwovwgvwgvwgfwwfwwfwwfvwjvwgvwgvwgfwwfwwfwwfvwovwgvwgvwgfwgfwwfwwfwwwvvwfvwvvwfvwgfwgfwggwwvvwfvwvvwfvwggwgfwggwwvvwfvwvvwfvwggwgfwggwwfwwfvwvvwfvwggwgfwggwwfwwfvwvvwfvwggwgfwggwgfwwfvwvvwwvvwfvwvvwvvwgfwgfwggwwvvwfvwvvwvvwgfwgfwggwwvvwfvwvvwvvwgfwgfwggwgfwwfvwvvwvvwgfwgfwggwgfwwfvwvvwvvwgfwgfwggwggwwfvwvvwggvwfvwvvwfvwgfwgfwggwggvwfvwvvwfvwgfwgfwggwggvwfvwvvwvvwgfwgfwggwggwwfvwvvwvvwwfwgfwggwggwwfvwvvwvvwwfwgfwggwgfwwfvwvvwggvwgvwvvwfvgwfwgfwggwggvwgvwvvwfvgwfwgfwggwggvwgvwvvwfvgwfwgfwggwggwwgvwvvwfvgwfwgfwggwggwwgvwvvwfvgwfwgfwggwgfwwgvwvvwggvwgvwvvwfvgwfwgfwgfwggvvgvwvvwfvgwfwgfwgfwggvvgvwvvwfvgwfwgfwgfwggwvgvwvvwfvgwfwgfwgfwggwvgvwvvwfvgwfwgfwgfwgfwvgvwvvwggvvfvwfvwfvgwfwgfwgfwggvvfvwgvwfvgwfwgfwgfwggvvfvwgvwfvgwfggfwgfwggwvfvwfvwfvgwfggfwgfwggwvfvwfvwfvgwfggfwgfwgfwvfvwfvwggvvfvwgvwfvggfgwfwwfwggvvfvwgvwfvggfggfwwfwggvvfvwgvwfvggfggfwwfwggwvfvwgvwfvggfggfwwfwggwvfvvgvwfvgwfggfwwfwgfwvfvvgvwgfvvfvvgvwgvwffgwfwwfwgfvvfvvgvwgvwffgwfwwfwgfvvfvvgvwgvwffgwfwwfwgfwvfvvgvwgvwffgwfwwfwggwvfvvgvwgvwffgwfvwfwgfwvfvvgvwgfvvgvvgvwgvwffgwfvwfwgfvggvvgvwgvwffgwfvwfwgfvggvvgvwgvwffgwfvwfwwfwggvvgvwgvwffgwfvwfwwfwggvvgfwgvwffgwfvwfwwfwggvvgvwwfvggvvgfwgfwvfgwfvwfwwfvggvvgfwgvwvfgwfvwfvwfvggvvgfwgvwvfwvfvwfvwfvggvvgfwgvwvfwvfvwfvwfvggvvgfwgvwvfwvfvwfvwfvggvvgvwwfvggvvgfwgfwvfwvfvwfvwfvggvvgfwgfwvfwvfvwfvwfvggvvgfwgfwvfwvfvwfvwfvggvvgfwgfwvfwvfvwfvwfvggvggfwgfwvfwvfgwfvwfvggvggvwwfvggvggfwgfwvfwvfgwfvwfvggvggfwgfwvfwvfgwfvwfvggvggfwgfwvfwvfgwfvwfvggvggfwgfwvfwvfgwfvwfvggvggfvgfwvfwvfgwfvwfvggvggfwwfvggvggfvgfwvfwvfgwfvwfvggvggfvgfwvfwvfgwffwfvggvggfvgfwvfwvfgwffwfvggvggfvgfwvfwvfgwffwfvggvggfvgfwvfwvfgwffwfvggvggfwvfvggvggfvgfwvfwvfgwffwfvggvggfvgfwvfwvfgwffwfvggvggfvgfvvfwvfgwffwfvggvggfvgfvvfwvfgwffwfvggvggfvgfvvfwvfgwffwfvggvggfwvfvggvggfvgfwvfwvfgwffwfvggvggfvgfwvfwvfgwffwfvggvggfvgfvvfwvfgwffwfvggvggfvgfvvfwvfgwffwfvggvggfvgfvvfwvfgwffwfvggvggfwvffggfggfvgfvgfvvfvvffwffggfggfvgfvgfvvfvvffwffggfggfvgfvgfvvfvvffwffggfggfvgfvgfvvfvvffwffggfggfggfvgfvvfvvffwffggfggfwvffwffggfggfvgfvvfvvffwffwffggfggfvgfvvfvvfvvffwffggfggfvgfvgfvvfvvffwffggfggfvgfvgfvvfvvffwffggfggfvgfvgfvvfvvffwffggfwvffwffwffggfvgfvgfvvfvvffwffwffggfvgfvgfvvfvvffwffwffggfggfvgfvvfvvffwffwffggfggfvgfvvfvvffwffwffggfggfvgfvvfvvffwffwffwvvfwfgwfggggvgvvgvvvvfvvfwfgwfggggvgvvgvvvvfvvfwfgwfggggfgvvgvvvvfvvfwfgwfggggfggvgvvvvfvvfwfgwfggggfggvgvvvvfvvfwfgwfgwgvfvvfvfgfggfggfggfvvfvvfvvfvvffggfggfggfvvfvvfvvfvvffggfggfggfvvfvvfvvfvvffggfggfggfvvfvvfvvfvvffggfggfggfgvfvvfvvfvvfvfvfvvfvvfvvffggfggfggfvvfvvfvvfvvffggfggfggfgvfvvfvvfvvffggfggfggfggfvvfvvfvvffggfggfggfggfvvfvvfvvffggfggfggfggfvvfvvfvfgfvvfvvfvvffggfggfggffgfvvfvvfvvffggfggfggffgfvvfvvfvvfffgfggfggffgfvvfvvfvvfffgfggfggffgfvvfvvfvvfffgfggfggffgfvvfvvfvfgffvffvffvfffgffgffgffgffvffvffvfffgffgffgffgffvffvffvfffgffgffgffgffvffvffvfffgffgffgffgffvffvffvfffgffgffgffgffvffvfffgffgffgffvffvffvfffgffgffgffgffvffvffvfffgffgffgffgffvffvffvfffgffgffgffgffvffvffvfffgffgffgffgffvffvffvfffgffgffgffgffffffgffgffgffvffvffvfffgffgffgffgffvffvffvffvfffgffgffgffvffvffvffvfffgffgffgffvffvffvffvfffgffgffgffvffvffvffvfffgffgffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff%-- title: Sharp Sheep Shark Field -- author: The Lawn Mowers International Association -- desc: ...and don't forget to come to Field-FX 2005! -- script: lua local sweetie16_pal = "1a1c2c5d275db13e53ef7d57ffcd75a7f07038b76425717929366f3b5dc941a6f673eff7f4f4f494b0c2566c86333c57" local shark_pal = "0500042b2b2156553b33803378801c86807aaaaa23d1e129acaa9bffe167bffb63cc8000dbd5d1f3ff79fefffeff9d37" local superbock_pal = "0100002f14074e1d04842300722a01d220006e472ebd3c0d9a4f10e7451cc86e09c6793dd6745fc7977fe7c5b0ffffff" local evilbot_pal = "000000a74c1cf31705dd71224b1b0026333b465361967240627486b29b4efb993d8d9eabf8c45ab1bec4fcf076e6f3f4" function tovram(str) local o=0 for c=1,#str,2 do local v=tonumber(str:sub(c,c+1),16) poke(0x3fc0+o,v) o=o+1 end end local shark_gfx = "8040fffffffffffffffffffffffffffffffffffffffffffffff0ffffff05ffffff08ffffff00fff00058ff05ced9f08e999908d999998d999999d99999999999999900000000eedddddd999999999999e9999999999999999999999999999999777000ffffffc000ffff9dd800ff9999900f9999920099602eec902ec9992ec99999fffffffffffffff0fff0000e0000eecceecc9999999999999999999799999999ffff00000000ccccecc99ddd99999999999920007777750c7e999100999999420fffffffc0000000ddee90dd9999999c2699999909999990199991029999025ef00000ff00e9920f9996990f9999990f11111000b282bc8020cc2c50e18c2880ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000007fffff000fffffff1fffffff0fffffff0ffffff02ffffff00ffffff0c7777721e77770ecc7770ec99770e999970d999990d9999e7c999997999999799c9999979999779999979999297990990799029109990990099909909999099079909999990c999990c999e99c9999999c9999777999777999777999977999999999999999999929999999991799999189999962c9999905899991851999618e09100288505cc5885b85ed1c81885e01cd188e021e80221208501200f010010f1e22e5081e1082110c011010f8021220f1158010f01000ffff0ffffff10f10f00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1c9fffff199ffff0c99fff0c999fff0c999ff0c9999ff199999f0c9999e99997999999979999997990999799990999999969999999999999990999999970990d7070996077960970799990779990777999990799999079999e9799999997999999999999999999999999999999999999999e999999999999999999999999a9120029961200099500101999999999999dddd9ddddddddddddddddddddddd1021c000e105880c22212112ddddddddddddddddddddddddddddddddddddddddc1120120828c08c021c82cc562111210ddddddd1ddddddd0ddddddd0ddddddd0fffffffffffffffffffffffffffffff0fffffff0fffffff0fffff004fff00919f0999999089999990997999949779999997799999777799997777999777777999999997799999799999979999997999999999999999999999999e999999999979999999999999999999099699999009999904999990d99999049999990d999999999999d9999d6ad9999d0ad999d0aad999e0aad99d0aada9d40aaaadc1aaaaaddddddddddddddddddddddddddddddaddddddadddddaaaddaaaaaaddaaaaaaeddddddddddddddddadddddddaddddddaddddddaddddddaddddddaddddddadddddaddddd00dddddd0fdddddd0fddddd00fddddd0ffdddd00ffdddd0fffddd00fffff099709fff17709ffff0707fffff007ffffff07ffffff07ffffff07ffffff077777777977777777777777777777777777777777777777777777777777777777999999777999977777797777777777777e777776777777707777777077777770099999990999999d099999d009999d030999e03a999d03aa99d03aaadd03aaaac13aaaaa13aaaaaa3aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaddaaaaaaadaaaaaaaaaaaaaaaaaaaaa2aaaaaa2aaaaa22aaaaa27aaaaaddddddddddddddddaddddddaaaaaaaaaaaaaaaaaaaaaaaa4aaaaaa40aaaaaa01dda0ffffda00ffffaa0fffffa000ffff0120ffff0110ffff1220ffff122b0fffffffff06fffffff0fffffff1fffffff0fffffff0fffffff0fffffffffff000007777777777777777777777777777777777777777677777770777777707777707777777607777770c7777770077777aaa7777aaaa6777aaaa077aaaaa07aaaaaae03aaaaa03aaaaaa3aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa2aaaa222aaa22aaaaaaaaaaa2aaaaaa27aaaa22aaaaa27aaaa22aaaaa2aaaaaaaaaaaaaaaaaaaaaaa2aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0aaaaaa00aaaa400faaaaa000aaaa00ffaaa00fffaa00ffff400fffff00ffffffffffffffffffffff22b90fff08950ffff0920fffff00fffffff0ffffffffffffffffffffffffffffff07d777f077d7770a77777700000007fffffff1fffffff0fffffff0ffffffff077777060677776070777777766777776777777a27777700077777aa0006777a07aaaaaa7aaaaaaa7aaaaaaa7aaaaaaaaaaaaaaaaaaaaaaa200000000fffffffaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaa4000000000ffffffffffaaaaaaaaaaaaaaaaaaaaaa40aaaaa000a40000ff000fffffffffffffffffffffaa4000ffa000ffff01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00a77affff077affff077affff00aafffff0a0fffff0a0ffff0d00ffff000f0fffffff0fffffff0fffffff0fffffff0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" local inercia_logo = "808000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070000077700077777077776707767676076767600566666006666670000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005555555550000000600000006000000066666666777777770000000000000000555555550000000000000000000000006666666077777760000000600000006055555000000005000000006000000060000000600000006000000060000000600005555500500000060000000600000006000000060000000600000006000000555555550000000000000000000000000666666606777776060000060600000655555500000000500000000600000006000000060000000600000006000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007000000760000076656667000c6650000c6500000560000000c0000006c70000065700000665000000000000000000000000000770000777700777777077777777767676776767670000000007700000076000000707000000070000000600000000000000070000000000000000000070000007700007777007777770777777077767670766666600000000076000000707000000060000700700777007777770706767670666666000000000000000000777777777777777777777777776665766600006670000000000000000000007700000077770000777770006555c70000006570000006c00000000000000000000000000000000000000000000000000000000000600000006666660600000060000000600000006000000060000000600000006000000066666600000000000000000000000000666666666777777760000000600000000000006000000060000000600000067066666700777770000000000000000000060000000600000006000000060000000600000006000000060000000600000006000006060000060600000606000006060000060600000606000006066666660000000600000006000000060000000600000006000000060000000600000006000000000000000000000000000000000005cccc006ccccc07cccccc0ccccccc00000666000066660000666600075656ccc55555ccc55555ccc55555cc5555556650000066600000666000075670007c556cccc5556cccc556cccc5556cccc55666666606666666066666607565656775555556c555556cc555556cc555556cc0707000070700000070700077777000cccccccc5ccccccc5cccccc55cccccc5566666607666666706666660756565606555555c555555c5555555c5555555c55076666667666666666666660565656005555556c555556cc555556cc555556cc67000000000000000000000000000000ccccccccccccccccccccccccccccccc5000007650000065c0000755500005555ccc55556cc555556c5555556555555650060000006600000066000007560000055500000555000005550000055500000600000006000000060000000600000006666666677777777000000000000000066666666000000000000000000000000666666667777777700000000000000006666666000000060000000600000006066666660777777700000000000000000060000000600000006000000076000000076666600077777000000000000000000000000000000000000000000000000666666667777777700000000000000000000000600000006000000060000006766666670777777000000000000000000c666666670000000700000007000000070000000700000007000000070000000665555550065656506666666066666670767676006767670077777700777777077666655000006560000066600000566000057670000c676000057770005777755557766565600076667000766600007676000077670000777000007770000006666665577770c65770705667070066607076767707056760700577770067777555577556565006566670066666000666770006676000066770000067700000655556555656506666666000666660000666660006666660066666667666666665555555556565656666666667666666600000000000000000000000066767000556667755666705666670066660007660000066600007667000067670007677755500000565000006660000066600000677000006770000077000000700000000000000033333333300000002000000020000000222222221111111100000000000000003333333300000000000000000000000022222222111111120000000200000000333330000000030000000020000000200000002000000020000000200000000003333333030000000200000002000000022222220111111100000000000000003333333300000000000000000000000022222222111111120000000200000000333333000000003000000002000000020000000200000002000000027000000070000000700000007000000070000000700000007000000070000000007777700077770000077700000070000000066600000000000000000000000000067777000677700077700000770000660000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000700577777005777006c77000076700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006666666607666666000767670000077700000007000000000000000000000000676777777677777067777707777770707707070700000000000000000000000007006777700577700057770000c77000657000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022222202000000200000002000000020000000200000002000000000000002222222200000000000000000000000002222222221111111200000000000002000000020000000200000002000000210222221001111100000000000000000000002222200200000020000000200000002000000020000000200000000000002222222200000000000000000000000000222222202111111020000000000000200000002000000020000000200000021222222101111110000000000700000007000000070007777766555550000000000000000000000000000000000000000000000007777777755555555000000000000000000000000000000000000000000000000777770005555550000000000000000000000000000000000cccccc00ccccccc0ccc7ccc0ccc0ccc0ccc0ccc0ccccccc0cccccc70777777000cccccc0ccccccc0ccc77770cccccc00ccc77700ccccccc07cccccc007777770ccccccccccccccccccc7ccc7ccc0ccc0ccc0ccc0ccc0ccc0ccc0ccc077707770cc000000ccc00000ccc00000ccc00000ccc00000ccc00000ccc00000777000000ccccc00ccccccc0ccc7ccc0ccc0ccc0ccc0ccc0ccccccc07ccccc70077777000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000200000002000000020000000200000002222222211111111000000002000000022222222000000000000000000000000222222221111111100000000000000002222222000000020000000200000002022222220111111100000000002000000020000000200000002000000020000000222222201111111000000000200000002222222000000000000000000000000222222221111111100000000000000002222222200000002000000020000000222222222111111110000000000000000000000000000007c0000777000777750077777006666650066666700000000000000000033332322001011110101011110101111000000110000000000000000000000000000000022000000112200001111200011113000001230000000000000000000000000000000000000000000000000220000222200222222000000000000000000000011001111111212121222222222222222222222221100000000000001111111111111111111121121112222222222222222000000000000000011100000111100001111000011111000222222002223cc000000020000000000000000000000000000000000000000000000000100000010000001010000000000022000002322000103222210032222000322220032222201322222000000000000000000000000000000002000000020000000200000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000066665000666660006666000056560000555ccccc555ccccc55cccccc55cccc2300000000000000000000000000000000ccccccccccccc33333333333333333330000c000000030000002300300333033333323333332c333332c333332cc33330222222223232323333333303333320033332ccc3332cccc332ccccc332ccccc22210000200000000000000000000000cccccccccccccccccccccccccccccccc00000000000000020000000000000002ccccccccccccccc2cccccc33ccccc23320202200020230002022100022220000222ccccc32cccccc232ccccc332ccccc00001110000111110011111101111111cccccccccccccccccccccccccccccccc10c2222201c2222210c3232300323232cc333333cc333333c3333332c3333332000000000000000000000000000000002cccc1002ccccc20ccccccc2cccccccc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005511123367012333600233cc700c100000030000000030000000020000000010333333313333200032000000000000000000000000101000010101111010111122223333000123230001222200002222000022220000122211000222111100223311222223000000220000002220000022210000222221002222222122222222222222220000000000000000000000000000000000000000000000003c32321022222333000133330002223300022222001222220022222200222222012222233c1122223c000000330010102301111130101111310101100010100000000000222222220000000011000000100000000000000000000000000000000000000323333331333333303323232032222200322222003222220032222200222222001222222200000000000000000000000000000000000000000000000000000000c000000010000000100000001000000010000000100000001000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012345670000000000000000000000000000000000000000000000000000000089abcdef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111110111111100011111000000010000000000000000000000000000000011101012110100011110100011010100000010100000000000000000000000002222222222222222012222220001222100000012000000000000000000000000222211202221210022121000212100001210000000000000000000000000000002222223022222300022223000122310000113020001122000001200000000000000000000000000010000002000000000000000000000000000000000000000000000020000000200000001000000010000000100000000000000000000000021212100121210002121200011111000111110001111100001111000001100000000000000000000000000000000000000000000000000000000000000000000100000001000000010000000100000001000000010000000100000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000cccccc00ccccccc0ccc1ccc0ccc0ccc0cccccc10ccc11100ccc00000111000000ccccc00ccccccc0ccc1ccc0ccc0ccc0ccccccc0ccc1ccc0ccc0ccc011101110cccccc00ccccccc0ccc1ccc0ccc0cc10ccccccc0ccc1ccc0ccc0ccc011101110ccccccc0ccccccc011ccc11000ccc00000ccc00000ccc00000ccc00000111000ccc0ccc0ccc0ccc0ccc0ccc01ccccc1001ccc10000ccc00000ccc000001110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111133333333000000000000000000000000000000000000000000000000111111113333333300000000000000000000000000000000000000000000000011111100333333220000000000000000000000000000000010000000100000001000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" local superbock_gfx = "802800000000000000000000000000000000000000000000000000000000000000000000000005757575555999554377ccc9042bbeee048bbbdd0228bbbe011128b80000000075759595555559999999ccccbebeeebedbdddbdbbdbebdbd4442d6b2000000009590000055500000c9a00000b8000000d800000081110000111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011116b841111bbb40211166802112242021224bb022284884424388b444388ba42212bb842416bb6222266112222222243346b888344668434336d488884dba8211110002111100011101000422010002110100021101000484010008882100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000444438bb424444eb2224346b422244bb4222246b422242bb2112246b7221228b88388b888388d6443438bb244448d8424448b8484348b8844448bb448448d8848842100084821000244410004444000044440000444400004444000044430000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000073333346b4373759937775599437775b93337559d533377dc733377dd733378dd4428684495759795997999559779b995dddeb9999559e9cacdcdce9cddddce9a35550000555500005555000055550000595700009775000077770000a7a5000000000000000000000000000000000000000000000000000000000000000000000000000700000003000000030000000300000002000000010000000100000002733378ce737377ec373557be7377759b1435359a111233771111111611116666ddce9e7bcccccdba555cdb99ededb9957779995575759777111126226666b6667775700097957000555530009555700055532000711120002111100061112000000000000000000000000000000000000000000000000000000000000000000000000004000000040000000200000042000000240000002200000022000000212211111644422266244338bb434378db243338bb434338db233338bb434373a3111116266111666633338b888343bbb833343888334388b334333b8843438888111110006442210038442200834242003334220083422200384422008444220000000000000000000000000000000000000000000000000000000000000000000000002200000042000000020000000200000001000000210000001100000011233333334243334324333333244343831224333411224444111112221111116133343833434333833433383343434333333434334242424422222222111111213444220083424100334221008342110034421100422111001111111011111140000000000000000000000000000000000000000000000000000000000000000000000422000044420002484300028433001434240024434302442334024443432112266b424448db23242b6843438884343b8b84438bbbb4344b8b84438bbbb422246b8244448bb424244b88424244bb442424bb424244bb2424246b4242448b222224444444434464343444db834442bb843444bbd84344bbb83334dbb483440000000040000000400000004400000042200000442000004422000044410000022424340243334304244323444244324424243442424243242444330442433333388b444343834423288b84433bdbb3343bbb84434bdbb333388b683333838342242448424244444424446b4444448b2444348b434243bb3433348b434343bb8b8433348884434488443434db838444bb433334db438344bb333334b883838334220000424200004424000044424000242420004242400044242000444200000424333304434383044438380443438304443338044443830444343304444342333333338383838337333833838383833338334483442121421111461162626233343334334343433333333383338383444833681166d6d166426646222121223333333433838383383338348383838348383334616663446211122461668112342400004442000034240000444400004444000044840000444400004444000004443411048341120444111104821112044211180481118b0441168e044118de1622166b6168babd18abbeeebbeeedc76eed7555eec55555d755557ac5555595aaabaaabdbdddbddeedeeeee955555975955555597a797a5797979799797979786222622babb6166eedbab21cdeeebb4557deebb55559eeb555559de955555ce1444000012840000164400006164000022140000b1640000a6140000d8620000042118dd042168e704114dd504216dd504216ec504418dc504216e7504416dc5555555557cc55555cedecd5cde77de7c7eecce5dc7dede7dcedece7d7cdc7eee557a755555555555c99c757ce7eeeecee7edcecee7edeedeeceed7cee7ec55ce5555555d55559757cd7eee75eddecec5cccece55ecdeed7579cece45eede9c75db140000eb620000dd420000dd820000cd620000dd820000ce620000dd82000004414d6500416dd500422dc500412be5004218d7004214dd0044126e0044218d5cdd77cc7cede7ce5ddcecde7cedecec5cd7dded7ceeedde7757375dd575555575cc557deec59ceecdeccecc97eded5557eded55ddecdedceec55dde555555553c79dc55deede5957ede75555eeec5555eded75cded9ec5dcc75557ea55555ddcd440000dd220000db140000e8240000d8240000d4240000b2240000b24200000024212b00244118002442120044421200444412004444410044444200444444d7555755ed755aba8ec55a7a6bec979718bed955118beed91218adee21616abb555a5555aa9aaaba7b7a7a7a7aaaaaa75555555555555559ddcdcddeeeeeeeeba75557edb7559de8a755cea2a59ceb8259deb826deeba162eda81614ba616144214200002142000014440000244400002444000044440000444400004444000000444444004444440022244400212222001111110021111100211111002111114211124844211261343412164242442111122424111121221111121211111111aaababab216262222611162661444111222222241111112211111112111111114222144462624444222434446444444224222212622121211211111121112111444420004442200024112000421120001111200011212000111200002121000000011111000211110000111100000111000000110000000000000000000000001111111111111111111111111111111111111111111111110011111100000001111111111111111111111111111111111111111111111111111111111111111011111111111111111111111111111111111111111121110011110000000000001112000011200000110000002200000000000000000000000000000000000000" local evilbot_gfx = "8080A1214NA55NA511NA3JDA55DA333DA5PDA5NBA5NCA5JCA5NCA6CA6BDDA5DDA5DDNA4D2L4KDDLN3BDINP3BINP4INP5A19I3LNNI4P2NILIIP4LIIPINP2NIG3N3A10LI42LLI6A7I9B5I2B4I3B3L4B2L5BBLN5DN3LLILI7B15I7BLLHDDLLBBNNBJNND2N4I15BI22L5GGN3IG2NNIG4I29NPIGI2PPNGIILN2LIGN3I2LNNIIGIIA3NLNGIL2NNPNP8LI2NPPILIIGGI7GI2LI2GI6GPPNAAPDDPPLLAD2P2IHD2PN2IHDCNNLNNIDCGIL2NIBG2ILLNIG4ILLDA6BA6BA6CA6CA6CA6BA6IIA332IA5INA4GNNA3GN2A2INLNNAAL4IANL3GGANL2G2N2P2IGN4G2N2LG3NNIG4LGGIIG32NNG55NNLI4N3LI2GIN4IG2IN3G4INNG6IG15I2N4I4N2IIG4NLG2F3NNLG2FFN3LF2GBN2LIFG2IL2ID3N4KKMN2GNNMNPIGFGN2GF17IF5ILINPNIIL2GGFFGGIGF3GLNF3ILNNFFGLLNLGFILLNIGIILLIG3LLG3IGIG3IGGLNJGIGIINLGIG2IIG4I2G5IG31I3LI19GGI4GI6G2I4G14FG6IIG6IIG5I2G4I2G4IIG3FFGGF13LIIA4GLIIA3G2IIA2G4A2GF2NA2F2LA3FFIA4FGA326NLIG2IAAFGGIGGA2F4A3F3A4F2A5FFA6FA7I2G6I4GFG4IGF6GFFDBBF5KMOOMF2BKMOOF3DKMOG15I3G5I4GF4GGIJBF5M4KHBM7G31IG6F2G4F7M2KBF2G4ILLG6IG6LG4FGLG5NLG4NILFG2IILLF3L2N3PPLLGJNNPPIGGNP3NGGLP2L2ILNPPL4PN2L2N5LLN6LG15FG7F3G2LF6LLF5LNF3JOLLGFFGOOG14FG2F11BF3BJMMBBM3KKM3K2M8G2F10BHFFBBJOOMHKM2OMKM3OMKKM2OMKKFMMOMKKFFMOOMKF3BBF4MKDF4KKF4AKF4AAF4A2F3A3F2A4FFNA4FA447F3DMMAAF3DMA2F3KA3F3A4F2A5FFA6FA7OM3K2MOOM2K2MOOM3KKMOOM2FKMMO3FFKMO3G2KMOOMG3KMKDM4OOFM3O2FM2O2MFMMOOMMHFOOMKKBFFMMKHF3KHF11GGF3NLLNF3GLNNF4N2F4IGGF4GFGF8GGFGF2G2F4N23G6BGIG4BG11FGIG6IGNIGF2OONIGF2MOMIIF2KMMIIF3DFIIF6IF6G3F6G2OM6O2M3OMMO5KKMMO3FFDKKMOMF4DKKF15OOMKGF2OMKHF2GMKDG3FMKG3FAKG3FAAG3FA2G2FA3FGFA4FLA5GA548FFA4GGFA4LIGPG3DFFANG2F2AANGF3AANF3GIF3GGIF2GGI2G2I2FFI2LF7G3F2G2IFFG2IF2GIIGF3IGF20GF5G2F13LF6LF5GGF5NGFGF2NLGGFFGNLNIG2LI2LG5IGLI4NG5IING4IIG5I2G2I4GIGI11LF6IF7GF6NF6INF5ILNIF3LI2NF2IGI2LLFG2F6IGGF6IIGGF6IF15GGF6G2F19GF6IG4F2I2G3F3I3F5GLF7GNA5GIA5GLA5GLA5GIA5IILA4I2NA3FI2A456I2A5ILA5FFA6FA6FA22NILF35GGF4G2F3G3IFG5F3G3F2G2IGFG3IGIG4LIIG3NI2GGILI3GLLI4NLI5GNI5NGGI4G3I4GIIGIIFI5FFI4F2I3F3I2F4LLI3LIIGBO2GIFFBO2F4O2GF3O2JF2EO3F3O3F3O3FI6NI7GI6FFI5F2I4F4I2F5IIF6IGFG3FFING5IILIIG2I2LNIGGI4LNI7NI15F15GIF5GIIGF3GGIIGGFFIIGIIGGFINIGIG2IILLIIGGF3LA2F4A2F3A3F3A3F2NA3F2A4GFA5GGLA459GA5LGA5GGA4LGGA4G2A3IG2A2IG2IAALG2INIG5NG4L2G2INL2GGINL2IGINLI4NL2I2NLILLI2LLI5LI21KI5FJI4FFJL2IF2JLLIF3JIIF4MIDBF4DOJF4OOMF4OOMF4O2F4O2F4O2F4O2F7O3F3O3F3O3F3O3BF2O3MF2O4F2O4F2O4F6OF6OF6OF6MF6JF23MI6OOI3GGO2LIG2O3MG2O4FIIO4FFIO4F2O4JFFGGIINIIG3I3G2IGIGI33FFI5GGIA4G2IA3G2IIA2IG2IIAAIIGGIGIAIILGGI5LGIGI4LIIGA47IA6GNA356GA5GIA4GIIA3I2LA2I2LIAAG2INLAGIGLNLLGGINLLI3NLLI3NILI3NI3LI17LLI7LI7LLIGFI4GFFI3F3I2F4IIKF4IMOF4DMF4MFMF4MFMF4MFMF4MFMF4MFMF4MFMF4OFMF4O3F4O2F4O2F4O2F4O2F4O2F4O2F4O2F7O4F2MO3F2JO3F2HO3F2BO3F3O3F3O3F2EO3F23HF6MF6OF6OF6OF6O5FFMO4FFJO4F2O4HFFO5FFO5FFO5FFO5F3I4F3I3F3MI2F3BOHIF4OOJF4O2F4O2F4BOOI4LIGI5LI7LI15FI6FFI5F2I5GA5GGIA4IGGIA3IIGGIA2I2GIIAAIGIIGIIAIGI2GGNI4LGGA294GA5GNA4INIA3ILIGAALIILIIANI5AGLI4GNI5NIIG4IGGIG19I14MI4HMOI3DMOOG2DBKMOGGB3DMGB5DB7MOMF4OOMF4OOJF4OOJF4OOBF3EOOF4EMOF4EKMF4EBMF4OJMF4OJJF4OMJF4OMJF4OOJF4OOJF4OOJF4O3F4O2F4O2F4O2HF3O2JF3O2MF3O2MF3O2MF7O3F3O3F3O3F3O3F3O3F3O3F3O3F3O4F6OF6OF6OHF5OMF5OOF5OOF5OOF6JO4MFFO5FFO5FFO5FFO5FFO5FFJO4F2O4F5OOF5OOF5OOF5HOMF5OOF5OOF5OOF5JF3I3MF3I2OF4HIOF4ODOF4MMOJF4O2F4MOMF4MI2GIINI4GIINI3GGI5G3DGIIG3MBG5MMBIG3K2BBG3A6GGA5NIIA4ILIIA3GILIIA2GGILILAAG2ILINAG3I2A195ILG2AALLG3AANIG3ANIG4ANIGFG2ALGGF3AIGF4NGF5G6BG5BBG3FB2G2FB3G3FB2F5BBF6BF7B6DB5DMB3DDKMB2D2MMBBD2KD9HD6F3BHDDMOF4EMMF4EMMF4EMMF4EKMF4BDKF4DDBGF3DDF5DKHF4MMHF4DMHF4KMBF4MKBF4MDF5DDF5DDBF4DM3F3M3F3M3F3M3F3M2KF3KMMKF3KKDDF3D3F7O3F3DM2F3DM2F3DM2F3DK2F3DK2F3BDKKF3D3OOF5MMF5MMF5MMBF4KKDF4K2F4KDDF4D2F7O4F2M4F2M4F2M4F2BM2KF2EK3F3DK2F3DK2OJF5MMF5MMF5MMF5KKF5K2F4K2F4K2BF3OOF4MOOF4HM2F4JMMF5MMF5KKDF4DKKF5KKF3K3DBGGK3DDBGK2D4K3D4KD5GD6FFBD3FG3BF2G5ILG6IG7DG6DG14F15A7LA6INA5ILA5GILA4GGLA4GGILA3FGILFA130LGF5IF6GF6AF6AAF5AAF5A2F4A5F136DF55DF5DF6DF47D3GF2D3F55BD2F2GGD2F47D2GGF2D2F6GF46G2DKKF4BDDF47K2GF3D2FFGF51BDF176A2F3A3FGGLA3FFGA4FFGA4FFGA4FFA222F6A6FA47F15A47F15A47F15A2F4A39F23AAGGF3A31F31A31F26GGA34F23A39F21A41F13A49F6A2296" -- the rle-decoder function tomem_rle(str,offset) local o=tonumber(str:sub(1,2),16)*256 -- get (o)ffset local w=tonumber(str:sub(3,4),16)*8-1 -- get (w)idth local e=str:sub(5,str:len()) -- remove header to get (e)ncoded data local d = "" -- (d)ecoded data for m, c in e:gmatch("(%u+)([^%u]+)") do -- decode rle, (m)atch & (c)ounter d = d .. m .. (m:sub(-1):rep(c)) end local y=0 for x = 1,#d,1 do -- write to mem local c=string.byte(d:sub(x,x))-65 -- get (c)olor value poke4(offset+o+y,c) y=y+1 if y>w then y=0 o=o+1024 end end end -- the raw decoder function tomem(str,offset) local tnb=tonumber local o=tnb(str:sub(1,2),16)*256 local w=tnb(str:sub(3,4),16)*8-1 local d=str:sub(5,str:len()) local y=0 for x = 1,#d,1 do local c=tnb(d:sub(x,x),16) poke4(offset+o+y,c) y=y+1 if y>w then y=0 o=o+1024 end end end function no_fn() end function start_music_0() music(0) end function setup_evilbot() tomem(shark_gfx,0) tomem_rle(evilbot_gfx,256*8*8) end function ovr_evilbot(t) tovram(evilbot_pal) --shark spr(0,-80,20+math.sin(time()/250)*5,15,2,0,0,8,8) --evilbot ypos=10 circ( 120,ypos+52,67,0) spr(256, 60,ypos-13, 0,1,0,0,18,15) str=scenes[idx].blabla w=string.len(str) cw=w*10 rect(120-cw*.5,ypos+100,cw,20,0) for j=0,2 do print(str,120-cw*.5+10-j,ypos+105-j*.5,8+j,true,2,true) end end function setup_glitch() end function scene_glitch(t) if math.random()<.5 then tovram(sweetie16_pal) end clouds(0,t) sheep_right(80,0) grass(0) w=240 h=136 copyx = w/2 copyy = h/2 for dy=0,h/2,1 do memcpy(copyx + dy*w, copyx-1 + dy*w, copyx) end if math.random()<.25 then memcpy(240, 0, 240*67.15) end speech_bubble_right(2,0) end function setup_inercia_cake() tovram(superbock_pal) tomem(superbock_gfx,256*8*8) end function candle(botx,boty,w,h,col) rect(botx-w*.5,boty-h,w,h,col) circ(botx-1,boty-h-5,math.random(2),math.random(15)) end function scene_inercia_cake() cls() moveup = 100 -- draw cake for dy=136,40,-1 do -- multicolored layers elli(120,dy+116-moveup,100,10,16-(dy//30)-1) -- top line ellib(120,40+116-moveup,100,10,0) -- candle(120,dy+116-moveup,9,30,15) end -- draw superbock sprites for sb=52,0,-1 do x = 102+math.sin(time()/500-10*sb/42)*100 y = 80+math.sin(time()/250-15*sb/42)*40 spr(256,x,86-y,0,1,0,0,5,16) end -- world record rect(201,6,35,25,0) rect(200,5,35,25,2) len=print('O',208,9,10,false,2) print('O',208+len-3,9,10,false,2) print('bocks',203,23,10) end function ending_setup() tovram(sweetie16_pal) end creditstimer=0 t10=0 t11=-200 t12=0 t13=0 t14=0 function ending() cls() creditstimer=creditstimer+0.5 checkerboard() --print(creditstimer,0,20) wave("No matter what",25,166-creditstimer,2) wave("party you choose",15,186-creditstimer,2) wave("We'll still",40,226-creditstimer,2) wave("love you <3",40,246-creditstimer,2) wave("2022.inercia.pt",15,296-creditstimer,2) wave("field-fx.party",20,326-creditstimer,2) if creditstimer>250 then t10=t10+2 rect(0,0,t10,136,0) if t10>240 then t11=t11+1 if t11>=0 then t11=0 end waveend("Brought to you by",5,t11+10,2) tobach(0+math.cos(time()/100)*2.2,t11+math.sin(time()/100)*2.2) ps(0+math.cos(time()/100+0.5)*2.2,t11+math.sin(time()/100+0.5)*2.2) waveend("At Revision 2022",10,t11+120,2) end end end function twist() cls() --map() for a=0,136 do x1=math.sin(a/q+(time()/150))*27+120 x2=math.sin(a/q+90+(time()/150))*27+120 x3=math.sin(a/q+90*2+(time()/150))*27+120 if x1 math.abs(x1 - x0) if steep then --swap(x0, y0) tmp=x0 x0=y0 y0=tmp --swap(x1, y1) tmp=x1 x1=y1 y1=tmp end if x0 > x1 then --swap(x0, x1) tmp=x0 x0=x1 x1=tmp --swap(y0, y1) tmp=y0 y0=y1 y1=tmp end dx = x1 - x0 dy = y1 - y0 if dx == 0.0 then gradient = 1.0 else gradient = dy / dx end -- handle first endpoint xend = round(x0) yend = y0 + gradient * (xend - x0) xgap = rfpart(x0 + 0.5) xpxl1 = xend -- this will be used in the main loop ypxl1 = ipart(yend) if steep then plot(ypxl1, xpxl1, rfpart(yend) * xgap) plot(ypxl1+1, xpxl1, fpart(yend) * xgap) else plot(xpxl1, ypxl1 , rfpart(yend) * xgap) plot(xpxl1, ypxl1+1, fpart(yend) * xgap) end intery = yend + gradient -- first y-intersection for the main loop -- handle second endpoint xend = round(x1) yend = y1 + gradient * (xend - x1) xgap = fpart(x1 + 0.5) xpxl2 = xend --this will be used in the main loop ypxl2 = ipart(yend) if steep then plot(ypxl2 , xpxl2, rfpart(yend) * xgap) plot(ypxl2+1, xpxl2, fpart(yend) * xgap) else plot(xpxl2, ypxl2, rfpart(yend) * xgap) plot(xpxl2, ypxl2+1, fpart(yend) * xgap) end -- main loop if steep then for x = xpxl1 + 1, xpxl2 - 1 do plot(ipart(intery) , x, rfpart(intery)) plot(ipart(intery)+1, x, fpart(intery)) intery = intery + gradient end else for x = xpxl1 + 1, xpxl2 - 1 do plot(x, ipart(intery), rfpart(intery)) plot(x, ipart(intery)+1, fpart(intery)) intery = intery + gradient end end end function scene_inercia_balls() dt=time() scene_inercia_logo() for i=0,math.pi*2,.8 do basex = 120+math.sin(dt/640+i)*90 basey = 105+math.cos(dt/320+(dt*i)/620+i)*18 for j=0,math.pi*2,.8 do drawLine( basex+math.sin(dt/320+j/math.pi*dt/320+i)*10, basey+math.cos(dt/320+j/math.pi*dt/320+i)*10, basex+math.sin(dt/320+j/math.pi*dt/160+i+.8)*10, basey+math.cos(dt/320+j/math.pi*dt/160+i+.8)*10) end end end function clouds(y,t) -- clouds dx = (time()/500%340)-40 circ(dx-18,26+y,10,13) circ(dx,20+y,18,13) circ(dx+18,22+y,15,13) dx = (time()/700%340)-40 circ(dx+11,35+y,8,13) circ(dx,30+y,12,13) circ(dx-15,34+y,8,13) --drone if t/mspb>256 then dx=160+math.sin(time()/1000)*25+math.sin(time()/500+11)*20 dy= 40+math.sin(time()/1000)*10+math.sin(time()/800+1)*20 line(dx-1,dy,dx+2,dy,0) pix(dx-1,dy-1,0) pix(dx+2,dy-1,0) end end function grass(y) for i=0,240 do line(0+i,100+math.sin(i)*10+y,0+i,135+y,7) end for i=0,240 do line(0+i-3+math.sin(time()/500+i)*2,110+math.sin(i)*10+y,0+i,135+y,6) end end t3=0 t4=0 t5=0 t6=0 t7=0 t8=0 t9=0 gy=45 function scene_grass(t) gy=gy-1.6 cls(10) clouds(gy,t) grass(gy) end function sprinkle_noise_on_grass(tseed) math.randomseed(tseed) for i=0,600 do x=math.random(240) y=math.random(192) c= pix(x,y) tp=math.random() if c > 5 and c < 7 then if tp>.5 then pix(x,y,c+1) else pix(x,y,c-1) end end end end function topdowngrass1() t3=t3+0.75 grassy1=(t3*2-10) if grassy1>136 then grassy1=136 end for i=0,grassy1 do line(100-i/1.7,0+i,110-i/1.7,0+i,5) end mow1val=(-20+t3*2) if mow1val>136 then mow1val=136 end spr(46,107-t3*1.2,mow1val,0,1,0,0,2,2) end function topdowngrass2() t4=t4+0.75 grassy2=(0+t4*1.5-10) if grassy2>136 then grassy2=136 end for i=0,grassy2 do line(60+i*1.5,0+i,70+i*1.5,0+i,5) end mow2val=(-20+t4*1.5) if mow2val>136 then mow2val=136 end spr(46,40+t4*2.2,mow2val,0,1,1,0,2,2) end function topdowngrass3() t5=t5+0.75 grassy3=(-3+t5*1.5-10) if grassy3>136 then grassy3=136 end for i=0,grassy3 do line(60+i*1.5,136-i,70+i*1.5,136-i,5) end mow3val=(146-t5*1.5) if mow3val>136 then mow3val=136 end spr(46,34+t5*2.2,mow3val,0,1,3,0,2,2) end function topdowngrass4() t6=t6+0.75 grassy4=(t6*3-10) sprval1=(68+math.sin(t6/5.7)*9) if grassy4>240 then grassy4=240 end for i=0,grassy4 do line(0+i,68+math.sin(i/16)*10,0+i,78+math.sin(i/16)*10,5) end mow4val=(146-t6*1.5) if mow4val>136 then mow4val=136 end if sprval1>=70 then spr1flag=true else spr1flag=false end if spr1flag==false then sprflipval=1 else sprflipval=3 end spr(46,-20+t6*3,sprval1,0,1,sprflipval,0,2,2) end function topdowngrass5() t7=t7+0.75 grassy5=(-3+t7*1.5-10) if grassy5>136 then grassy5=136 end for i=0,grassy5 do line(110-i*1.3,136-i,120-i*1.3,136-i,5) end mow5val=(146-t7*1.5) if mow5val>136 then mow5val=136 end spr(46,132-t7*2,mow5val,0,1,2,0,2,2) end function topdowngrass6() t8=t8+0.75 grassy6=(-3+t8*1.5-10) if grassy6>136 then grassy6=136 end for i=0,grassy6 do line(150+i/1.5,136-i,160+i/1.5,136-i,5) end mow6val=(146-t8*1.5) if mow6val>136 then mow6val=136 end spr(46,135+t8,mow6val,0,1,3,0,2,2) end function sheepmowerr(x,y) x=x/1.5 legval=math.sin(time()/100)*15 legval2=math.sin(time()/100+0.4)*15 for i=1,4 do line(112+i+x,45+y,150+i+x,75+y,15) end for i=1,4 do line(115+i+x,90+y,115+i+-legval+x,120+y,15) end spr(9,60+x,28+math.sin(time()/100)*1+y,0,3,1,0,3,3) spr(12,107+x,16+math.sin(time()/100+0.8)*1+y,0,3,1) spr(5,145+x,60+math.random(2)+y,0,2,0,0,4,4) for i=1,4 do line(100+i+x,90+y,100+i+legval2+x,120+y,15) end for i=1,4 do line(110+i+x,50+y,150+i+x,75+y,15) end end function sheepmowerl(x,y) x=x/1.5 legval=math.sin(time()/100)*15 legval2=math.sin(time()/100+0.4)*15 for i=1,4 do line(130+i+x,45+y,102+i+x,75+y,15) end for i=1,4 do line(135+i+x,90+y,135+i+-legval+x,120+y,15) end spr(9,124+x,28+math.sin(time()/100)*1+y,0,3,0,0,3,3) spr(12,124+x,16+math.sin(time()/100+0.8)*1+y,0,3) spr(5,45+x,60+math.random(2)+y,0,2,1,0,4,4) for i=1,4 do line(150+i+x,90+y,150+i+legval2+x,120+y,15) end for i=1,4 do line(130+i+x,50+y,100+i+x,75+y,15) end end function scene_fxfield() cls(10) t9=t9+1 ymowval=t9/8 elli(180,150,272,142,7) elli(180,150,270,140,6) spr(96,90,20,0,2,0,0,9,7) spr(16,191,103+ymowval,0) for i=1,2 do line(193+i,103,193+i,103+ymowval,5) end sprinkle_noise_on_grass(4) end function scene_tunnel(t) poke(0x3ffa,0) dt = (t - scenes[current_scene_id].start)/250 for x=-120,120,2 do for y=-68,68,2 do X=math.atan2(x,y)*8/math.pi Y=1999/(x*x+y*y) pix(x+120,y+68,8+(X+math.sin(dt/5)*10)+(Y+dt)//1) pix(x+120+1,y+68,8+(X+math.sin(dt/5)*10.5)+(Y+dt)//1-1) pix(x+120,y+68+1,8+(X+math.sin(dt/5)*10)+(Y+dt)//1-1) pix(x+120+1,y+68+1,8+(X+math.sin(dt/5)*10.5)+(Y+dt)//1) end end end spr1flag=true yval=0 function scene_grass_mowl(t) cls(10) dt = t - scenes[current_scene_id].start clouds(0,t) sheepmowerl(300-dt*.25,-10) grass(0) end function scene_grass_mowr(t) cls(10) dt = t - scenes[current_scene_id].start clouds(0,t) sheepmowerr(-300+dt*.25,-10) grass(0) end function sheep_left(x,y) legval=math.sin(100)*15 legval2=math.sin(100+0.4)*15 for i=1,4 do line(112+i+x,45+y,150+i+x,75+y,15) end for i=1,4 do line(115+i+x,90+y,115+i+-legval+x,120+y,15) end spr(9,60+x,28+math.sin(time()/100)*1+y,0,3,1,0,3,3) spr(12,107+x,16+math.sin(time()/100+0.8)*1+y,0,3,1) spr(5,145+x,60+math.random(2)+y,0,2,0,0,4,4) for i=1,4 do line(100+i+x,90+y,100+i+legval2+x,120+y,15) end for i=1,4 do line(110+i+x,50+y,150+i+x,75+y,15) end end function sheep_right(x,y) legval=math.sin(100)*15 legval2=math.sin(100+0.4)*15 for i=1,4 do line(130+i+x,45+y,102+i+x,75+y,15) end for i=1,4 do line(135+i+x,90+y,135+i+-legval+x,120+y,15) end spr(9,124+x,28+math.sin(time()/100)*1+y,0,3,0,0,3,3) spr(12,124+x,16+math.sin(time()/100+0.8)*1+y,0,3) spr(5,45+x,60+math.random(2)+y,0,2,1,0,4,4) for i=1,4 do line(150+i+x,90+y,150+i+legval2+x,120+y,15) end for i=1,4 do line(130+i+x,50+y,100+i+x,75+y,15) end end function shark_right(x,y) spr(256,x,20+y,15,2,1,0,8,8) end function shark_left(x,y) spr(256,x,20+y+math.sin(time()/250)*5,15,2,0,0,8,8) end function setup_shark() tomem(shark_gfx,256*8*8) end function activate_sheep_pal() tovram(sweetie16_pal) end function activate_shark_pal() tovram(shark_pal) end function scene_sheep_vs_shark(t) tovram(sweetie16_pal) cls(10) clouds(0,t) sheep_right(80,0) grass(0) end function scene_sheep_vs_shark_speak(t) scene_sheep_vs_shark(t) speech_bubble_right(2,0) end function ovr_shark_enter_left(t) tovram(shark_pal) dt = (t - scenes[current_scene_id].start)//5 if dt > 60 then dt = 60 end shark_left(-140+dt,0) end function ovr_shark_left() tovram(shark_pal) shark_left(-80,0) end function ovr_shark_left_speak() tovram(shark_pal) shark_left(-80,0) speech_bubble_left(11,0) end function speech_bubble_left(c,b) boty = 20 idx = current_scene_id --for idx=0,current_scene_id do if idx > 0 and idx <= #scenes then blabla = scenes[idx].blabla nlines = 0 w = 0 for i in string.gmatch(blabla, "([^\n]+)") do w=string.len(i) x = 60 for j=0,2 do print(i,x-j,boty+nlines*20-j,3+j*2,true,2,true) end nlines = nlines + 1 end end --end end function speech_bubble_right(c,b) boty = 20 idx = current_scene_id --for idx=0,current_scene_id do if idx > 0 and idx <= #scenes then blabla = scenes[idx].blabla nlines = 0 w = 0 for i in string.gmatch(blabla, "([^\n]+)") do --if string.len(i) > w then w=string.len(i) end w=string.len(i) x = 195-w*8 for j=0,2 do print(i,x-j,boty+nlines*20-j,14-j,true,2,true) end nlines = nlines + 1 --end end end --end end function speech_bubble() boty = 20 idx = current_scene_id --for idx=0,current_scene_id do if idx > 0 and idx <= #scenes then blabla = scenes[idx].blabla nlines = 0 w = 0 for i in string.gmatch(blabla, "([^\n]+)") do --if string.len(i) > w then w=string.len(i) end w=string.len(i) x = 60 if idx%2 == 0 then x = 175-w*8 end print(i,x+1,boty+nlines*20+1,0,true,2,true) print(i,x,boty+nlines*20,1+idx%2,true,2,true) nlines = nlines + 1 --end end end --end end function blue_sky () cls(10) end function scene_topdowngrass_1(t) cls(6) topdowngrass1() sprinkle_noise_on_grass(1) end function scene_topdowngrass_2(t) cls(6) topdowngrass1() topdowngrass2() sprinkle_noise_on_grass(1) end function scene_topdowngrass_3(t) cls(6) topdowngrass1() topdowngrass2() topdowngrass3() sprinkle_noise_on_grass(1) end function scene_topdowngrass_4(t) cls(6) topdowngrass4() sprinkle_noise_on_grass(2) end function scene_topdowngrass_5(t) cls(6) topdowngrass4() topdowngrass5() sprinkle_noise_on_grass(2) end function scene_topdowngrass_6(t) cls(6) topdowngrass4() topdowngrass5() topdowngrass6() sprinkle_noise_on_grass(2) end function setup_water_worm() poke(0x03FF8,12) end pal={9,9,9,1,10,10,10} function scene_water_worm(t) cls(12) t=time()/200 for p=0,14,.01 do circ(120+math.sin(p+t/3)*(p*6-8+math.sin(t)*20), 68+math.sin(p+t+1)*(p*3-8+math.sin(t)*10), math.abs(math.sin(p+t)*p*2.5), pal[p*17%8//1]) end for a=0,46 do x=math.random(240) y=math.random(136) w=math.random(20) line(x,y,x+w,y,pix(x,y)) line(x,y+1,x+w/2,y+1,pix(x,y)) end end function switchborder() poke(0x3ff8,0) end function scn_blue_sky_gradient(l) poke(0x3FC0+10*3,90-l*.1) poke(0x3FC0+10*3+1,160+l*.1) poke(0x3FC0+10*3+2,250-l*.6) end q=22 function greets() cls() twist() end function greets_scn(l) poke(0x3ffa,math.sin(time()/800+l/32)*math.sin(time()/400+l/64)*100) poke(0x3ff9,math.sin(time()/1000+l/32)*math.sin(time()/1000)*50) size=15 win=math.sin(time()/400)*30+60 if l>win and lwin and lwin and l5 and t13<76 then if t12>5 then t12=0 greet_index=greet_index+1 gpos_index=gpos_index+2 end waveend(greets_groups[greet_index],greets_pos[gpos_index],greets_pos[gpos_index+1]+math.sin(time()/200)*10,2) else waveend("We You",60,60,2) spr(224,105,60+math.sin(time()/120)*4,0,1,0,0,2,2) end end function evilbot_sfx() sfx(20,"c-2") end bpm = 130 mspb = 1000 * 60 / bpm loop_time = 400 * mspb scenes = { { setup = no_fn, frame = blue_sky, ovr = no_fn, scn = scn_blue_sky_gradient, blabla= "", start = 0 },{ setup = no_fn, frame = scene_grass, ovr = no_fn, scn = scn_blue_sky_gradient, blabla= "", start = 1 * mspb },{ setup = start_music_0, frame = scene_grass_mowl, ovr = no_fn, scn = scn_blue_sky_gradient, blabla= "", start = 2 * mspb },{ setup = no_fn, frame = scene_grass_mowr, ovr = no_fn, scn = scn_blue_sky_gradient, blabla= "", start = 10 * mspb },{ setup = no_fn, frame = scene_grass_mowl, ovr = no_fn, scn = scn_blue_sky_gradient, blabla= "", start = 18 * mspb },{ setup = no_fn, frame = scene_topdowngrass_1, ovr = no_fn, scn = no_fn, blabla= "", start = 25 * mspb },{ setup = no_fn, frame = scene_topdowngrass_2, ovr = no_fn, scn = no_fn, blabla= "", start = 32 * mspb },{ setup = no_fn, frame = scene_topdowngrass_3, ovr = no_fn, scn = no_fn, blabla= "", start = 37 * mspb },{ setup = no_fn, frame = scene_topdowngrass_4, ovr = no_fn, scn = no_fn, blabla= "", start = 42 * mspb },{ setup = no_fn, frame = scene_topdowngrass_5, ovr = no_fn, scn = no_fn, blabla= "", start = 47 * mspb },{ setup = no_fn, frame = scene_topdowngrass_6, ovr = no_fn, scn = no_fn, blabla= "", start = 52 * mspb },{ setup = no_fn, frame = scene_fxfield, ovr = no_fn, scn = scn_blue_sky_gradient, blabla= "", start = 58 * mspb },{ setup = setup_shark, frame = scene_fxfield, ovr = ovr_shark_enter_left, scn = scn_blue_sky_gradient, blabla= "", start = 68 * mspb },{ setup = setup_shark, frame = scene_fxfield, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "What are you doing?\nThat's not\nour logo!", start = 70 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "What do you mean?\nIt's what aldroid\n and reality\n gave me!", start = 78 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Well, it says\nField-FX,\nnot Inercia!", start = 84 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Erm... Yeah!\nThis is the\n Field-FX invite!", start = 90 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "What? No!!\nCome to\nInercia Demoparty\n2005!", start = 96 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "???\nWhat??\nI'm so confused!", start = 102 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "That's ok!\nYou're just\na sheep!", start = 108 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Erm... yes...\nBut that's\nwhat they told\nme to mow", start = 114 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Here, let me\nshow you\na REAL logo!", start = 120 * mspb },{ setup = setup_inercia_logo, frame = scene_inercia_logo, ovr = no_fn, scn = no_fn, blabla= "", start = 126 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Isn't it\nawesome?\nh4rvest made it!", start = 132 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Yeah sure,\nbut I was told\nto mow Field-FX\n...", start = 138 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Oh, and\ncheck out my balls", start = 144 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "What?! No!\nInnapropriate!\nPlease go away\nyou rotten shark!", start = 150 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "No, wait, really!\nYou'll love them!\nLook!", start = 156 * mspb },{ setup = setup_inercia_balls, frame = scene_inercia_balls, ovr = no_fn, scn = no_fn, blabla= "", start = 162 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = no_fn, blabla= "What did i say?\nWeren't they\nawesome?", start = 182 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "...\nWhat?!? No!!", start = 188 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Were you baffled\nby my subpixel\nline drawing?!", start = 194 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Not baffled, No.\nCan you leave?\nI have to finish\nthe invitation", start = 200 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "And the music...", start = 206 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Yeah about that,\nwe already\nhad music!", start = 208 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "That noise made\nby a sheep?!\nOurs is by jeenio!", start = 214 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Look, I was\ntold to announce\nField-FX dates!\n2-5th June!", start = 220 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "No No!\nInercia dates!\n4-6th November!", start = 226 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Field-FX is part\nof EMF camp\nin Eastnor, UK", start = 232 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Inercia is part\nof ... something\nin Lisbon, PT", start = 238 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Field-FX is\nkid friendly!", start = 244 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Inercia has a\ndrone music compo!", start = 250 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "Field-FX has\nactual drones!", start = 256 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Does it have\n...\nWATER WORMS?", start = 262 * mspb },{ setup = setup_water_worm, frame = scene_water_worm, ovr = no_fn, scn = no_fn, blabla= "", start = 266 * mspb },{ setup = switchborder, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "No! Who\nwould want that?\nWe have tunnels!", start = 278 * mspb },{ setup = no_fn, frame = scene_tunnel, ovr = no_fn, scn = no_fn, blabla= "", start = 284 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Inercia has cake!\nHidden in a\nsuperbock sprite\nworld record!", start = 296 * mspb },{ setup = setup_inercia_cake, frame = scene_inercia_cake, ovr = no_fn, scn = no_fn, blabla= "", start = 302 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "So does Field-FX!\nAnd it's even\nvisible! Ask\n Fluttershy/THUB!", start = 314 * mspb },{ setup = setup_tuhb_cake, frame = scene_tuhb_cake, ovr = no_fn, scn = no_fn, blabla= "", start = 320 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "FYI that was made\nby Marquee Design\nThey are Inercia!", start = 332 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "No one owns\na demogroup!!", start = 338 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "But we helped them\norganize Lovebyte!", start = 344 * mspb },{ setup = no_fn, frame = scene_sheep_vs_shark_speak, ovr = ovr_shark_left, scn = scn_blue_sky_gradient, blabla= "We helped them\norganize Lovebyte\ntoo!!", start = 350 * mspb },{ setup = setup_shark, frame = scene_sheep_vs_shark, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "Screw you sheep!!\nTake this ps\nglitch effect!!\n", start = 356 * mspb },{ setup = setup_glitch, frame = scene_glitch, ovr = ovr_shark_left_speak, scn = scn_blue_sky_gradient, blabla= "AAAAAA!", start = 362 * mspb },{ setup = setup_evilbot, frame = scene_glitch, ovr = ovr_evilbot, scn = no_fn, blabla= "", start = 368 * mspb },{ setup = evilbot_sfx, frame = scene_glitch, ovr = ovr_evilbot, scn = no_fn, blabla= "SILENCE!", start = 370 * mspb },{ setup = evilbot_sfx, frame = scene_glitch, ovr = ovr_evilbot, scn = no_fn, blabla= "ORDER!", start = 372 * mspb },{ setup = ending_setup, frame = ending, ovr = no_fn, scn = no_fn, blabla= "", start = 374 * mspb },{ setup = no_fn, frame = greets, ovr = greets_ovr, scn = greets_scn, blabla= "", start = 422 * mspb }} rewind = 0 -- - 230 * mspb current_scene_id = 0 function TIC() t = time() - rewind --hide cursor poke(16379,2) if #scenes > current_scene_id and scenes[current_scene_id + 1].start <= t then current_scene_id = current_scene_id + 1 scenes[current_scene_id].setup() end scenes[current_scene_id].frame(t) -- print(t/mspb//1) end function OVR() t = time() - rewind scenes[current_scene_id].ovr(t) end function SCN(l) scenes[current_scene_id].scn(l) end