| 
					
				 | 
			
			
				@@ -0,0 +1,881 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+-- title:   Alter Ego (WIP) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+-- author: ORIGINAL ZX SPECTRUM GAME BY DENIS GRACHEV 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--          NES CONVERSION BY SHIRU 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--          NES MUSIC BY RICHARD "KULOR" ARMIJO 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--										TIC-80 CONVERSION BY KYUCHUMIMO 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+-- desc:    My first TIC-80 program 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--WARNING: Saved on TIC-80 0.80.xxxx beta. Music doesn't work on previous versions. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--CHANGELOG: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200621 - Some SPR and basic learning 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200622 - Added title music, letters tileset, timming 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200623 - Added mget command for collision proposes and poke() functions for change palette and create fade effect alike NES 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200624 - Added Horizontal and Vertical Alter ego sprite mirroring, SFX and 8x8 movement 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200625 - Added more tilesets, level HELLO WORLD and future levels rearranged based on ZX spectrum version 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200626 - Added Levels 2 to 9 and Remap function for animate tiles 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200627 - Added new formulas for X maps and stairs and blocks collision 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200630 - Added new formulas for Y maps, fall instrucction and sfx, animation and movement speed accurancy 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200701 - Added more level properties, climb movements and arrangement of debug data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200702 - Added cover art for testing 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200703 - Added a definitive and noiseless cover art 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200804 - Added mset command for switch tiles (e.g. Bridges) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200807 - Added music more accurated from source, instruments and music loops. Number of patern tables reduced to most minimum (7 saved). 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200808 - Added Sync command to restore tilemap. More variables for control, timing accurancy and small optimizations on code. Game over screen and music. Keyp command 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200820 - Added death proerties, sfx, level 3 music and music loop accurancy with formulas. Music command correction. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200921 - Added both Pixel and phantom pixel collision, animation and sfx. Improved slide SFX and functional Game Over screen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200923 - Palette values and address changed to hexadecimal. Code optimization and fixes on collisions and fall conditions (Size from 19618 bytes to 17506 bytes), bridge falling animation (fix later: overlay on frame) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200924 - Bridge sprite set colorkey for alpha transparency, small fixes. Functional swap abillity for horizontal mirror added (With some unexpected bugs) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200925 - Some transitions and timming added 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--200928 - Vertical mirroring swap abillity added, more transitions and timming, some small changes or fixes. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--201101 - Added 6 levels more. Now you can press either A or B to swap between Alter Ego and Hero 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--201105 - Added an unused music, there will be no more music due to limitations in the RAM size of music patterns on TIC-80. Minor additions 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--201106 - Cover art updated to a better version. Now you will no longer be able to exchange places with Alter Ego if it is positioned on a block or platform. Added sound effects related to swapping 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--201108 - Now each pixel has its own animation set and pixel animation timming accurancy 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--201110 - 14 of 16 colors in the color palette updated to Sweetie 16 by GrafxKid palette for more consistency with TIC-80. Debug text thinner. Status are now displayed by tiles instead of sprites. Level clear message added at the end of every level 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--201111 - Added pause function, new music respawn method. More additions. Bug fix: Freeze at swapping action bug fixed. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--201112 - Bug fix: Hero was not displayed when he was moving and the game was paused. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--201116 - Some transitions and Jxx command used as a loop for music 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--INFO: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--https://tic80.com/play?cart=1420 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--https://www.youtube.com/watch?v=O3uOHAvlsN8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+-- script:  lua 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--VARIABLES 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--climb 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+c=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--sprite flip 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+f=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--lives 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+l=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--LEVEL (DEFAULT=0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+m=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--pixels (KEEP AWAY FROM 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+px=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--swap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+s=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--EVENT TIMER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+et=nil 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--GLOBAL TIMER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+t=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--bridge animation trigger 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+btrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--FALL TRIGGER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--PAUSE TRIGGER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ptrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--SWAP TRIGGER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+strig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--ALTER EGO mirroring (0=H,1=V) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--HERO animation ticks 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+anix=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+aniy=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--HERO X position 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+animx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--HERO Y position 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+animy=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--ALTER EGO X position 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+aex=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--ALTER EGO Y position 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+aey=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--palette RGB value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+v=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+cls() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+map() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--PALETTE VARIABLES 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+local basepalette = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    0x1a1c2c, 0x29366f, 0x3b5dc9, 0x493c2b, 0x5d275d, 0x38b764, 0xb13e53, 0x333c57, 0x41a6f6, 0xef7d57, 0x94b0c2, 0xa7f070, 0xe06f8b, 0x73eff7, 0xffcd75, 0xf4f4f4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function pal(v) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    for i = 1, #basepalette do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        local offset, color = i-1, basepalette[i] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        poke(0x3fc0+(offset*3), ((color//65536) * v)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        poke(0x3fc1+(offset*3), ((color//256)%256) * v) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        poke(0x3fc2+(offset*3), (color%256) * v) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function fade_out(et) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(2.1*60)) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8)==6 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==151 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==152 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==153 then music() end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return pal(1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(2.2*60)) then return pal(0.75) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(2.3*60)) then return pal(0.5) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(2.4*60)) then return pal(0.25) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(2.5*60)) then return pal(0) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function fade_in(et) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(0*60)+1) then return pal(0) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(0.1*60)) then return pal(0.25) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(0.2*60)) then return pal(0.5) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(0.3*60)) then return pal(0.75) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t==(et+(0.4*60)) then return pal(1) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--(shx: Xpos, shy: Ypos, shf: flip, sht: timer) CHECK THIS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function skullh(shx,shy,shf,sht) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--local shx 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--local shy 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--local sht 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--local shf 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if mget((30*m%240)+((shx-8)//8),(17*(m//8))+((shy+8)//8))==0 or mget((30*m%240)+((shx+8)//8),(17*(m//8))+((shy+8)//8))==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if shf==0 then shf=1 else shf=0 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--sht=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		spr(288+t%16//4,(shx*8)+(sht//8),(shy*8),0,1,shf,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--sht=sht+1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		spr(288+t%16//4,(shx*8)-(sht//8),(shy*8),0,1,shf,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if (animx*8+(anix//10))==shx*8 and ((animy*8+(aniy//10))+8)==(shy*8)+8 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		l=l-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sfx(56,45,-2,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		t=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		level(m)	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--SCREEN SKULL SPR POSITION DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(shx*8,22,24) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print((shy*8)+8,22,30) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+end	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--LEVEL PROPERTIES (ANIMX/Y LIMITS(1-28,1-14)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function level(m) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	sync(0,0,false) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	c=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	f=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	px=nil 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	aepx=nil 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	anix=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	aniy=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	et=-255 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	strig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--HELLO WORLD 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==2 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		t=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=21 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--PROMENADE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==3 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--BROKEN BRIDGE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==4 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=11 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--PHANTOM PIXELS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==5 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=14 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--ANOTHER PHANTOM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==6 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=13 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--SKULLS LAIR 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==7 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=14 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=17 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=13 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--ABRACADABRA 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==8 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--VERTICAL ILLUTIONS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==9 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MIRRORS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==10 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=26 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=11 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--16 PIXELS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==11 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=16 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--PERFECT REFLECT 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==12 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		t=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=16 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=15 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--ICELANDS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==13 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=15 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MIDNIGHT 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==14 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=23 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=12 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--ALONE SKULL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==15 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=15 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MADE IN HEAVEN 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==16 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--UNDERWATER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==17 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--ZUPAPIXELS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==18 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--SKULLOPEDIA 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==19 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=12 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=7 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=12 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--AFTER THE WAR 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==20 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--VIRUS KVARTIRUS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==21 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=11 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=24 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=13 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--END 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==22 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		t=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		l=143 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		s=143 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=-255 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=-255 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aeo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animx=-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=-2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		mset((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+((animy*8+(aniy//10))//8),1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		mset(((30*m%240)+(animx*8+(anix//10))//8)-1,(17*(m//8))+((animy*8+(aniy//10))//8)+1,1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		mset((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+((animy*8+(aniy//10))//8)+2,1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		mset(((30*m%240)+(animx*8+(anix//10))//8)+1,(17*(m//8))+((animy*8+(aniy//10))//8)+1,1)	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+level(m) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function TIC() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--MUSIC (For loop use t%(spd*rows*#patterns used)==0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--TITLE SCREEN 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==1 and t==0 then music(0,-1,-1,false) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--LEVELS 1-10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m>=2 and m<=11 and t==0 then	music(1,-1,-1,false) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--LEVELS 11-21 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m>=12 and m<=21 and t==0 then music(2,-1,-1,false) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--LEVELS 21-??? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m>=22 and t==0 then music(3) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--TIMER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if ptrig==0 then t=t+1 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--CREDITS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 --if t==(-0.3*60)+1 then return cls(10) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 --if t==(-0.2*60) then return cls() end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--if t==(-0.1*60) then return cls(10) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  --if t<(0*60) then return end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		map(0,0,30,17) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		print(t,0,0,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		print(et,0,6,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		fade_in(0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 if t==(3*60) or keyp(50) then et=t end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if t>(et+(3*60)) and et>=0 then  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			m=m+1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			t=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			et=-255 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		else  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			fade_out(et) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--TITLE SCREEN 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m==1 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		l=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--REMAP 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		cls() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		map(30*m%270,17*((m-1)//8),30,17,0,0,0,1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		function(tile) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile>=80 and tile<=111 and et==-255 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile*(t%38//19) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile>=80 and tile<=111 and et~=-255 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile*(t%10//5) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return tile 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		fade_in(0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if t<0.4*60 then return end  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			print("DEBUG: Press X/A and Y/S to switch levels",8,131) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			print(et,0,0,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if keyp(50) and et<=0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			music() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sfx(51,43,-1,0,15) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			et=t 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if t>(et+(3*60)) and et>=0 then  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			m=m+1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			level(m) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		else  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			fade_out(et) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--LEVEL DISPLAY 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m>1 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		fade_in(0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--REMAP 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		cls() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		map(30*m%240,17*(m//8),30,17,0,0,0,1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		function(tile) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile>=80 and tile<=111 and anix==0 and aniy==0 and px==0 and aepx==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile*(t%38//19) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==6 or tile==22 or tile==38 or tile==54 or tile==8 or tile==24 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(t%38//19) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if tile~=6 and tile~=22 and tile~=38 and tile~=54 and tile~=8 and tile~=24 and not (tile>=64 and tile<=79) then return tile end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  --PIXELS	DISPLAY 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		map(30*m%240,17*(m//8),30,17,0,0,0,1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		function(tile) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==64 or tile==72 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(t%20//2.5) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==65 or tile==73 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(((t+2.5)%20//2.5)-1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==66 or tile==74 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(((t+5)%20//2.5)-2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==67 or tile==75 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(((t+7.5)%20//2.5)-3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==68 or tile==76 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(((t+10)%20//2.5)-4) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==69 or tile==77 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(((t+12.5)%20//2.5)-5) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==70 or tile==78 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(((t+15)%20//2.5)-6) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if tile==71 or tile==79 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return tile+(((t+17.5)%20//2.5)-7) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--SKULLH LIMITS(1-28,1-14) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--skullh(12,10,0,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ --if btn(5) then	skullh(25,3,0,0) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--skullh(20,6,0,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--LEVEL CLEAR 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if px==0 and aepx==0 and anix==0 and aniy==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if et<0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 sfx(52,36,90,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			for i=0,29 do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				mset((30*m%240)+i,(17*(m//8)),0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+10,(17*(m//8)),91) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+11,(17*(m//8)),84) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+12,(17*(m//8)),101) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+13,(17*(m//8)),84) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+14,(17*(m//8)),91) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+16,(17*(m//8)),82) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+17,(17*(m//8)),91) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+18,(17*(m//8)),84) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+19,(17*(m//8)),80) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			mset((30*m%240)+20,(17*(m//8)),97) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			et=t 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if et>0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(257+(f*3),animx*8+(anix//10),animy*8+(aniy//10),0,1,f,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(265,aex,aey,0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			fade_out(et) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if t<et+(3*60) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 m=m+1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		t=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		level(m) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--STATUS DISPLAY 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	mset((30*m%240)+3,(17*(m//8)),112+l) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	mset((30*m%240)+7,(17*(m//8)),112+s) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+--GAME OVER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if l==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		map(210,119,30,17) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sfx(-1,-1,-1,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sfx(-1,-1,-1,1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sfx(-1,-1,-1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sfx(-1,-1,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if t==1 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			music(6,-1,-1,false) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		fade_in(0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if t<8*60 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		m=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		level() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		t=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--DEATH 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8)==6 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==151 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==152 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==153 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if et<0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sfx(56,45,-2,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sfx(60,45,-2,1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			et=t 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if et>0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(331+t%8//4,animx*8+(anix//10),animy*8+(aniy//10),0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(329+t%8//4,aex,aey,0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			fade_out(et) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if t<et+(3*60) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		l=l-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		t=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		level(m) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ --FALL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if not ((mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==1 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==2 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==17 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==18 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==10 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==11 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==26 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==27 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==5 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==37 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==48 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==49 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==16 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==32 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==5 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==37) and anix==0 and aniy==0 and strig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if ftrig==0 and l>0 then sfx(57,82,-1,0) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		ftrig=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		animy=animy+1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aniy=-80 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		spr(263+t%8//4,animx*8+(anix//10),animy*8+(aniy//10),0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--NOTHING 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if anix==0 and aniy==0 and t>(2*60) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if ftrig==1 and strig==0 then sfx(58,24,-1,0) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if strig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(256+c,animx*8+(anix//10),animy*8+(aniy//10),0,1,f,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(301+t%8//4,animx*8+(anix//10),animy*8+(aniy//10),0,1,f,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		btrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t<(2*60) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		spr((256+c)+((t%20//10)*15),animx*8+(anix//10),animy*8+(aniy//10),0,1,f,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if m>1 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--CONTROLS, COLLISION and SFX 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--UP(0),DOWN(1),LEFT(2),RIGHT(3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if strig==0 and t>(2*60) and ptrig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if btn(0) and (mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10))//8)==5 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10))//8)==37) and anix==0 and aniy==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				sfx(63,84,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				animy=animy-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				aniy=80 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if btn(1) and (mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==0 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==5 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==37) and anix==0 and aniy==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				sfx(63,84,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				animy=animy+1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				aniy=-80 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if btn(2) and anix==0 and aniy==0 and not ((mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==1 or (mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==2 or (mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==17 or (mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==18 or (mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==10 or (mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==11 or (mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==26 or (mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==27) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			--BRIDGE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if	mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==48 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==49 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				sfx(61,0,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				mset((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+((animy*8+(aniy//10))//8)+2,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				btrig=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				sfx(62,0,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			animx=animx-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			anix=80 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if btn(3) and anix==0 and aniy==0 and not ((mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==1 or (mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==2 or (mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==17 or (mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==18 or (mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==10 or (mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==11 or (mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==26 or (mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8))==27) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			ftrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			--BRIDGE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			ifmget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==48 or mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8)==49 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				sfx(61,0,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				mset((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+((animy*8+(aniy//10))//8)+2,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				btrig=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				sfx(62,0,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			animx=animx+1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			anix=-80 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--A/Z(4),B/X(5),X/A(6),Y/S(7)	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (btnp(4) or btnp(5)) and m>=2 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if s>0 and not (mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==1 or mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==2 or mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==16 or mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==17 or mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==18 or mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==10 or mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==11 or mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==26 or mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))==27) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				sfx(53,72,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				s=s-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				strig=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if s==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					sfx(55,31,-1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					sfx(59,60,-1,3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if btnp(6) and m<=21 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			m=m+1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			level(m) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if btnp(7) and m>=3 and m<=21 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			m=m-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			level(m) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if t>=2*60 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if keyp(50) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if ptrig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					sfx(51,43,-1,0,15) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					ptrig=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					pal(0.5) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					must=peek(0x13ffc) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					musf=peek(0x13ffd) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					musr=peek(0x13ffe) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					musl=peek(0x13fff) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					music() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					sfx(51,43,-1,0,15) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					ptrig=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					pal(1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					music(must,musf,musr,musl) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--MOVEMENT PROPERTIES 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if strig==1 and anix==0 and aniy==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if aeo==0 then strig=(aex)-(animx*8+(anix//10)) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if aeo==1 then strig=(aey)-(animy*8+(aniy//10)) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if strig~=1 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if strig<0 and ptrig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if aeo==0 then animx=animx-0.5 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if aeo==1 then animy=animy-0.5 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			strig=strig+4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if strig>0 and ptrig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if aeo==0 then animx=animx+0.5 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if aeo==1 then animy=animy+0.5 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			strig=strig-4 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if anix>0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if	btrig==1 then	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if m<=11 then spr(48,(animx*8)+8,(animy*8+(aniy//10))+16+(8-(math.abs(anix//10))),0) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if m>=12 then spr(49,(animx*8)+8,(animy*8+(aniy//10))+16+(8-(math.abs(anix//10))),0) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		c=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		f=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if ptrig==0 then anix=anix-8 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(257+t%8//2,animx*8+(anix//10),animy*8+(aniy//10),0,1,f,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if anix<0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if btrig==1 then	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if m<=11 then spr(48,(animx*8)-8,(animy*8+(aniy//10))+16+(8-(math.abs(anix//10))),0) end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if m>=12 then spr(49,(animx*8)-8,(animy*8+(aniy//10))+16+(8-(math.abs(anix//10))),0) end			 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			c=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			f=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if ptrig==0 then anix=anix+8 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				spr(257+t%8//2,animx*8+(anix//10),animy*8+(aniy//10),0,1,f,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if aniy>0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			c=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if ptrig==0 then aniy=aniy-8 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(261+t%6//3,animx*8+(anix//10),animy*8+(aniy//10),0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if aniy<0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			c=5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if ptrig==0 then aniy=aniy+8 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if not ((mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==1 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==2 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==17 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==18 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==10 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==11 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==26 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==27 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==5 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==37 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==48 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==49 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==16 or (mget((30*m%240)+(animx*8+(anix/10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8))==32) then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				spr(263+t%8//4,animx*8+(anix//10),animy*8+(aniy//10),0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if ftrig==1 then c=0 end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				spr(261+t%14//7,animx*8+(anix//10),animy*8+(aniy//10),0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--PIXEL COLLISION 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8)>=64 and mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8)<=71 and strig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		px=px-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sfx(54,72,-1,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		mset((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+((animy*8+(aniy//10))//8)+1,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--PHANTOM PIXEL COLLISION 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))>=72 and mget((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8))<=79 and strig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aepx=aepx-1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sfx(54,69,-1,0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		mset((30*m%240)+aex//8,(17*(m//8))+((aey+8)//8),0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--HERO DISPLAY 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--ALTER EGO DISPLAY 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if aeo==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		--120=ZX spectrum Mirrored, 116=NES Mirrored 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aex=120-((animx*8+(anix//10))-120) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aey=animy*8+(aniy//10) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if aeo==1 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aex=animx*8+(anix//10) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		aey=64-((animy*8+(aniy//10))-64) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if t>(2*60) then	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if strig==0 then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(265+t%8//2,aex,aey,0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spr(297+t%16//4,aex,aey,0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		spr(265+((t%20//10)*6),aex,aey,0,1,0,0,1,2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--DEBUG DISPLAY 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print("DEBUG",0,0,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--TIMER DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(t,0,6,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--SWAP ACTION INPUT DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if btn(4)==true or btn(5)==true then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		print("true",0,12,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		print("false",0,12,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MAP SCREEN DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(m,0,18,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--SWAP TRIGGER DEBUG	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(strig,22,18,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--SCREEN HERO SPR POSITION DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print((animx*8+(anix//10)),0,24,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print((animy*8+(aniy//10))+8,0,30,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--SCREEN ALTER EGO SPR POSITION DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(aex,22,24,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(aey+8,22,30,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MAP HERO SPR POSITION DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print((30*m%240)+(animx*8+(anix//10))//8,0,42,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print((17*(m//8))+((animy*8+(aniy//10))//8)+1,0,48,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MAP ALTER EGO SPR POSITION DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print((30*m%240)+aex//8,22,42,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print((17*(m//8))+((aey+8)//8),22,48,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MOVEMENT DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(anix//10,0,60,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(aniy//10,0,66,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--PIXEL AND PHANTOM PIXEL DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(px,22,60,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(aepx,22,66,15,true,1,true)	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MGET DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10))//8),22,78,15,true,1,true)	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(mget((30*m%240)+(animx*8+(anix//10)-8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8),0,84,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8),22,84,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(mget((30*m%240)+(animx*8+(anix//10)+8)//8,(17*(m//8))+(animy*8+(aniy//10)+8)//8),44,84,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(mget((30*m%240)+(animx*8+(anix//10))//8,(17*(m//8))+(animy*8+(aniy//10)+16)//8),22,90,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MUSIC SPEED DEBUG (0-7) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(peek(0x13e96),0,102) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(peek(0x13ec9),22,102) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(peek(0x13efc),0,108) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(peek(0x13f2f),22,108) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(peek(0x13f62),0,114) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(peek(0x13f95),22,114) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(peek(0x13fc8),0,120) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--print(peek(0x13ffb),22,120) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--MUSIC POSITION DEBUG 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print("track:",44,102,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(peek(0x13ffc),88,102,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print("frame:",44,108,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(peek(0x13ffd),88,108,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print("row  :",44,114,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(peek(0x13ffe),88,114,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print("loop :",44,120,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	print(peek(0x13fff),88,120,15,true,1,true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--wait: Time event (2 sec) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--if t<2*60 then return end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--stuff to do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--spr command: spr(id+t%nf//f,x,y,z,s,f,r,w,h) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--id=sprite id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--t=timer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--f=frames to wait for switch sprites 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--n=number of sprites to switch 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--Compare between f and n variables for speed 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--x=x position 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--y=y position 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--z=colorkey id to set alpha 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--s=scale 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--f=flip(Hflip(1),Vflip(2),HVflip(3)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--r=rotate(90 deg(1),180 deg(2),270 deg(3)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--w=width of composite sprite 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--h=height of composite sprite 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	--end of function TIC() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+end 
			 |