work on atelier 2, demo01, added listcolors to tray
This commit is contained in:
		
							parent
							
								
									e1c821c26f
								
							
						
					
					
						commit
						450b28da84
					
				
							
								
								
									
										
											BIN
										
									
								
								appdata/system/code.pod
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								appdata/system/code.pod
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										7
									
								
								appdata/system/startup.lua
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								appdata/system/startup.lua
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					--[[pod_format="raw",created="2024-08-07 14:22:44",modified="2024-08-07 14:25:39",revision=3]]
 | 
				
			||||||
 | 
					create_process(
 | 
				
			||||||
 | 
						"/listcolors.p64", 
 | 
				
			||||||
 | 
						{window_attribs = 
 | 
				
			||||||
 | 
							{workspace = "tooltray", x=2, y=2, width=64*4, height=16*8}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
							
								
								
									
										162
									
								
								atelier2.p64
									
									
									
									
									
								
							
							
						
						
									
										162
									
								
								atelier2.p64
									
									
									
									
									
								
							@ -5,7 +5,7 @@ version 2
 | 
				
			|||||||
:: map/
 | 
					:: map/
 | 
				
			||||||
:: sfx/
 | 
					:: sfx/
 | 
				
			||||||
:: art.lua
 | 
					:: art.lua
 | 
				
			||||||
--[[pod_format="raw",created="2024-03-31 01:52:08",modified="2024-04-23 02:42:09",revision=695]]
 | 
					--[[pod_format="raw",created="2024-03-31 01:52:08",modified="2024-04-29 15:31:52",revision=710]]
 | 
				
			||||||
function bob(s, x, y, w, h, t)
 | 
					function bob(s, x, y, w, h, t)
 | 
				
			||||||
	sspr(s, 0, 0, w, h, x+t/2, y-t/2, w-t, h+t)
 | 
						sspr(s, 0, 0, w, h, x+t/2, y-t/2, w-t, h+t)
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
@ -70,10 +70,11 @@ function wrap(str, line_length)
 | 
				
			|||||||
end
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function collides(position, object)
 | 
					function collides(position, object)
 | 
				
			||||||
	if DEBUG then
 | 
						add(collider_renders, object)
 | 
				
			||||||
		rect(object.left, object.top, object.right, object.bottom, 8)
 | 
						return position.x < object.right and 
 | 
				
			||||||
	end
 | 
							position.x > object.left and 
 | 
				
			||||||
	return position.x < object.right and position.x > object.left and position.y > object.top and position.y < object.bottom
 | 
							position.y > object.top and 
 | 
				
			||||||
 | 
							position.y < object.bottom
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
:: cabinet.lua
 | 
					:: cabinet.lua
 | 
				
			||||||
--[[pod_format="raw",created="2024-04-03 19:46:51",modified="2024-04-23 02:36:18",revision=694]]
 | 
					--[[pod_format="raw",created="2024-04-03 19:46:51",modified="2024-04-23 02:36:18",revision=694]]
 | 
				
			||||||
@ -337,7 +338,7 @@ function Glow:update()
 | 
				
			|||||||
end
 | 
					end
 | 
				
			||||||
:: gfx/0.gfx
 | 
					:: gfx/0.gfx
 | 
				
			||||||
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTAzLTI5IDAxOjE0OjUxIixtb2RpZmllZD0iMjAyNC0w
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTAzLTI5IDAxOjE0OjUxIixtb2RpZmllZD0iMjAyNC0w
 | 
				
			||||||
NC0yMyAwMzoxOTo0NSIscmV2aXNpb249MTI2NF1dbHo0ANMdAAAZZwAA8Rp7WzBdPXtibXA9cHh1
 | 
					NC0yOSAxNzo1MDoyMSIscmV2aXNpb249MTI4Nl1dbHo0AGAeAAAZZwAA8Rp7WzBdPXtibXA9cHh1
 | 
				
			||||||
AEMgEBAE8PAsZmxhZ3M9MCxwYW5feD0wLjM3NQwA_wJ5PS0wLjEyNSx6b29tPTV9LDoAkCR6cAoP
 | 
					AEMgEBAE8PAsZmxhZ3M9MCxwYW5feD0wLjM3NQwA_wJ5PS0wLjEyNSx6b29tPTV9LDoAkCR6cAoP
 | 
				
			||||||
HU8eCgcAcD8ODx4KYBoJAP8CDRpQCh8dPw4dClAKDx1fDg0IAAT-Aw8eClAKDl8ODgpQCn4KUJrw
 | 
					HU8eCgcAcD8ODx4KYBoJAP8CDRpQCh8dPw4dClAKDx1fDg0IAAT-Aw8eClAKDl8ODgpQCn4KUJrw
 | 
				
			||||||
A4sAJqUGOrAKHxMKsAoeBADwAKAaHhqQCgMOEQqQCgMPEgcAPQ4dAQYArw4KkAo_CpBa8AV9ACYQ
 | 
					A4sAJqUGOrAKHxMKsAoeBADwAKAaHhqQCgMOEQqQCgMPEgcAPQ4dAQYArw4KkAo_CpBa8AV9ACYQ
 | 
				
			||||||
@ -417,66 +418,69 @@ F25gBuBeoBWgLQINsDKALgeeIELAjjA_wELAQnAeB66CLgIOIl4H2gDggi0A-gPiHgeeAg0yPhLY
 | 
				
			|||||||
APAdws5SPRJtAt4CbTINYvABEi1yrm0SLWItAp5STaLwAXIdMn4CbVJdIj1ego3ZAP4BPQ7yAd2y
 | 
					APAdws5SPRJtAt4CbTINYvABEi1yrm0SLWItAp5STaLwAXIdMn4CbVJdIj1ego3ZAP4BPQ7yAd2y
 | 
				
			||||||
DUKd8BdyTfIETToFDzIHGA86AP------------8kAY4d-wAeFzbwCgcwBvALBhAG8AwFAA-wFwsG
 | 
					DUKd8BdyTfIETToFDzIHGA86AP------------8kAY4d-wAeFzbwCgcwBvALBhAG8AwFAA-wFwsG
 | 
				
			||||||
MAbwCBZQFvAFBx8ccAbwAwcvGi8cED4G8AEHbxoeTQbwAAfdBQBzHQutBvAABgcA-wgtC50G8AEG
 | 
					MAbwCBZQFvAFBx8ccAbwAwcvGi8cED4G8AEHbxoeTQbwAAfdBQBzHQutBvAABgcA-wgtC50G8AEG
 | 
				
			||||||
vQbwAwadBvAFFl0W8AhWwBIVJQK8Id-2MPAPBv8aMAbwDgb_BgD-LlEwnxjwAAkAUw0GUAYNDAAS
 | 
					vQbwAwadBvAFFl0W8AhWwBIVJQAuEfF6--r2BvA6Bv8aBAbwORb_BAbwOBb_BQbwNxb_BhbwNRb_
 | 
				
			||||||
nQgAEGD8ARkDCgASthAAE5AYAE_gBvACCAAII2ZAEAA-UAYwCgAdUFbwA-Yw8gEfYy8CFB8yXQMn
 | 
					CAbwNBb_CQbwMxb_CwbwMRb_DBbwLib_DhbwLBb_EhbwKCb_FBbwJhb_FxbwJBb_GRbwISb_Gxbw
 | 
				
			||||||
DzoA-----------------9nwI2CABPD-JL8U8ED_AvA8-gbwOT8V-gTwNz3_BfA1Tf4H8DNN-gjw
 | 
					Hxb_HxbwHBb_ISbwGRb_JBbwFxb_JhbwFRb_KQbwFAb_KhbwEhb_KxbwEQb_LQYGAHYW8A8G-i8G
 | 
				
			||||||
Mk3_CvAwTf4L8C9dBQD4AE3_DPAuXf4N8C1N-g3wLgUAMwzwLwUAMQsPDwcAEDwmAPAMCTzwLBxN
 | 
					BgBPMAbwDgYAmVEwnxjwAAkAUw0GUAYNDAASnQgAEGD8ARkDCgASthAAE5AYAE_gBvACCAAII2ZA
 | 
				
			||||||
-gg88C4cPf4HLA8X8DFN-gULHAsMCQDwrAQMCwwLDPAzTb4tLg8ZHAsc8DNdjj0uGjzwNV1ObR4q
 | 
					EAA-UAYwCgAdUFbwA-Yw8gEfYy8CFB8yXQMnDzoA-----------------9nwI2CABPD-JL8U8ED_
 | 
				
			||||||
PPA2-QFKPPA3zXos8DkKTdoc8Dv6AwzwO5oMivA7amx68DpafHrwOVofHAxpavA4WqlaOfA0WslK
 | 
					AvA8-gbwOT8V-gTwNz3_BfA1Tf4H8DNN-gjwMk3_CvAwTf4L8C9dBQD4AE3_DPAuXf4N8C1N-g3w
 | 
				
			||||||
OfA0SgDpKknwMyogmS8QKQpZ8DQKSEn4BPAw_BHwLmgPCvgM8CtoFygn_AfwKfgDNzgXqPAoJ-gM
 | 
					LgUAMwzwLwUAMQsPDwcAEDwmAPAMCTzwLBxN-gg88C4cPf4HLA8X8DFN-gULHAsMCQDwrAQMCwwL
 | 
				
			||||||
B7jwIgf4EieI8CH4FgeI8CD4GAd48CD4GSc48B-4IfAf_CLwHfggBxgGAPEHFxjwHPghByjwG-gl
 | 
					DPAzTb4tLg8ZHAsc8DNdjj0uGjzwNV1ObR4qPPA2-QFKPPA3zXos8DkKTdoc8Dv6AwzwO5oMivA7
 | 
				
			||||||
8Bv4JvAaKAn4IgYA8CMOCfgE8BoYCfgOGSgJ_ADwGRgJ_A8ZGAmYB1jwGAgZ_BAJKAmIB1jwGQn4
 | 
					amx68DpafHrwOVofHAxpavA4WqlaOfA0WslKOfA0SgDpKknwMyogmS8QKQpZ8DQKSEn4BPAw_BHw
 | 
				
			||||||
ERkoCRgJWBkAVAn4Eik4CwDxAhQZGBlYF1jwFwn4FRkIGWgHCwCBGBno8BYJ_Bk_AGQUGfgVGRgL
 | 
					LmgPCvgM8CtoFygn_AfwKfgDNzgXqPAoJ-gMB7jwIgf4EieI8CH4FgeI8CD4GAd48CD4GSc48B-4
 | 
				
			||||||
AFAUCTgZ6AkAEBpyAIITGfgaGYgXOAkARvgA8BIIABEbiACBEQn4HAmoB0gJACQZmAkAsPgB8BAZ
 | 
					IfAf_CLwHfggBxgGAPEHFxjwHPghByjwG-gl8Bv4JvAaKAn4IgYA8CMOCfgE8BoYCfgOGSgJ_ADw
 | 
				
			||||||
_BspqAc4CQCmHBm4BzjwDwn4HQkAocgHGPAQCfgcKdhOACApyGUAMBOpuH0A8AEPSXgZqPAVGfgO
 | 
					GRgJ_A8ZGAmYB1jwGAgZ_BAJKAmIB1jwGQn4ERkoCRgJWBkAVAn4Eik4CwDxAhQZGBlYF1jwFwn4
 | 
				
			||||||
GbgZiPAXQgDyAQggGPAaKfgbGQjwHyn4HAkHABAZBgDwJBo5DwzwHin4GFkG8B8Z_BdpLfAdGfgU
 | 
					FRkIGWgHCwCBGBno8BYJ_Bk_AGQUGfgVGRgLAFAUCTgZ6AkAEBpyAIITGfgaGYgXOAkARvgA8BII
 | 
				
			||||||
aQYJTfAcGfgReQZt8B4J_A6ZbRXwHhn4CpmNJQgAUAapFm1VCQDyQgK5Fn2F8B4ZyMkGjcXwHgmY
 | 
					ABEbiACBEQn4HAmoB0gJACQZmAkAsPgB8BAZ_BspqAc4CQCmHBm4BzjwDwn4HQkAocgHGPAQCfgc
 | 
				
			||||||
uc3V8B8JWKnd9QLwH8kGzfUFAAXwHpkVjfUN8B5prfUPAAXwHQ0ZvfUV8Bvd9RjwGY0FDfUc8Bkt
 | 
					KdhOACApyGUAMBOpuH0A8AEPSXgZqPAVGfgOGbgZiPAXQgDyAQggGPAaKfgbGQjwHyn4HAkHABAZ
 | 
				
			||||||
9STwGT0FDQIAovUc8Bgt9SbwFy0QAEMFDfUdEgAGJACkHvAVPfUo8BQtFRIAhiDwFC31KvASJACF
 | 
					BgDwJBo5DwzwHin4GFkG8B8Z_BdpLfAdGfgUaQYJTfAcGfgReQZt8B4J_A6ZbRXwHhn4CpmNJQgA
 | 
				
			||||||
IvASLfUs8BASAAEUAIUQLfUsAAXwD14AABYAmQ8G8A899SoAFRgAA1gAiw8t9S0ABfAM7wNuLTI5
 | 
					UAapFm1VCQDyQgK5Fn2F8B4ZyMkGjcXwHgmYuc3V8B8JWKnd9QLwH8kGzfUFAAXwHpkVjfUN8B5p
 | 
				
			||||||
LjEwHTlIMzguNzQ5D5ZDAAEEBPEt---DbxTwRe7wPD8Vfile8Dhdjile8Dc9DkluCW7wNj0OWe7w
 | 
					rfUPAAXwHQ0ZvfUV8Bvd9RjwGY0FDfUc8Bkt9STwGT0FDQIAovUc8Bgt9SbwFy0QAEMFDfUdEgAG
 | 
				
			||||||
NT0OaW4KbvA0HT5p7vA0DU5Z-gDwNG5JBgDwhClurxnwNN7c8DQZjvwB8DQZbvwDEB8P8DAZXvwD
 | 
					JACkHvAVPfUo8BQtFRIAhiDwFC31KvASJACFIvASLfUs8BASAAEUAIUQLfUsAAXwD14AABYAmQ8G
 | 
				
			||||||
EBvwMRle-AILACvwMW6c2-Axbozb8DJejJsfHyvwMl58iyg78DJebEsIGygnG-AzXlwrOEsfDgcL
 | 
					8A899SoAFRgAA1gAiw8t9S0ABfAM7wNuLTI5LjEwHTlIMzguNzQ5D5ZDAAEEBPEt---DbxTwRe7w
 | 
				
			||||||
8DReLB8XGyhLCBsfDivwMx57HxcYCxcPDisYW-AzDpsPFwsnHw47GEvwMx5LHxdLFx8OSwhL8DM_
 | 
					PD8Vfile8Dhdjile8Dc9DkluCW7wNj0OWe7wNT0OaW4KbvA0HT5p7vA0DU5Z-gDwNG5JBgDwhClu
 | 
				
			||||||
Ky8XuxYA8CcNTgwLFrsIW-AzPR4s6xgr8DM9DhwALKsoO-AzLQ5siyhLHxzwNYxrGFsGDxAfHPA0
 | 
					rxnwNN7c8DQZjvwB8DQZbvwDEB8P8DAZXvwDEBvwMRle-AILACvwMW6c2-Axbozb8DJejJsfHyvw
 | 
				
			||||||
jADLBi8KAPJJMqyrFgU-EBXwMQwAfKsGG0Ql8DCc20QVFPAvrMtEJZTwJ4xFixUkRaTwJIwFNBV7
 | 
					Ml58iyg78DJebEsIGygnG-AzXlwrOEsfDgcL8DReLB8XGyhLCBsfDivwMx57HxcYCxcPDisYW-Az
 | 
				
			||||||
JQQF9AHwInwVRCV7JfQBFfAgfAWEBWsl9AMF8CBsBZQFaxr0BfAgXAoA8UEG8B9cBZQVawoF9Abw
 | 
					DpsPFwsnHw47GEvwMx5LHxdLFx8OSwhL8DM_Ky8XuxYA8CcNTgwLFrsIW-AzPR4s6xgr8DM9DhwA
 | 
				
			||||||
HkwABZQVWw8MCgX0B-AeLAAldAUEFTsTGvQH8CEVBBVkBRQFSgUapAW08B8VChQlRAUUGlQKpAXE
 | 
					LKsoO-AzLQ5siyhLHxzwNYxrGFsGDxAfHPA0jADLBi8KAPJJMqyrFgU-EBXwMQwAfKsGG0Ql8DCc
 | 
				
			||||||
8BwVAwpEJSQFpA4A8AYaFQQKdCUEBbQKlAXU8BgVxCXECoQKAFAFAwrEFQwA8Ark8BYFAwr0FwX0
 | 
					20QVFPAvrMtEJZTwJ4xFixUkRaTwJIwFNBV7JQQF9AHwInwVRCV7JfQBFfAgfAWEBWsl9AMF8CBs
 | 
				
			||||||
APAVBQr0GBX0APATFfQaCABgEgX0EgqECgDzABEF9BMKdAAF9ALwDwX0FAsAcA4F9BUKZBALABAN
 | 
					BZQFaxr0BfAgXAoA8UEG8B9cBZQVawoF9AbwHkwABZQVWw8MCgX0B-AeLAAldAUEFTsTGvQH8CEV
 | 
				
			||||||
CwARdAsAQQwF9BYhADQD8AsLAKEE8AoF9B8AFfQDCQAQEB0AMgr0IAgAUNQV9BAQGwDyAQgF5AX0
 | 
					BBVkBRQFSgUapAW08B8VChQlRAUUGlQKpAXE8BwVAwpEJSQFpA4A8AYaFQQKdCUEBbQKlAXU8BgV
 | 
				
			||||||
CApkIBX0AvAI9AANADIl9AENAIUJCkQQFRQl5A4AQQAVRAUOAGAV9AgKRAA6ATAI9AEbAB80DQAC
 | 
					xCXECoQKAFAFAwrEFQwA8Ark8BYFAwr0FwX0APAVBQr0GBX0APATFfQaCABgEgX0EgqECgDzABEF
 | 
				
			||||||
wRX0DQAF9AXwCPQDBQsAMwTwCQsAUAQq1PALDACADCAaBBq08AwMAMAICiQQCjQalPAN9AJjAKAk
 | 
					9BMKdAAF9ALwDwX0FAsAcA4F9BUKZBALABANCwARdAsAQQwF9BYhADQD8AsLAKEE8AoF9B8AFfQD
 | 
				
			||||||
AApUCoTwDvQCVwAADgBAGmTwDw4AkgoKJBVUClTwEA0AYTQFVBo0BQ4A8QQEdfQBCjQFZAokBfAR
 | 
					CQAQEB0AMgr0IAgAUNQV9BAQGwDyAQgF5AX0CApkIBX0AvAI9AANADIl9AENAIUJCkQQFRQl5A4A
 | 
				
			||||||
5FVkBfQADwCBFAXwEvQNBeQNAHAEBfATBfQMHACzJAVkCgXwFAX0CxUOAMHwFQX0DBrkCiQFClQN
 | 
					QQAVRAUOAGAV9AgKRAA6ATAI9AEbAB80DQACwRX0DQAF9AXwCPQDBQsAMwTwCQsAUAQq1PALDACA
 | 
				
			||||||
AHALOvQCevAXaQBgFFpE6-AYCgBSZBoU6xYLAIB0CgTbBivwGaUAVIQK6xYbFwBBywYrBg0AUQkK
 | 
					DCAaBBq08AwMAMAICiQQCjQalPAN9AJjAKAkAApUCoTwDvQCVwAADgBAGmTwDw4AkgoKJBVUClTw
 | 
				
			||||||
dArbDQASFyUAAA0AMQvwGAwAhGs-BTsGGwYLKQAxS2IrDwABUABEVBorgg8AUdS1WuIbDABiGgVk
 | 
					EA0AYTQFVBo0BQ4A8QQEdfQBCjQFZAokBfAR5FVkBfQADwCBFAXwEvQNBeQNAHAEBfATBfQMHACz
 | 
				
			||||||
dfIOGADyEhtlbfIOOwYLAhvwGo0CDfISKwYLQvAZLfIcC2LwGT0CDQIAEPJIBVLyJfAYLRAAgAIN
 | 
					JAVkCgXwFAX0CxUOAMHwFQX0DBrkCiQFClQNAHALOvQCevAXaQBgFFpE6-AYCgBSZBoU6xYLAIB0
 | 
				
			||||||
8h7wFy3ySAUCEAABEgAwFT3ySAUUEhIAAEgFEPJIBQIQADACDfJIBRDySAUnAg0UAGUQLfIu8A9c
 | 
					CgTbBivwGaUAVIQK6xYbFwBBywYrBg0AUQkKdArbDQASFyUAAA0AMQvwGAwAhGs-BTsGGwYLKQAx
 | 
				
			||||||
AJ8CDfIk8A498i4oBSwPoAknD4gK-yAg-xTEGvEBfPQ--gEE-xU9BP4BBP08DgcAIDseBwBBLfQ3
 | 
					S2IrDwABUABEVBorgg8AUdS1WuIbDABiGgVkdfIOGADyEhtlbfIOOwYLAhvwGo0CDfISKwYLQvAZ
 | 
				
			||||||
LggATwT_NQQKAP80BFIBIfQ4YgExHfQ6cQFyDfQ9-gH0P70wMf--6JQBH-2TAf92H1z2GyID5gny
 | 
					LfIcC2LwGT0CDQIAEPJIBVLyJfAYLRAAgAIN8h7wFy3ySAUCEAABEgAwFT3ySAUUEhIAAEgFEPJI
 | 
				
			||||||
KxjfFvBALr8PHvA9Lu0e8Dse-QIO8Doe-QMe8DkO-QMfEQ4N8DUcHs18DhzwMRwAHA7dDA0cDVzw
 | 
					BQIQADACDfJIBRDySAUnAg0UAGUQLfIu8A9cAJ8CDfIk8A498i4oBSwPoAknD4gK-yAg-xTEGvEB
 | 
				
			||||||
MUwKAPYGHA0MDgzwMQwgHv0BDD0MDvA2Dv0IBgBgLU4dTm0uDwCwBR4NDvA3Dl0O-QAIAEBNHv0B
 | 
					fPQ--gEE-xU9BP4BBP08DgcAIDseBwBBLfQ3LggATwT_NQQKAP80BFIBIfQ4YgExHfQ6cQFyDfQ9
 | 
				
			||||||
IQBRPR49Ds0qAFAeTQ69HgkAUA5dDp0KLQDwDR4dPi0OjQou8DgOTU6dCg7wOR79BA7wOg5NPq0H
 | 
					-gH0P70wMf--6JQBH-2TAf92H1z2GyID5gnyKxjfFvBALr8PHvA9Lu0e8Dse-QIO8Doe-QMe8DkO
 | 
				
			||||||
APGALQ5tDm0e8DsOHR5NHl0_8DoeHX5NHh0u8Dk_QH5NHvBBHs0ODQLwPx7NDxhi8DourQtyG-A5
 | 
					-QMfEQ4N8DUcHs18DhzwMRwAHA7dDA0cDVzwMUwKAPYGHA0MDgzwMQwgHv0BDD0MDvA2Dv0IBgBg
 | 
				
			||||||
Dp0bYjvwNAs_nQtiGw0r8DICCw0enRtSGz0CC-AwEgu9G1IbXQIL8CwNCyIbrQtSG30CC-AqHQsy
 | 
					LU4dTm0uDwCwBR4NDvA3Dl0O-QAIAEBNHv0BIQBRPR49Ds0qAFAeTQ69HgkAUA5dDp0KLQDwDR4d
 | 
				
			||||||
G30rQhudAgsC8CgdC1IrPRtiC70bAvAnHQtyW2IbzQsLAPIA8gQb3RvwJi0L8gMb7QILCgCwC-0A
 | 
					Pi0OjQou8DgOTU6dCg7wOR79BA7wOg5NPq0HAPGALQ5tDm0e8DsOHR5NHl0_8DoeHX5NHh0u8Dk_
 | 
				
			||||||
G-AlPQvyAhsKAPAEAggX8BA9C-IBG-0CC-ACCDfwDg4A8QAL-QML8AMIN-ANPQvyABsOAEAYR-AL
 | 
					QH5NHvBBHs0ODQLwPx7NDxhi8DourQtyG-A5Dp0bYjvwNAs_nQtiGw0r8DICCw0enRtSGz0CC-Aw
 | 
				
			||||||
DgBQC-0CDg0eAGAHGDfwCU0SADFNDr0TAEwYBxgnEwBIAFfwCBIAYQQIEFfwBxIAIz0eEgByIEcA
 | 
					Egu9G1IbXQIL8CwNCyIbrQtSG30CC-AqHQsyG30rQhudAgsC8CgdC1IrPRtiC70bAvAnHQtyW2Ib
 | 
				
			||||||
LxXwAxUAIg7NFQA5MEcpEwCwAvADCDA3KQ3wAl2UABUtFQBwQAdJHfABXbcAUB0ezQ4bPABBWa0g
 | 
					zQsLAPIA8gQb3RvwJi0L8gMb7QILCgCwC-0AG-AlPQvyAhsKAPAEAggX8BA9C-IBG-0CC-ACCDfw
 | 
				
			||||||
vREAIQ7dEQBJIEn9DBAAMCn9DhAA0hIO3Q4CC-AK-Q8L8gQMADoL-Q4MABEFCwBUDI0g-QENAPQK
 | 
					Dg4A8QAL-QML8AMIN-ANPQvyABsOAEAYR-ALDgBQC-0CDg0eAGAHGDfwCU0SADFNDr0TAEwYBxgn
 | 
				
			||||||
DW3wBBvyBc0eAgvwDk3wBQvyBs0OEgvwKAkAcB0OvfIFvR4KAPACXhBObcLNDiIL8CANAG69ct0L
 | 
					EwBIAFfwCBIAYQQIEFfwBxIAIz0eEgByIEcALxXwAxUAIg7NFQA5MEcpEwCwAvADCDA3KQ3wAl2U
 | 
				
			||||||
APEMGmVuC-0RHiIL8BYVDkVOEC4L-REOMgvwFYWeCgDwTfAWhU4AHhAL-RAeIvAXhW4tC-0PHjIA
 | 
					ABUtFQBwQAdJHfABXbcAUB0ezQ4bPABBWa0gvREAIQ7dEQBJIEn9DBAAMCn9DhAA0hIO3Q4CC-AK
 | 
				
			||||||
C-AV1R0Q-REOQivwFLVgC-0NLjJL8BNlECVgCxL9CS6SK-AShYALMv0EPtIb8BFVsAti3T7yAhvw
 | 
					-Q8L8gQMADoL-Q4MABEFCwBUDI0g-QENAPQKDW3wBBvyBc0eAgvwDk3wBQvyBs0OEgvwKAkAcB0O
 | 
				
			||||||
EFWwC-ICPvIGK-AOCwAiHRsIAEAeG-ANCAAgHwsIAKbyIBvwDFWg8iILBwBgsPIhG-ALJABnIBvw
 | 
					vfIFvR4KAPACXhBObcLNDiIL8CANAG69ct0LAPEMGmVuC-0RHiIL8BYVDkVOEC4L-REOMgvwFYWe
 | 
				
			||||||
C2WgCAA-C-AMCAABAEwAAAgAYR4L8A9VoGwAAQgAEByHAPAAoAvyGxvwEUXAC-IZG-ASCABAGBvw
 | 
					CgDwTfAWhU4AHhAL-RAeIvAXhW4tC-0PHjIAC-AV1R0Q-REOQivwFLVgC-0NLjJL8BNlECVgCxL9
 | 
				
			||||||
EwgAQBcb8BQIAEEVK-AVCAA-C-AXCAANITXQCABvFkXgC-IUCAAUIxMbCABPCxLwFQkADR8bRAAA
 | 
					CS6SK-AShYALMv0EPtIb8BFVsAti3T7yAhvwEFWwC-ICPvIGK-AOCwAiHRsIAEAeG-ANCAAgHwsI
 | 
				
			||||||
YvAA8hTwFwcAHwPyBBUPyAgnDzoA---------------3UG09NX19
 | 
					AKbyIBvwDFWg8iILBwBgsPIhG-ALJABnIBvwC2WgCAA-C-AMCAABAEwAAAgAYR4L8A9VoGwAAQgA
 | 
				
			||||||
 | 
					EByHAPAAoAvyGxvwEUXAC-IZG-ASCABAGBvwEwgAQBcb8BQIAEEVK-AVCAA-C-AXCAANITXQCABv
 | 
				
			||||||
 | 
					FkXgC-IUCAAUIxMbCABPCxLwFQkADR8bRAAAYvAA8hTwFwcAHwPyBBUPyAgnDzoA------------
 | 
				
			||||||
 | 
					---3UG09NX19
 | 
				
			||||||
:: gfx/.info.pod
 | 
					:: gfx/.info.pod
 | 
				
			||||||
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTAzLTI5IDAxOjE0OjUxIixzdG9yZWQ9IjIwMjQtMDMt
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTAzLTI5IDAxOjE0OjUxIixzdG9yZWQ9IjIwMjQtMDMt
 | 
				
			||||||
MjkgMDE6MTQ6NTEiXV1sejQABAAAAAMAAAAwbmls
 | 
					MjkgMDE6MTQ6NTEiXV1sejQABAAAAAMAAAAwbmls
 | 
				
			||||||
:: library.lua
 | 
					:: library.lua
 | 
				
			||||||
--[[pod_format="raw",created="2024-04-10 00:24:20",modified="2024-04-23 03:19:45",revision=180]]
 | 
					--[[pod_format="raw",created="2024-04-10 00:24:20",modified="2024-04-29 16:05:11",revision=200]]
 | 
				
			||||||
plant_descriptions = {
 | 
					plant_descriptions = {
 | 
				
			||||||
[-1]={{"i don't know what that is. where did you find this?"}},
 | 
					[-1]={{"i don't know what that is. where did you find this?"}},
 | 
				
			||||||
[13]={{"these are chives. are we sure this is for alchemy?"}},
 | 
					[13]={{"these are chives. are we sure this is for alchemy?"}},
 | 
				
			||||||
@ -502,7 +506,7 @@ book_pages = {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
:: main.lua
 | 
					:: main.lua
 | 
				
			||||||
--[[pod_format="raw",created="2024-04-02 02:59:37",modified="2024-04-23 03:19:45",revision=1131]]
 | 
					--[[pod_format="raw",created="2024-04-02 02:59:37",modified="2024-04-29 15:34:08",revision=1153]]
 | 
				
			||||||
-- this is atelier hester!
 | 
					-- this is atelier hester!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
-- except for the one line in _init that does change_screen(shop_screen)
 | 
					-- except for the one line in _init that does change_screen(shop_screen)
 | 
				
			||||||
@ -532,6 +536,8 @@ animations = {}
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
script = {}
 | 
					script = {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					collider_renders = {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function _init()
 | 
					function _init()
 | 
				
			||||||
	vid(3)
 | 
						vid(3)
 | 
				
			||||||
	change_scene(shop_screen)
 | 
						change_scene(shop_screen)
 | 
				
			||||||
@ -549,6 +555,13 @@ function _draw()
 | 
				
			|||||||
		print("animations: "..#animations, 0,0,0)
 | 
							print("animations: "..#animations, 0,0,0)
 | 
				
			||||||
		rectfill(0,10,90,20,7)
 | 
							rectfill(0,10,90,20,7)
 | 
				
			||||||
		print("script nodes: "..#script, 0,10, 0)
 | 
							print("script nodes: "..#script, 0,10, 0)
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							for r in all(collider_renders) do
 | 
				
			||||||
 | 
								rect(r.left, r.top, r.right, r.bottom, 9)
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
							while #collider_renders > 0 do
 | 
				
			||||||
 | 
								deli(collider_renders)
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
	end
 | 
						end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -691,7 +704,7 @@ function Conversation:after()
 | 
				
			|||||||
	change_scene(self.behind)
 | 
						change_scene(self.behind)
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
:: s_drawer.lua
 | 
					:: s_drawer.lua
 | 
				
			||||||
--[[pod_format="raw",created="2024-04-05 00:59:36",modified="2024-04-23 03:19:45",revision=358]]
 | 
					--[[pod_format="raw",created="2024-04-05 00:59:36",modified="2024-04-29 15:59:50",revision=379]]
 | 
				
			||||||
DrawerScene = {
 | 
					DrawerScene = {
 | 
				
			||||||
	extension = 0,
 | 
						extension = 0,
 | 
				
			||||||
	behind = nil,
 | 
						behind = nil,
 | 
				
			||||||
@ -739,7 +752,6 @@ end
 | 
				
			|||||||
function DrawerScene:update()
 | 
					function DrawerScene:update()
 | 
				
			||||||
	self.interior_collider.bottom = self.extension
 | 
						self.interior_collider.bottom = self.extension
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (btnp(5) or btnp(4)) and not collides(self.fairy, self.interior_collider) then 
 | 
						if (btnp(5) or btnp(4)) and not collides(self.fairy, self.interior_collider) then 
 | 
				
			||||||
		play_script({
 | 
							play_script({
 | 
				
			||||||
			Script.len(function(s)
 | 
								Script.len(function(s)
 | 
				
			||||||
@ -790,7 +802,7 @@ function draw_drawer(distance, inset)
 | 
				
			|||||||
	spr(11, 120-16, distance+10+1)
 | 
						spr(11, 120-16, distance+10+1)
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
:: s_shop.lua
 | 
					:: s_shop.lua
 | 
				
			||||||
--[[pod_format="raw",created="2024-04-05 14:55:27",modified="2024-04-23 03:19:45",revision=394]]
 | 
					--[[pod_format="raw",created="2024-04-05 14:55:27",modified="2024-04-29 17:50:21",revision=430]]
 | 
				
			||||||
-- this manages the main shop interface, where you look at the cupboard and plantss
 | 
					-- this manages the main shop interface, where you look at the cupboard and plantss
 | 
				
			||||||
-- and sstuff.
 | 
					-- and sstuff.
 | 
				
			||||||
include("art.lua")
 | 
					include("art.lua")
 | 
				
			||||||
@ -799,7 +811,7 @@ include("cabinet.lua")
 | 
				
			|||||||
include("library.lua")
 | 
					include("library.lua")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cabinet = Cabinet:new(40, 10, 2)
 | 
					cabinet = Cabinet:new(40, 10, 2)
 | 
				
			||||||
fairy = Fairy:new()
 | 
					--fairy = Fairy:new()
 | 
				
			||||||
alchemist_sprite = 192
 | 
					alchemist_sprite = 192
 | 
				
			||||||
alchemist_bob = 0
 | 
					alchemist_bob = 0
 | 
				
			||||||
customer_sprite = 0
 | 
					customer_sprite = 0
 | 
				
			||||||
@ -825,7 +837,7 @@ for i=1,3 do
 | 
				
			|||||||
	}
 | 
						}
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function shop_screen:draw(hide_fairy)
 | 
					function shop_screen:draw()
 | 
				
			||||||
	cls()
 | 
						cls()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	cabinet:draw()	
 | 
						cabinet:draw()	
 | 
				
			||||||
@ -860,13 +872,9 @@ function shop_screen:draw(hide_fairy)
 | 
				
			|||||||
		bob(customer_sprite, 240-96, 7, 96, 128, customer_bob)
 | 
							bob(customer_sprite, 240-96, 7, 96, 128, customer_bob)
 | 
				
			||||||
	end
 | 
						end
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	if not hides_fairy then self.fairy:draw() end
 | 
						self.fairy:draw()
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	draw_door(door_open)
 | 
						draw_door(door_open)
 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	for idx, box in ipairs(self.tray_slots) do
 | 
					 | 
				
			||||||
		if collides(self.fairy, box) then end
 | 
					 | 
				
			||||||
	end
 | 
					 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function draw_counter(height)
 | 
					function draw_counter(height)
 | 
				
			||||||
@ -1317,9 +1325,7 @@ connect with people?"
 | 
				
			|||||||
definitely overly preachy but i like that
 | 
					definitely overly preachy but i like that
 | 
				
			||||||
:: .info.pod
 | 
					:: .info.pod
 | 
				
			||||||
b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTIzIDAxOjEzOjI4IixydW50aW1lPTUsc3RvcmVk
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA0LTIzIDAxOjEzOjI4IixydW50aW1lPTUsc3RvcmVk
 | 
				
			||||||
PSIyMDI0LTA0LTIzIDAzOjE5OjQ1Iix3b3Jrc3BhY2VzPXt7bG9jYXRpb249Im1haW4ubHVhIzUy
 | 
					PSIyMDI0LTA0LTI5IDE3OjUwOjIxIix3b3Jrc3BhY2VzPXt7bG9jYXRpb249InNfc2hvcC5sdWEj
 | 
				
			||||||
Iix3b3Jrc3BhY2VfaW5kZXg9MX0se2xvY2F0aW9uPSJsaWJyYXJ5Lmx1YSM2Iix3b3Jrc3BhY2Vf
 | 
					MSIsd29ya3NwYWNlX2luZGV4PTF9LHtsb2NhdGlvbj0iZ2Z4LzAuZ2Z4Iix3b3Jrc3BhY2VfaW5k
 | 
				
			||||||
aW5kZXg9MX0se2xvY2F0aW9uPSJzX3Nob3AubHVhIzMwIix3b3Jrc3BhY2VfaW5kZXg9MX0se2xv
 | 
					ZXg9Mn19XV1sejQABAAAAAMAAAAwbmls
 | 
				
			||||||
Y2F0aW9uPSJzX2RyYXdlci5sdWEjNjQiLHdvcmtzcGFjZV9pbmRleD0xfSx7bG9jYXRpb249Imdm
 | 
					 | 
				
			||||||
eC8wLmdmeCIsd29ya3NwYWNlX2luZGV4PTJ9fV1dbHo0AAQAAAADAAAAMG5pbA==
 | 
					 | 
				
			||||||
:: [eoc]
 | 
					:: [eoc]
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										269
									
								
								demo01.p64
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										269
									
								
								demo01.p64
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,269 @@
 | 
				
			|||||||
 | 
					picotron cartridge // www.picotron.net
 | 
				
			||||||
 | 
					version 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:: gfx/
 | 
				
			||||||
 | 
					:: map/
 | 
				
			||||||
 | 
					:: sfx/
 | 
				
			||||||
 | 
					:: drawing_stuff.lua
 | 
				
			||||||
 | 
					--[[pod_format="raw",created="2024-07-30 00:32:19",modified="2024-07-30 20:17:30",revision=366]]
 | 
				
			||||||
 | 
					include "matrix_math.lua"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					palette_greens = {5, 3, 27, 11, 26}
 | 
				
			||||||
 | 
					palette_greens_flip = {5, 3, 27, 11, 26, 11, 27, 3}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function spr_point(sprite, x)
 | 
				
			||||||
 | 
						local p = uncamera(x)
 | 
				
			||||||
 | 
						draw_scaled_sprite(sprite, p[1], p[2], p[3])
 | 
				
			||||||
 | 
						if debug then
 | 
				
			||||||
 | 
							print("z is " .. x[3],p[1], p[2]+8, 8) 
 | 
				
			||||||
 | 
							print("s is " .. p[3],p[1], p[2], 8) 
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function spr_skewed(s, x, y, z, sx, sy)
 | 
				
			||||||
 | 
						local result = skew(x,y,z, sx, sy)
 | 
				
			||||||
 | 
						spr3d(s, result[1], result[2], result[3])
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function draw_scaled_sprite(sprite, x, y, scale)
 | 
				
			||||||
 | 
						sspr(sprite, 0,0, 16,16, x-8*scale, y-8*scale, 16*scale, 16*scale)
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function draw_percent_of_a_line(x1, y1, x2, y2, percent)
 | 
				
			||||||
 | 
						local start_x = (x2-x1)*percent + x1
 | 
				
			||||||
 | 
						local start_y = (y2-y1)*percent + y1
 | 
				
			||||||
 | 
						local end_x = (x1-x2)*percent + x2
 | 
				
			||||||
 | 
						local end_y = (y1-y2)*percent + y2
 | 
				
			||||||
 | 
						line(start_x, start_y, end_x, end_y)
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function draw_shorter_line(x1, y1, x2, y2, beginning_cut, end_cut)
 | 
				
			||||||
 | 
						local length = sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1))
 | 
				
			||||||
 | 
						if beginning_cut + end_cut > length then
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						local start_x = x1 + (x2-x1)*beginning_cut/length
 | 
				
			||||||
 | 
						local start_y = y1 + (y2-y1)*beginning_cut/length
 | 
				
			||||||
 | 
						local end_x = x2 + (x1-x2)*end_cut/length
 | 
				
			||||||
 | 
						local end_y = y2 + (y1-y2)*end_cut/length
 | 
				
			||||||
 | 
						line(start_x, start_y, end_x, end_y)
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					:: gfx/0.gfx
 | 
				
			||||||
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA3LTMwIDAwOjI4OjU2Iixtb2RpZmllZD0iMjAyNC0w
 | 
				
			||||||
 | 
					Ny0zMCAyMDoxNzozMCIscmV2aXNpb249Mjk0XV1sejQAQwEAABsyAADzFHtbMF09e2JtcD1weHUA
 | 
				
			||||||
 | 
					QyAQEATw8CxmbGFncz0wLHBhbl94CADLeT0wLHpvb209OH0sMQD5BBo3wCdgNwA3UHcAB0AXMBdg
 | 
				
			||||||
 | 
					F1ACAK9gFzAXgFegN-AXWgAcECA-AI8nMCdgd4BXgFkACJ_Qd3B3oBfQF2C6AB2RBBfAR6BHsBfQ
 | 
				
			||||||
 | 
					AgDxAgAnkGeAJxAXgBcQJ4AXEBeQCACPIBeAFyAn8ARcAB1-AhcgFyAXMAYAC5Q3ABcAN0CXcFeE
 | 
				
			||||||
 | 
					AE-QF-AHagAdawOXUJdQFwIAz5dQl5AX0BewV5BXsFYAIkAFV4B3cQFyQBdwFyAXkBABRRcwFzAG
 | 
				
			||||||
 | 
					AAIUAFAgF3AXQI0BX3eAV-AFZgAdH-AxAP------------------------------------------
 | 
				
			||||||
 | 
					--------------------sFBtPTh9fQ==
 | 
				
			||||||
 | 
					:: gfx/.info.pod
 | 
				
			||||||
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA3LTMwIDAwOjI4OjU1IixzdG9yZWQ9IjIwMjQtMDct
 | 
				
			||||||
 | 
					MzAgMDA6Mjg6NTUiXV1sejQABAAAAAMAAAAwbmls
 | 
				
			||||||
 | 
					:: main.lua
 | 
				
			||||||
 | 
					--[[pod_format="raw",created="2024-07-30 00:28:56",modified="2024-07-30 20:17:30",revision=528]]
 | 
				
			||||||
 | 
					include "drawing_stuff.lua"
 | 
				
			||||||
 | 
					include "matrix_math.lua"
 | 
				
			||||||
 | 
					debug = false
 | 
				
			||||||
 | 
					symbols = {}
 | 
				
			||||||
 | 
					for i=0,8 do
 | 
				
			||||||
 | 
						add(symbols, {1+(i % 5), {rnd(400)-200, rnd(200)-100, rnd(50)-25}, {0,0,0}})
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					for a=-1,1,2 do
 | 
				
			||||||
 | 
						for b=-1,1,2 do
 | 
				
			||||||
 | 
							for c=-1,1,2 do
 | 
				
			||||||
 | 
								add(symbols, {1, {a*20, b*20, c*20}, {0,0,0}})
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					links = {}
 | 
				
			||||||
 | 
					for i=0,8 do
 | 
				
			||||||
 | 
						add(links, {flr(rnd(#symbols))+1, flr(rnd(#symbols-1))+1})
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					circles = {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function _draw()
 | 
				
			||||||
 | 
						cls()
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						for c in all(circles) do
 | 
				
			||||||
 | 
							circfill(c[2], c[3], c[1], c[4])
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						color()
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						local skew_orientation = -0.1*t()
 | 
				
			||||||
 | 
						local skew_amount = 0.05+0.025*(sin(0.3*t())+1)
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						for thing in all(symbols) do
 | 
				
			||||||
 | 
							local sprite = thing[1]
 | 
				
			||||||
 | 
							local rotated = thing[2]
 | 
				
			||||||
 | 
							rotated = transform(rot_z(-skew_orientation), rotated)
 | 
				
			||||||
 | 
							rotated = transform(rot_y(skew_amount), rotated)
 | 
				
			||||||
 | 
							rotated = transform(rot_z(skew_orientation), rotated)	
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
							local ssc = uncamera(rotated) 
 | 
				
			||||||
 | 
							thing[3] = ssc
 | 
				
			||||||
 | 
							spr_point(sprite, rotated)
 | 
				
			||||||
 | 
							circ(ssc[1], ssc[2], ssc[3]*12, 12)
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						for link in all(links) do
 | 
				
			||||||
 | 
							local startpoint = symbols[link[1]][3]
 | 
				
			||||||
 | 
							local endpoint = symbols[link[2]][3]
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							draw_shorter_line(
 | 
				
			||||||
 | 
								startpoint[1], startpoint[2],
 | 
				
			||||||
 | 
								endpoint[1], endpoint[2],
 | 
				
			||||||
 | 
								startpoint[3]*12, endpoint[3]*12)
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						--print("time is " .. time_since_last_symbol, 40, 40, 7) 
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					last_t = t()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					time_since_last_symbol = 0
 | 
				
			||||||
 | 
					delta = 0
 | 
				
			||||||
 | 
					function _update()
 | 
				
			||||||
 | 
						local new_circles = {}
 | 
				
			||||||
 | 
						for c in all(circles) do
 | 
				
			||||||
 | 
							if c[1] > 0 then
 | 
				
			||||||
 | 
								add(new_circles, c)
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						circles = new_circles
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						local x = cos(0.1*t())*200 + rnd(100)-50 + 240
 | 
				
			||||||
 | 
						local y = sin(0.1*t())*100 + rnd(100)-50 + 135
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						add(circles, {
 | 
				
			||||||
 | 
							10+rnd(2), -- size
 | 
				
			||||||
 | 
							x,y,
 | 
				
			||||||
 | 
							palette_greens_flip[flr((t()%3/3)*#palette_greens_flip)+1]--color
 | 
				
			||||||
 | 
							})
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						for c in all(circles) do
 | 
				
			||||||
 | 
							c[1] = c[1] - 0.05
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						delta = t() - last_t
 | 
				
			||||||
 | 
						last_t = t()
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						time_since_last_symbol += delta
 | 
				
			||||||
 | 
						if time_since_last_symbol > 3 then
 | 
				
			||||||
 | 
							time_since_last_symbol = 0
 | 
				
			||||||
 | 
							deli(symbols, 1)
 | 
				
			||||||
 | 
							local new_links = {}
 | 
				
			||||||
 | 
							for link in all(links) do
 | 
				
			||||||
 | 
								if link[1] != 1 and link[2] != 1 then
 | 
				
			||||||
 | 
									add(new_links, {link[1]-1, link[2]-1})
 | 
				
			||||||
 | 
								end
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
							links = new_links
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							add(symbols, {flr(rnd(5))+1, {rnd(440)-220, rnd(200)-100, rnd(50)-25}, {0,0,0}})
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							--links = {}
 | 
				
			||||||
 | 
							for i=0,8 do
 | 
				
			||||||
 | 
								--add(links, {flr(rnd(#symbols))+1, flr(rnd(#symbols-1))+1})
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
							add(links, {flr(rnd(#symbols))+1, #symbols})
 | 
				
			||||||
 | 
							add(links, {flr(rnd(#symbols))+1, #symbols})
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					:: map/0.map
 | 
				
			||||||
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA3LTMwIDAwOjI4OjU2Iixtb2RpZmllZD0iMjAyNC0w
 | 
				
			||||||
 | 
					Ny0zMCAyMDoxNzozMCIscmV2aXNpb249MjgwXV1sejQAaAAAAFgQAADwCHt7Ym1wPXVzZXJkYXRh
 | 
				
			||||||
 | 
					KCJpMTYiLDMyAwAvIjABAP--------------------vxCCIpLGhpZGRlbj1mYWxzZSxwYW5feD0w
 | 
				
			||||||
 | 
					CADSeT0wLHRpbGVfaD0xNgoAEHcKAIB6b29tPTF9fQ==
 | 
				
			||||||
 | 
					:: map/.info.pod
 | 
				
			||||||
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA3LTMwIDAwOjI4OjU1IixzdG9yZWQ9IjIwMjQtMDct
 | 
				
			||||||
 | 
					MzAgMDA6Mjg6NTUiXV1sejQABAAAAAMAAAAwbmls
 | 
				
			||||||
 | 
					:: matrix_math.lua
 | 
				
			||||||
 | 
					--[[pod_format="raw",created="2024-07-30 00:58:28",modified="2024-07-30 20:17:30",revision=350]]
 | 
				
			||||||
 | 
					function skew(x, y, z, strength_x, strength_y)
 | 
				
			||||||
 | 
						local dot = x*strength_x + y*strength_y
 | 
				
			||||||
 | 
						return {x + strength_x*(z+10), y+strength_y*(z+10), z-(dot/600)}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function p(x,y,z)
 | 
				
			||||||
 | 
						return {x, y, z}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- this camera trransform will put our camera looking ttowards -z, i think
 | 
				
			||||||
 | 
					-- looking from 200 unitsts away on the z axis
 | 
				
			||||||
 | 
					function uncamera(x)
 | 
				
			||||||
 | 
						if x[3]+25 == 0 then
 | 
				
			||||||
 | 
							return {30, 30, 1}
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						x = translate(x, p(0,0,200))
 | 
				
			||||||
 | 
						return {
 | 
				
			||||||
 | 
							(150*x[1]/x[3]) + 240, 
 | 
				
			||||||
 | 
							(150*x[2]/x[3]) + 135, 
 | 
				
			||||||
 | 
							150/x[3]}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function transform(m, x)
 | 
				
			||||||
 | 
						return {
 | 
				
			||||||
 | 
							x[1]*m[1][1] + x[2]*m[2][1] + x[3]*m[3][1],
 | 
				
			||||||
 | 
							x[1]*m[1][2] + x[2]*m[2][2] + x[3]*m[3][2],
 | 
				
			||||||
 | 
							x[1]*m[1][3] + x[2]*m[2][3] + x[3]*m[3][3]
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function translate(a, b)
 | 
				
			||||||
 | 
						return {a[1]+b[1], a[2]+b[2], a[3]+b[3]}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function transpose(m)
 | 
				
			||||||
 | 
						return {
 | 
				
			||||||
 | 
							{m[1][1], m[2][1], m[3][1]},
 | 
				
			||||||
 | 
							{m[1][2], m[2][2], m[3][2]},
 | 
				
			||||||
 | 
							{m[1][3], m[2][3], m[3][3]}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function rot_x(angle)
 | 
				
			||||||
 | 
						return {
 | 
				
			||||||
 | 
							{1, 0, 0},
 | 
				
			||||||
 | 
							{0, cos(angle), -sin(angle)},
 | 
				
			||||||
 | 
							{0, sin(angle), cos(angle)}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function rot_y(angle)
 | 
				
			||||||
 | 
						return {
 | 
				
			||||||
 | 
							{cos(angle), 0, sin(angle)},
 | 
				
			||||||
 | 
							{0, 1, 0},
 | 
				
			||||||
 | 
							{-sin(angle), 0, cos(angle)}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function rot_z(angle)
 | 
				
			||||||
 | 
						return {
 | 
				
			||||||
 | 
							{cos(angle), -sin(angle), 0},
 | 
				
			||||||
 | 
							{sin(angle), cos(angle), 0},
 | 
				
			||||||
 | 
							{0, 0, 1}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					:: sfx/0.sfx
 | 
				
			||||||
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA3LTMwIDAwOjI4OjU2Iixtb2RpZmllZD0iMjAyNC0w
 | 
				
			||||||
 | 
					Ny0zMCAyMDoxNzozMCIscmV2aXNpb249Mjc3XV1sejQAEQEAAMEIAADwJ3B4dQADKAAAAwAED0AQ
 | 
				
			||||||
 | 
					Ag4AAaABIAKgDgAPEAAN8MoBAgMEBQYHAA--kAgJCgsPDA8NDw4PDxAA8AANDxEPEg8TDxQPFQ8W
 | 
				
			||||||
 | 
					DxcTAPEBDxgPGQ8aDxsPHA8dDx4PHxQA8QAgDyEPIg8jDyQPJQ8mDycUAPEAKA8pDyoPKw8sDy0P
 | 
				
			||||||
 | 
					Lg8vFADxADAPMQ8yDzMPNA81DzYPNxQA-wU4DzkPOg87DzwPPQ8_Dz8AD--w-wEA6-8nWgEQBg8g
 | 
				
			||||||
 | 
					EAEgASAB8AACEAIMEAEgDyEgATAPQPDDDygP--DGD-gKD-8PgA-3Dw0B8AkBEAYMMAD--7of-wEA
 | 
				
			||||||
 | 
					zL-oD0AADUD--7DwcAoA--9kH-8BAJdQ-----x8=
 | 
				
			||||||
 | 
					:: sfx/.info.pod
 | 
				
			||||||
 | 
					b64$LS1bW3BvZCxjcmVhdGVkPSIyMDI0LTA3LTMwIDAwOjI4OjU1IixzdG9yZWQ9IjIwMjQtMDct
 | 
				
			||||||
 | 
					MzAgMDA6Mjg6NTUiXV1sejQABAAAAAMAAAAwbmls
 | 
				
			||||||
 | 
					:: .info.pod
 | 
				
			||||||
 | 
					b64$LS1bW3BvZCxydW50aW1lPTUsc3RvcmVkPSIyMDI0LTA3LTMwIDIwOjE3OjMwIix3b3Jrc3Bh
 | 
				
			||||||
 | 
					Y2VzPXt7bG9jYXRpb249Im1haW4ubHVhIzMxIix3b3Jrc3BhY2VfaW5kZXg9MX0se2xvY2F0aW9u
 | 
				
			||||||
 | 
					PSJkcmF3aW5nX3N0dWZmLmx1YSM0Iix3b3Jrc3BhY2VfaW5kZXg9MX0se2xvY2F0aW9uPSJtYXRy
 | 
				
			||||||
 | 
					aXhfbWF0aC5sdWEjMTEiLHdvcmtzcGFjZV9pbmRleD0xfSx7bG9jYXRpb249ImdmeC8wLmdmeCIs
 | 
				
			||||||
 | 
					d29ya3NwYWNlX2luZGV4PTJ9LHtsb2NhdGlvbj0ibWFwLzAubWFwIix3b3Jrc3BhY2VfaW5kZXg9
 | 
				
			||||||
 | 
					M30se2xvY2F0aW9uPSJzZngvMC5zZngiLHdvcmtzcGFjZV9pbmRleD00fX1dXWx6NAAEAAAAAwAA
 | 
				
			||||||
 | 
					ADBuaWw=
 | 
				
			||||||
 | 
					:: [eoc]
 | 
				
			||||||
@ -199,7 +199,7 @@ OlRORm3faVWNwb31bCRBCsEY6-WMMR77jDFhKBfOEOSFF5IvHfD0fqt9C3INtnsmutCgXEknJO_2
 | 
				
			|||||||
dzjkB6yPryo7f14YbTLyOn2151lDrmHTrWQv1eTI-D_o_YTEtLDizgAAABB0RVh0TG9kZVBORwAy
 | 
					dzjkB6yPryo7f14YbTLyOn2151lDrmHTrWQv1eTI-D_o_YTEtLDizgAAABB0RVh0TG9kZVBORwAy
 | 
				
			||||||
MDExMDIyMeNZtsEAAAAASUVORK5CYII=
 | 
					MDExMDIyMeNZtsEAAAAASUVORK5CYII=
 | 
				
			||||||
:: main.lua
 | 
					:: main.lua
 | 
				
			||||||
--[[pod_format="raw",created="2024-03-31 02:16:28",modified="2024-03-31 14:46:07",revision=34]]
 | 
					--[[pod_format="raw",created="2024-03-31 02:16:28",modified="2024-08-07 14:25:43",revision=35]]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function _init()
 | 
					function _init()
 | 
				
			||||||
	window(64*4,16*8)
 | 
						window(64*4,16*8)
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user