generated from krampus/template-godot4
	Compare commits
	
		
			6 Commits
		
	
	
		
			e723e0c022
			...
			15cd409e04
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 15cd409e04 | |||
| 42d1a9a77c | |||
| 49dd2fecf0 | |||
| ed91c9c9d8 | |||
| 1a622ff3b1 | |||
| 9d6821962b | 
							
								
								
									
										
											BIN
										
									
								
								asset_dev/characters/gfolf_girl/gfolf_girl.blend
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								asset_dev/characters/gfolf_girl/gfolf_girl.blend
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								asset_dev/dope_explosion.gif
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								asset_dev/dope_explosion.gif
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 15 KiB | 
										
											Binary file not shown.
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										58
									
								
								assets/sprites/dope_explosion/dope_explosion.tres
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										58
									
								
								assets/sprites/dope_explosion/dope_explosion.tres
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,58 @@ | |||||||
|  | [gd_resource type="AnimatedTexture" load_steps=18 format=3 uid="uid://2yoipvd107t1"] | ||||||
|  | 
 | ||||||
|  | [ext_resource type="Texture2D" uid="uid://chqekagriducf" path="res://assets/sprites/dope_explosion/explosion_01.png" id="1_d0hbp"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://djb4jup2y27wq" path="res://assets/sprites/dope_explosion/explosion_02.png" id="2_bjmaj"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://jevcsn483blb" path="res://assets/sprites/dope_explosion/explosion_11.png" id="3_21mo1"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://2rvfj0y7nebi" path="res://assets/sprites/dope_explosion/explosion_12.png" id="4_qthhk"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://dmd5ehswxcln" path="res://assets/sprites/dope_explosion/explosion_13.png" id="5_0684l"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://cdlqxt5nuhnh4" path="res://assets/sprites/dope_explosion/explosion_14.png" id="6_y6mm3"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://d8y1dfsg5bpn" path="res://assets/sprites/dope_explosion/explosion_15.png" id="7_4d5db"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://beq64w121e2qc" path="res://assets/sprites/dope_explosion/explosion_16.png" id="8_icpm3"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://cekhbr07t01y0" path="res://assets/sprites/dope_explosion/explosion_17.png" id="9_mv3mc"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://d1r2rxhg0ag4m" path="res://assets/sprites/dope_explosion/explosion_03.png" id="10_e4v3n"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://7b4mmhs7im5n" path="res://assets/sprites/dope_explosion/explosion_04.png" id="11_7y6m6"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://djgx3xsgidr0d" path="res://assets/sprites/dope_explosion/explosion_05.png" id="12_702rw"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://b5w0kigbqsnjd" path="res://assets/sprites/dope_explosion/explosion_06.png" id="13_orlo6"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://bwotlyctrl3vl" path="res://assets/sprites/dope_explosion/explosion_07.png" id="14_doi0c"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://b5jrnjaq065wu" path="res://assets/sprites/dope_explosion/explosion_08.png" id="15_8snwx"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://cw0whu63w450u" path="res://assets/sprites/dope_explosion/explosion_09.png" id="16_kbc1f"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://bj8isy502gjw6" path="res://assets/sprites/dope_explosion/explosion_10.png" id="17_ip4qp"] | ||||||
|  | 
 | ||||||
|  | [resource] | ||||||
|  | resource_local_to_scene = true | ||||||
|  | frames = 17 | ||||||
|  | pause = true | ||||||
|  | frame_0/texture = ExtResource("1_d0hbp") | ||||||
|  | frame_0/duration = 0.1 | ||||||
|  | frame_1/texture = ExtResource("2_bjmaj") | ||||||
|  | frame_1/duration = 0.1 | ||||||
|  | frame_2/texture = ExtResource("10_e4v3n") | ||||||
|  | frame_2/duration = 0.1 | ||||||
|  | frame_3/texture = ExtResource("11_7y6m6") | ||||||
|  | frame_3/duration = 0.1 | ||||||
|  | frame_4/texture = ExtResource("12_702rw") | ||||||
|  | frame_4/duration = 0.1 | ||||||
|  | frame_5/texture = ExtResource("13_orlo6") | ||||||
|  | frame_5/duration = 0.1 | ||||||
|  | frame_6/texture = ExtResource("14_doi0c") | ||||||
|  | frame_6/duration = 0.1 | ||||||
|  | frame_7/texture = ExtResource("15_8snwx") | ||||||
|  | frame_7/duration = 0.1 | ||||||
|  | frame_8/texture = ExtResource("16_kbc1f") | ||||||
|  | frame_8/duration = 0.1 | ||||||
|  | frame_9/texture = ExtResource("17_ip4qp") | ||||||
|  | frame_9/duration = 0.1 | ||||||
|  | frame_10/texture = ExtResource("3_21mo1") | ||||||
|  | frame_10/duration = 0.1 | ||||||
|  | frame_11/texture = ExtResource("4_qthhk") | ||||||
|  | frame_11/duration = 0.1 | ||||||
|  | frame_12/texture = ExtResource("5_0684l") | ||||||
|  | frame_12/duration = 0.1 | ||||||
|  | frame_13/texture = ExtResource("6_y6mm3") | ||||||
|  | frame_13/duration = 0.1 | ||||||
|  | frame_14/texture = ExtResource("7_4d5db") | ||||||
|  | frame_14/duration = 0.1 | ||||||
|  | frame_15/texture = ExtResource("8_icpm3") | ||||||
|  | frame_15/duration = 0.1 | ||||||
|  | frame_16/texture = ExtResource("9_mv3mc") | ||||||
|  | frame_16/duration = 0.1 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_01.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_01.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_01.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_01.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://chqekagriducf" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_01.png-ea15c98c46d7ced9a98a3d938aafa3d6.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_01.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_01.png-ea15c98c46d7ced9a98a3d938aafa3d6.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_02.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_02.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_02.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_02.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://djb4jup2y27wq" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_02.png-6bdf44084d88475de4755061ef9c774f.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_02.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_02.png-6bdf44084d88475de4755061ef9c774f.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_03.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_03.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_03.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_03.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://d1r2rxhg0ag4m" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_03.png-3741482b47d48f53c7163e411676c921.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_03.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_03.png-3741482b47d48f53c7163e411676c921.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_04.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_04.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_04.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_04.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://7b4mmhs7im5n" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_04.png-29690fff39e4940b97828e9d3a7201c5.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_04.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_04.png-29690fff39e4940b97828e9d3a7201c5.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_05.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_05.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_05.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_05.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://djgx3xsgidr0d" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_05.png-d7d4f42d242024b84d657d700a7397a3.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_05.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_05.png-d7d4f42d242024b84d657d700a7397a3.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_06.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_06.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_06.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_06.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://b5w0kigbqsnjd" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_06.png-31d0edf502b444bb0800a8140e9a9e34.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_06.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_06.png-31d0edf502b444bb0800a8140e9a9e34.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_07.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_07.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_07.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_07.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://bwotlyctrl3vl" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_07.png-2456b0502621a22c875dd250014514e0.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_07.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_07.png-2456b0502621a22c875dd250014514e0.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_08.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_08.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_08.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_08.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://b5jrnjaq065wu" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_08.png-103ad47e718348f9a399144a1f0bc1be.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_08.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_08.png-103ad47e718348f9a399144a1f0bc1be.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_09.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_09.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_09.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_09.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://cw0whu63w450u" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_09.png-3cbb649bbd414406620d278bd39066c9.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_09.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_09.png-3cbb649bbd414406620d278bd39066c9.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_10.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_10.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_10.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_10.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://bj8isy502gjw6" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_10.png-57fecff27a473611c5a8c1e26629554f.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_10.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_10.png-57fecff27a473611c5a8c1e26629554f.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_11.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_11.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_11.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_11.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://jevcsn483blb" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_11.png-31268dcc8dd3fde767054c54543a85a0.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_11.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_11.png-31268dcc8dd3fde767054c54543a85a0.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_12.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_12.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_12.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_12.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://2rvfj0y7nebi" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_12.png-17a5c2c7984eae5f9ce67d887299262b.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_12.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_12.png-17a5c2c7984eae5f9ce67d887299262b.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_13.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_13.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_13.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_13.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://dmd5ehswxcln" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_13.png-d47096656d64fa3031e82fbf818b2193.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_13.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_13.png-d47096656d64fa3031e82fbf818b2193.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_14.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_14.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_14.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_14.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://cdlqxt5nuhnh4" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_14.png-a88792680320ae6175944801610075e0.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_14.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_14.png-a88792680320ae6175944801610075e0.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_15.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_15.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_15.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_15.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://d8y1dfsg5bpn" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_15.png-f284e8ba353bc8d9357cc6cd40a570a5.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_15.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_15.png-f284e8ba353bc8d9357cc6cd40a570a5.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_16.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_16.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_16.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_16.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://beq64w121e2qc" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_16.png-c103231805ba5f296cbaa36dd356c168.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_16.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_16.png-c103231805ba5f296cbaa36dd356c168.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
							
								
								
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_17.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sprites/dope_explosion/explosion_17.png
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										35
									
								
								assets/sprites/dope_explosion/explosion_17.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								assets/sprites/dope_explosion/explosion_17.png.import
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | [remap] | ||||||
|  | 
 | ||||||
|  | importer="texture" | ||||||
|  | type="CompressedTexture2D" | ||||||
|  | uid="uid://cekhbr07t01y0" | ||||||
|  | path.s3tc="res://.godot/imported/explosion_17.png-cafb80a5021d1b819bf52a4094e32be5.s3tc.ctex" | ||||||
|  | metadata={ | ||||||
|  | "imported_formats": ["s3tc_bptc"], | ||||||
|  | "vram_texture": true | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [deps] | ||||||
|  | 
 | ||||||
|  | source_file="res://assets/sprites/dope_explosion/explosion_17.png" | ||||||
|  | dest_files=["res://.godot/imported/explosion_17.png-cafb80a5021d1b819bf52a4094e32be5.s3tc.ctex"] | ||||||
|  | 
 | ||||||
|  | [params] | ||||||
|  | 
 | ||||||
|  | compress/mode=2 | ||||||
|  | compress/high_quality=false | ||||||
|  | compress/lossy_quality=0.7 | ||||||
|  | compress/hdr_compression=1 | ||||||
|  | compress/normal_map=0 | ||||||
|  | compress/channel_pack=0 | ||||||
|  | mipmaps/generate=true | ||||||
|  | mipmaps/limit=-1 | ||||||
|  | roughness/mode=0 | ||||||
|  | roughness/src_normal="" | ||||||
|  | process/fix_alpha_border=true | ||||||
|  | process/premult_alpha=false | ||||||
|  | process/normal_map_invert_y=false | ||||||
|  | process/hdr_as_srgb=false | ||||||
|  | process/hdr_clamp_exposure=false | ||||||
|  | process/size_limit=0 | ||||||
|  | detect_3d/compress_to=0 | ||||||
| @ -21,6 +21,11 @@ func hold_right(node: Node3D = null) -> void: | |||||||
| 		node.transform = Transform3D.IDENTITY | 		node.transform = Transform3D.IDENTITY | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | ## Set this character's color. Implementation-dependent. | ||||||
|  | func set_color(color: Color) -> void: | ||||||
|  | 	pass | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| func reset() -> void: | func reset() -> void: | ||||||
| 	animation_state.start("stand_to_idle") | 	animation_state.start("stand_to_idle") | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										16
									
								
								src/characters/player_characters/gfolf_girl/gfolf_girl.gd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								src/characters/player_characters/gfolf_girl/gfolf_girl.gd
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | |||||||
|  | extends CharacterController | ||||||
|  | 
 | ||||||
|  | const SHIRT_MAT := preload("res://assets/models/characters/gfolf_girl/Shirt.tres") | ||||||
|  | const SHIRT_SURFACE_ID := 0 | ||||||
|  | const ARM_SURFACE_ID := 0 | ||||||
|  | 
 | ||||||
|  | @onready var shirt: MeshInstance3D = $Armature/Skeleton3D/Shirt | ||||||
|  | @onready var arm: MeshInstance3D = $Armature/Skeleton3D/Arm_L | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | func set_color(color: Color) -> void: | ||||||
|  | 	var material: BaseMaterial3D = SHIRT_MAT.duplicate() | ||||||
|  | 	material.resource_local_to_scene = true | ||||||
|  | 	material.albedo_color = color | ||||||
|  | 	shirt.set_surface_override_material(SHIRT_SURFACE_ID, material) | ||||||
|  | 	arm.set_surface_override_material(ARM_SURFACE_ID, material) | ||||||
| @ -1,7 +1,7 @@ | |||||||
| [gd_scene load_steps=22 format=3 uid="uid://1s3gywmoi20e"] | [gd_scene load_steps=22 format=3 uid="uid://1s3gywmoi20e"] | ||||||
| 
 | 
 | ||||||
| [ext_resource type="PackedScene" uid="uid://ha6jxf4v5845" path="res://assets/models/characters/gfolf_girl/gfolf_girl.gltf" id="1_j80rr"] | [ext_resource type="PackedScene" uid="uid://ha6jxf4v5845" path="res://assets/models/characters/gfolf_girl/gfolf_girl.gltf" id="1_j80rr"] | ||||||
| [ext_resource type="Script" path="res://src/characters/player_characters/character_controller.gd" id="2_7o84v"] | [ext_resource type="Script" path="res://src/characters/player_characters/gfolf_girl/gfolf_girl.gd" id="2_y16an"] | ||||||
| [ext_resource type="Script" path="res://src/util/random_timer.gd" id="3_ex68g"] | [ext_resource type="Script" path="res://src/util/random_timer.gd" id="3_ex68g"] | ||||||
| 
 | 
 | ||||||
| [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_fokhu"] | [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_fokhu"] | ||||||
| @ -122,7 +122,7 @@ _data = { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| [node name="GfolfGirl" instance=ExtResource("1_j80rr")] | [node name="GfolfGirl" instance=ExtResource("1_j80rr")] | ||||||
| script = ExtResource("2_7o84v") | script = ExtResource("2_y16an") | ||||||
| 
 | 
 | ||||||
| [node name="Armature" parent="." index="0"] | [node name="Armature" parent="." index="0"] | ||||||
| transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0) | transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0) | ||||||
| @ -169,7 +169,7 @@ bones/23/scale = Vector3(1, 1, 1) | |||||||
| visible = false | visible = false | ||||||
| 
 | 
 | ||||||
| [node name="BoneAttachment3D" type="BoneAttachment3D" parent="Armature/Skeleton3D" index="6"] | [node name="BoneAttachment3D" type="BoneAttachment3D" parent="Armature/Skeleton3D" index="6"] | ||||||
| transform = Transform3D(-0.0322545, -0.997872, -0.0566733, 0.99947, -0.0324594, 0.00269896, -0.00453261, -0.0565562, 0.998389, -2.5177, 5.22011, -0.516371) | transform = Transform3D(-0.0322548, -0.997872, -0.0566729, 0.999469, -0.0324597, 0.00269911, -0.00453275, -0.0565558, 0.998389, -2.5177, 5.22011, -0.51637) | ||||||
| bone_name = "Hand.R" | bone_name = "Hand.R" | ||||||
| bone_idx = 11 | bone_idx = 11 | ||||||
| 
 | 
 | ||||||
| @ -179,7 +179,6 @@ transform = Transform3D(0.934826, 0.266239, -0.23498, -0.336326, 0.876157, -0.34 | |||||||
| 
 | 
 | ||||||
| [node name="ReferenceClub" type="MeshInstance3D" parent="Armature/Skeleton3D/BoneAttachment3D/RightHandGrip" index="0"] | [node name="ReferenceClub" type="MeshInstance3D" parent="Armature/Skeleton3D/BoneAttachment3D/RightHandGrip" index="0"] | ||||||
| transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.205, 0) | transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.205, 0) | ||||||
| visible = false |  | ||||||
| mesh = SubResource("BoxMesh_363n0") | mesh = SubResource("BoxMesh_363n0") | ||||||
| skeleton = NodePath("../..") | skeleton = NodePath("../..") | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -44,6 +44,9 @@ const IRON_DAMPING := 9999.0 | |||||||
| ## Base damage inflicted on impact with a player | ## Base damage inflicted on impact with a player | ||||||
| @export var base_damage := 15.0 | @export var base_damage := 15.0 | ||||||
| 
 | 
 | ||||||
|  | ## Scaling factor for additional force-based damage | ||||||
|  | @export var damage_force_scale := 0.01 | ||||||
|  | 
 | ||||||
| var _last_contact_normal: Vector3 = Vector3.UP | var _last_contact_normal: Vector3 = Vector3.UP | ||||||
| var _position_on_last_wake: Vector3 | var _position_on_last_wake: Vector3 | ||||||
| var _awake := false | var _awake := false | ||||||
| @ -64,6 +67,11 @@ func enter_water() -> void: | |||||||
| 	entered_water.emit() | 	entered_water.emit() | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | func get_damage() -> float: | ||||||
|  | 	print("velocity: ", linear_velocity.length()) | ||||||
|  | 	return base_damage + linear_velocity.length_squared() * damage_force_scale | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| func _total_terrain_angular_damping() -> float: | func _total_terrain_angular_damping() -> float: | ||||||
| 	return _zones.reduce( | 	return _zones.reduce( | ||||||
| 		func(a: float, b: BallZone) -> float: return a + b.terrain_angular_damping, 0.0 | 		func(a: float, b: BallZone) -> float: return a + b.terrain_angular_damping, 0.0 | ||||||
|  | |||||||
| @ -1,5 +1,4 @@ | |||||||
| [gd_resource type="PhysicsMaterial" format=3 uid="uid://3bih72l068ic"] | [gd_resource type="PhysicsMaterial" format=3 uid="uid://3bih72l068ic"] | ||||||
| 
 | 
 | ||||||
| [resource] | [resource] | ||||||
| friction = 0.8 |  | ||||||
| bounce = 0.5 | bounce = 0.5 | ||||||
|  | |||||||
| @ -49,6 +49,7 @@ size = Vector2(0.4, 0.4) | |||||||
| 
 | 
 | ||||||
| [node name="PlasmaBall" instance=ExtResource("1_yh4fp")] | [node name="PlasmaBall" instance=ExtResource("1_yh4fp")] | ||||||
| script = ExtResource("2_pdts3") | script = ExtResource("2_pdts3") | ||||||
|  | base_damage = 30.0 | ||||||
| 
 | 
 | ||||||
| [node name="PlasmaFireEffect" type="GPUParticles3D" parent="BallMesh" index="0"] | [node name="PlasmaFireEffect" type="GPUParticles3D" parent="BallMesh" index="0"] | ||||||
| amount = 20 | amount = 20 | ||||||
|  | |||||||
							
								
								
									
										21
									
								
								src/player/debug_orange.tres
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								src/player/debug_orange.tres
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,21 @@ | |||||||
|  | [gd_resource type="Resource" script_class="WorldPlayer" load_steps=6 format=3 uid="uid://b5j0lmo4jayk4"] | ||||||
|  | 
 | ||||||
|  | [ext_resource type="Resource" uid="uid://c1pnqsddvey3m" path="res://src/equipment/clubs/drivers/debug_driver.tres" id="1_nb6c3"] | ||||||
|  | [ext_resource type="Resource" uid="uid://ck17u5yn6k0bi" path="res://src/equipment/clubs/irons/debug_iron.tres" id="2_0ti3p"] | ||||||
|  | [ext_resource type="Resource" uid="uid://dagld0q5krapu" path="res://src/equipment/clubs/putters/debug_putter.tres" id="3_274x5"] | ||||||
|  | [ext_resource type="Script" path="res://src/player/world_player.gd" id="4_vid1t"] | ||||||
|  | [ext_resource type="Resource" uid="uid://dthtc1no2c4wy" path="res://src/equipment/clubs/wedges/debug_wedge.tres" id="5_hfqcn"] | ||||||
|  | 
 | ||||||
|  | [resource] | ||||||
|  | script = ExtResource("4_vid1t") | ||||||
|  | life = 100.0 | ||||||
|  | name = "Orange Gfolfer" | ||||||
|  | color = Color(1, 0.748, 0.44, 1) | ||||||
|  | driver = ExtResource("1_nb6c3") | ||||||
|  | iron = ExtResource("2_0ti3p") | ||||||
|  | wedge = ExtResource("5_hfqcn") | ||||||
|  | putter = ExtResource("3_274x5") | ||||||
|  | _balls = { | ||||||
|  | 1: -1, | ||||||
|  | 2: 5 | ||||||
|  | } | ||||||
| @ -10,7 +10,7 @@ | |||||||
| script = ExtResource("4_8ybyj") | script = ExtResource("4_8ybyj") | ||||||
| life = 100.0 | life = 100.0 | ||||||
| name = "DEBUG Gfolfer" | name = "DEBUG Gfolfer" | ||||||
| color = Color(1, 0.439216, 0.439216, 1) | color = Color(0.48, 1, 1, 1) | ||||||
| driver = ExtResource("1_sn8fd") | driver = ExtResource("1_sn8fd") | ||||||
| iron = ExtResource("2_piku2") | iron = ExtResource("2_piku2") | ||||||
| wedge = ExtResource("5_wm4ae") | wedge = ExtResource("5_wm4ae") | ||||||
|  | |||||||
| @ -154,8 +154,11 @@ var _tracking_camera: OrbitalCamera | |||||||
| @onready var putt_ref: RayCast3D = %PuttRef | @onready var putt_ref: RayCast3D = %PuttRef | ||||||
| @onready var putt_arrow: Node3D = %PuttArrow | @onready var putt_arrow: Node3D = %PuttArrow | ||||||
| 
 | 
 | ||||||
|  | @onready var downswing_timer: Timer = %DownswingTimer | ||||||
| @onready var ball_return_timer: Timer = %BallReturnTimer | @onready var ball_return_timer: Timer = %BallReturnTimer | ||||||
| 
 | 
 | ||||||
|  | @onready var explosion_animation: AnimationPlayer = %ExplosionAnimation | ||||||
|  | 
 | ||||||
| @onready var camera_distance := zoom.position.z: | @onready var camera_distance := zoom.position.z: | ||||||
| 	set = _set_camera_distance | 	set = _set_camera_distance | ||||||
| 
 | 
 | ||||||
| @ -173,6 +176,8 @@ func _ready() -> void: | |||||||
| 	world.ui.add_player_hud(hud) | 	world.ui.add_player_hud(hud) | ||||||
| 	ball_type = initial_ball | 	ball_type = initial_ball | ||||||
| 	club = initial_club | 	club = initial_club | ||||||
|  | 	character.set_color(player.color) | ||||||
|  | 	_on_phase_change(phase) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| func _set_camera_distance(value: float) -> void: | func _set_camera_distance(value: float) -> void: | ||||||
| @ -241,13 +246,14 @@ func take_shot() -> void: | |||||||
| 	var impulse := get_shot_impulse(shot_power) | 	var impulse := get_shot_impulse(shot_power) | ||||||
| 	print_debug("Shot impulse: ", impulse, "; ", impulse.length(), " N*s") | 	print_debug("Shot impulse: ", impulse, "; ", impulse.length(), " N*s") | ||||||
| 
 | 
 | ||||||
|  | 	# Curve the curve | ||||||
| 	var curve := shot_ref.global_basis.x.normalized() * shot_curve | 	var curve := shot_ref.global_basis.x.normalized() * shot_curve | ||||||
| 
 | 
 | ||||||
| 	# Position where the ball is hit (imparts spin) | 	# Position where the ball is hit (imparts spin) | ||||||
| 	var offset := curve * 0.001 | 	var offset := curve * 0.001 | ||||||
| 	print_debug("Shot offset: ", offset, "; ", offset.length(), " m") | 	print_debug("Shot offset: ", offset, "; ", offset.length(), " m") | ||||||
| 	# Rotate impulse | 	# Rotate impulse | ||||||
| 	impulse = impulse.rotated(Vector3.UP, -shot_curve * CURVE_INFLUENCE) | 	impulse = impulse.rotated(Vector3.UP, -shot_curve * CURVE_INFLUENCE * shot_power) | ||||||
| 
 | 
 | ||||||
| 	if game_ball: | 	if game_ball: | ||||||
| 		game_ball.iron_ball = club == Club.Type.IRON | 		game_ball.iron_ball = club == Club.Type.IRON | ||||||
| @ -264,6 +270,7 @@ func _show_shot_projection() -> void: | |||||||
| 	if not game_ball: | 	if not game_ball: | ||||||
| 		return | 		return | ||||||
| 
 | 
 | ||||||
|  | 	shot_projection.putt_projection = club == Club.Type.PUTTER | ||||||
| 	shot_projection.initial_speed = 1 | 	shot_projection.initial_speed = 1 | ||||||
| 	shot_projection.basis = shot_ref.basis.orthonormalized() | 	shot_projection.basis = shot_ref.basis.orthonormalized() | ||||||
| 	var shot_speed := get_shot_impulse(1.0).length() / game_ball.mass | 	var shot_speed := get_shot_impulse(1.0).length() / game_ball.mass | ||||||
| @ -414,10 +421,9 @@ func _on_phase_change(new_phase: Phase) -> void: | |||||||
| 			hud.curve_bar.show() | 			hud.curve_bar.show() | ||||||
| 			hud.start_curve_bar() | 			hud.start_curve_bar() | ||||||
| 		Phase.DOWNSWING: | 		Phase.DOWNSWING: | ||||||
| 			hud.power_bar.hide() | 			hud.gauge_flourish() | ||||||
| 			hud.curve_bar.hide() |  | ||||||
| 			character.downswing() | 			character.downswing() | ||||||
| 			shot_animation.play("swing_delay")  # calls `take_shot` | 			downswing_timer.start() | ||||||
| 		Phase.SHOT: | 		Phase.SHOT: | ||||||
| 			hud.power_bar.hide() | 			hud.power_bar.hide() | ||||||
| 			hud.curve_bar.hide() | 			hud.curve_bar.hide() | ||||||
| @ -437,6 +443,7 @@ func _on_phase_change(new_phase: Phase) -> void: | |||||||
| 		Phase.FINISHED: | 		Phase.FINISHED: | ||||||
| 			hud.power_bar.hide() | 			hud.power_bar.hide() | ||||||
| 			hud.curve_bar.hide() | 			hud.curve_bar.hide() | ||||||
|  | 			hud.hide_hud() | ||||||
| 			finished.emit(self) | 			finished.emit(self) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| @ -576,7 +583,12 @@ func _on_ball_return_timer_timeout() -> void: | |||||||
| 
 | 
 | ||||||
| func _on_hitbox_ball_collision(ball: GameBall) -> void: | func _on_hitbox_ball_collision(ball: GameBall) -> void: | ||||||
| 	# TODO play animation | 	# TODO play animation | ||||||
| 	player.life -= ball.base_damage | 	var damage := ball.get_damage() | ||||||
|  | 	player.life -= damage | ||||||
|  | 	game.viewport.hit_lag_big() | ||||||
|  | 	game.viewport.screen_shake(damage, 0.4) | ||||||
|  | 	explosion_animation.play("explode") | ||||||
|  | 	# TODO kinematic collisions | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ## Create a new instance for the given player. | ## Create a new instance for the given player. | ||||||
|  | |||||||
| @ -1,4 +1,4 @@ | |||||||
| [gd_scene load_steps=17 format=3 uid="uid://cy7t2tc4y3b4"] | [gd_scene load_steps=22 format=3 uid="uid://cy7t2tc4y3b4"] | ||||||
| 
 | 
 | ||||||
| [ext_resource type="Script" path="res://src/player/shot_setup/shot_setup.gd" id="1_r6ei4"] | [ext_resource type="Script" path="res://src/player/shot_setup/shot_setup.gd" id="1_r6ei4"] | ||||||
| [ext_resource type="Script" path="res://src/player/shot_setup/ball_point.gd" id="2_e6i3g"] | [ext_resource type="Script" path="res://src/player/shot_setup/ball_point.gd" id="2_e6i3g"] | ||||||
| @ -7,6 +7,7 @@ | |||||||
| [ext_resource type="PackedScene" uid="uid://fht6j87o8ecr" path="res://src/ui/3d/projectile_arc/projectile_arc.tscn" id="4_ry2ho"] | [ext_resource type="PackedScene" uid="uid://fht6j87o8ecr" path="res://src/ui/3d/projectile_arc/projectile_arc.tscn" id="4_ry2ho"] | ||||||
| [ext_resource type="PackedScene" uid="uid://dbdul15c4oblg" path="res://src/ui/3d/projected_target.tscn" id="6_mynqj"] | [ext_resource type="PackedScene" uid="uid://dbdul15c4oblg" path="res://src/ui/3d/projected_target.tscn" id="6_mynqj"] | ||||||
| [ext_resource type="Script" path="res://src/player/shot_setup/hitbox.gd" id="7_uh8kn"] | [ext_resource type="Script" path="res://src/player/shot_setup/hitbox.gd" id="7_uh8kn"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://2yoipvd107t1" path="res://assets/sprites/dope_explosion/dope_explosion.tres" id="8_5ghmo"] | ||||||
| 
 | 
 | ||||||
| [sub_resource type="Animation" id="Animation_ug2a7"] | [sub_resource type="Animation" id="Animation_ug2a7"] | ||||||
| length = 0.001 | length = 0.001 | ||||||
| @ -169,35 +170,89 @@ tracks/2/keys = { | |||||||
| }] | }] | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| [sub_resource type="Animation" id="Animation_u8k07"] |  | ||||||
| resource_name = "swing_delay" |  | ||||||
| length = 0.0667 |  | ||||||
| step = 0.01 |  | ||||||
| tracks/0/type = "method" |  | ||||||
| tracks/0/imported = false |  | ||||||
| tracks/0/enabled = true |  | ||||||
| tracks/0/path = NodePath("%Direction/..") |  | ||||||
| tracks/0/interp = 1 |  | ||||||
| tracks/0/loop_wrap = true |  | ||||||
| tracks/0/keys = { |  | ||||||
| "times": PackedFloat32Array(0.0667), |  | ||||||
| "transitions": PackedFloat32Array(1), |  | ||||||
| "values": [{ |  | ||||||
| "args": [], |  | ||||||
| "method": &"finish_downswing" |  | ||||||
| }] |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| [sub_resource type="AnimationLibrary" id="AnimationLibrary_u78hq"] | [sub_resource type="AnimationLibrary" id="AnimationLibrary_u78hq"] | ||||||
| _data = { | _data = { | ||||||
| "RESET": SubResource("Animation_oks0y"), | "RESET": SubResource("Animation_oks0y"), | ||||||
| "shoot": SubResource("Animation_e65hh"), | "shoot": SubResource("Animation_e65hh") | ||||||
| "swing_delay": SubResource("Animation_u8k07") |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| [sub_resource type="SphereShape3D" id="SphereShape3D_xvvdi"] | [sub_resource type="SphereShape3D" id="SphereShape3D_xvvdi"] | ||||||
| radius = 1.5 | radius = 1.5 | ||||||
| 
 | 
 | ||||||
|  | [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_4n2rd"] | ||||||
|  | transparency = 1 | ||||||
|  | shading_mode = 0 | ||||||
|  | albedo_texture = ExtResource("8_5ghmo") | ||||||
|  | texture_filter = 4 | ||||||
|  | billboard_mode = 1 | ||||||
|  | grow = true | ||||||
|  | grow_amount = 1.0 | ||||||
|  | 
 | ||||||
|  | [sub_resource type="QuadMesh" id="QuadMesh_t34ji"] | ||||||
|  | material = SubResource("StandardMaterial3D_4n2rd") | ||||||
|  | size = Vector2(2.84, 4) | ||||||
|  | 
 | ||||||
|  | [sub_resource type="Animation" id="Animation_vahxw"] | ||||||
|  | length = 0.001 | ||||||
|  | tracks/0/type = "value" | ||||||
|  | tracks/0/imported = false | ||||||
|  | tracks/0/enabled = true | ||||||
|  | tracks/0/path = NodePath("ExplosionMesh:mesh:material:albedo_texture:pause") | ||||||
|  | tracks/0/interp = 1 | ||||||
|  | tracks/0/loop_wrap = true | ||||||
|  | tracks/0/keys = { | ||||||
|  | "times": PackedFloat32Array(0), | ||||||
|  | "transitions": PackedFloat32Array(1), | ||||||
|  | "update": 1, | ||||||
|  | "values": [true] | ||||||
|  | } | ||||||
|  | tracks/1/type = "value" | ||||||
|  | tracks/1/imported = false | ||||||
|  | tracks/1/enabled = true | ||||||
|  | tracks/1/path = NodePath("ExplosionMesh:visible") | ||||||
|  | tracks/1/interp = 1 | ||||||
|  | tracks/1/loop_wrap = true | ||||||
|  | tracks/1/keys = { | ||||||
|  | "times": PackedFloat32Array(0), | ||||||
|  | "transitions": PackedFloat32Array(1), | ||||||
|  | "update": 1, | ||||||
|  | "values": [false] | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [sub_resource type="Animation" id="Animation_bv1ov"] | ||||||
|  | resource_name = "explode" | ||||||
|  | length = 1.618 | ||||||
|  | tracks/0/type = "value" | ||||||
|  | tracks/0/imported = false | ||||||
|  | tracks/0/enabled = true | ||||||
|  | tracks/0/path = NodePath("ExplosionMesh:mesh:material:albedo_texture:pause") | ||||||
|  | tracks/0/interp = 1 | ||||||
|  | tracks/0/loop_wrap = true | ||||||
|  | tracks/0/keys = { | ||||||
|  | "times": PackedFloat32Array(0, 1.618), | ||||||
|  | "transitions": PackedFloat32Array(1, 1), | ||||||
|  | "update": 1, | ||||||
|  | "values": [false, true] | ||||||
|  | } | ||||||
|  | tracks/1/type = "value" | ||||||
|  | tracks/1/imported = false | ||||||
|  | tracks/1/enabled = true | ||||||
|  | tracks/1/path = NodePath("ExplosionMesh:visible") | ||||||
|  | tracks/1/interp = 1 | ||||||
|  | tracks/1/loop_wrap = true | ||||||
|  | tracks/1/keys = { | ||||||
|  | "times": PackedFloat32Array(0, 1.618), | ||||||
|  | "transitions": PackedFloat32Array(1, 1), | ||||||
|  | "update": 1, | ||||||
|  | "values": [true, false] | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [sub_resource type="AnimationLibrary" id="AnimationLibrary_dg262"] | ||||||
|  | _data = { | ||||||
|  | "RESET": SubResource("Animation_vahxw"), | ||||||
|  | "explode": SubResource("Animation_bv1ov") | ||||||
|  | } | ||||||
|  | 
 | ||||||
| [node name="ShotSetup" type="Node3D"] | [node name="ShotSetup" type="Node3D"] | ||||||
| script = ExtResource("1_r6ei4") | script = ExtResource("1_r6ei4") | ||||||
| 
 | 
 | ||||||
| @ -340,6 +395,11 @@ libraries = { | |||||||
| "": SubResource("AnimationLibrary_u78hq") | "": SubResource("AnimationLibrary_u78hq") | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | [node name="DownswingTimer" type="Timer" parent="."] | ||||||
|  | unique_name_in_owner = true | ||||||
|  | wait_time = 0.42 | ||||||
|  | one_shot = true | ||||||
|  | 
 | ||||||
| [node name="BallReturnTimer" type="Timer" parent="."] | [node name="BallReturnTimer" type="Timer" parent="."] | ||||||
| unique_name_in_owner = true | unique_name_in_owner = true | ||||||
| one_shot = true | one_shot = true | ||||||
| @ -350,7 +410,20 @@ script = ExtResource("7_uh8kn") | |||||||
| [node name="CollisionShape3D" type="CollisionShape3D" parent="Hitbox"] | [node name="CollisionShape3D" type="CollisionShape3D" parent="Hitbox"] | ||||||
| shape = SubResource("SphereShape3D_xvvdi") | shape = SubResource("SphereShape3D_xvvdi") | ||||||
| 
 | 
 | ||||||
|  | [node name="ExplosionMesh" type="MeshInstance3D" parent="."] | ||||||
|  | transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) | ||||||
|  | visible = false | ||||||
|  | mesh = SubResource("QuadMesh_t34ji") | ||||||
|  | 
 | ||||||
|  | [node name="ExplosionAnimation" type="AnimationPlayer" parent="ExplosionMesh"] | ||||||
|  | unique_name_in_owner = true | ||||||
|  | root_node = NodePath("../..") | ||||||
|  | libraries = { | ||||||
|  | "": SubResource("AnimationLibrary_dg262") | ||||||
|  | } | ||||||
|  | 
 | ||||||
| [connection signal="ball_changed" from="BallPoint" to="." method="_on_game_ball_changed"] | [connection signal="ball_changed" from="BallPoint" to="." method="_on_game_ball_changed"] | ||||||
|  | [connection signal="timeout" from="DownswingTimer" to="." method="finish_downswing"] | ||||||
| [connection signal="timeout" from="BallReturnTimer" to="." method="_on_ball_return_timer_timeout"] | [connection signal="timeout" from="BallReturnTimer" to="." method="_on_ball_return_timer_timeout"] | ||||||
| [connection signal="ball_collision" from="Hitbox" to="." method="_on_hitbox_ball_collision"] | [connection signal="ball_collision" from="Hitbox" to="." method="_on_hitbox_ball_collision"] | ||||||
| [connection signal="body_entered" from="Hitbox" to="Hitbox" method="_on_body_entered"] | [connection signal="body_entered" from="Hitbox" to="Hitbox" method="_on_body_entered"] | ||||||
|  | |||||||
							
								
								
									
										9
									
								
								src/shaders/ui_flash.gdshader
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								src/shaders/ui_flash.gdshader
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,9 @@ | |||||||
|  | shader_type canvas_item; | ||||||
|  | 
 | ||||||
|  | uniform vec4 flash_color: source_color = vec4(1.0); | ||||||
|  | 
 | ||||||
|  | void fragment() { | ||||||
|  | 	vec4 base_color = texture(TEXTURE, UV); | ||||||
|  | 	COLOR.rgb = mix(base_color.rgb, flash_color.rgb, flash_color.a); | ||||||
|  | 	COLOR.a = base_color.a; | ||||||
|  | } | ||||||
| @ -3,6 +3,11 @@ class_name ProjectileArc extends Node3D | |||||||
| ## | ## | ||||||
| ## If this node has any children, they will be positioned wherever the projection ends. | ## If this node has any children, they will be positioned wherever the projection ends. | ||||||
| 
 | 
 | ||||||
|  | ## Constant attrition factor for putting collisions | ||||||
|  | ## The actual velocity attrition is dependent on lots of factors | ||||||
|  | #const PUTT_ATTRITION := 0.75  # rough? | ||||||
|  | const PUTT_ATTRITION := 0.8325  # green? | ||||||
|  | 
 | ||||||
| ## Initial speed of the projectile, in m/s. | ## Initial speed of the projectile, in m/s. | ||||||
| ## The projectile's initial direction vector is the negative Z direction relative to this node. | ## The projectile's initial direction vector is the negative Z direction relative to this node. | ||||||
| @export var initial_speed := 1.0 | @export var initial_speed := 1.0 | ||||||
| @ -14,6 +19,8 @@ class_name ProjectileArc extends Node3D | |||||||
| @export var max_steps := 50 | @export var max_steps := 50 | ||||||
| ## Ticks between each projection update. 0 means update every tick. | ## Ticks between each projection update. 0 means update every tick. | ||||||
| @export var ticks_per_update := 0 | @export var ticks_per_update := 0 | ||||||
|  | ## If enabled, project a linear putt instead of an arcing shot | ||||||
|  | @export var putt_projection := false | ||||||
| 
 | 
 | ||||||
| @export_category("Collision") | @export_category("Collision") | ||||||
| ## Enables collision checking. Projection will end at the point where a collision is detected. | ## Enables collision checking. Projection will end at the point where a collision is detected. | ||||||
| @ -27,12 +34,16 @@ class_name ProjectileArc extends Node3D | |||||||
| 
 | 
 | ||||||
| var _tick_counter := 0 | var _tick_counter := 0 | ||||||
| 
 | 
 | ||||||
|  | var _debug_points: Array[Vector3] = [] | ||||||
|  | 
 | ||||||
| @onready var polygon: CSGPolygon3D = %Polygon | @onready var polygon: CSGPolygon3D = %Polygon | ||||||
| @onready var path: Path3D = %Path | @onready var path: Path3D = %Path | ||||||
| 
 | 
 | ||||||
| @onready var gravity: float = ProjectSettings.get_setting("physics/3d/default_gravity") | @onready var gravity: float = ProjectSettings.get_setting("physics/3d/default_gravity") | ||||||
| @onready var gravity_vec: Vector3 = ProjectSettings.get_setting("physics/3d/default_gravity_vector") | @onready var gravity_vec: Vector3 = ProjectSettings.get_setting("physics/3d/default_gravity_vector") | ||||||
| 
 | 
 | ||||||
|  | @onready var debug_draw: Control = %DebugDraw | ||||||
|  | 
 | ||||||
| 
 | 
 | ||||||
| func _process(_delta: float) -> void: | func _process(_delta: float) -> void: | ||||||
| 	if not visible: | 	if not visible: | ||||||
| @ -45,6 +56,8 @@ func _process(_delta: float) -> void: | |||||||
| 		return | 		return | ||||||
| 	_tick_counter = ticks_per_update | 	_tick_counter = ticks_per_update | ||||||
| 
 | 
 | ||||||
|  | 	_debug_points = [] | ||||||
|  | 
 | ||||||
| 	# Rebuild path curve | 	# Rebuild path curve | ||||||
| 	path.global_basis = Basis.IDENTITY | 	path.global_basis = Basis.IDENTITY | ||||||
| 	path.curve.clear_points() | 	path.curve.clear_points() | ||||||
| @ -72,8 +85,13 @@ func _process(_delta: float) -> void: | |||||||
| 			var collision := space.intersect_ray(ray_params) | 			var collision := space.intersect_ray(ray_params) | ||||||
| 			if collision: | 			if collision: | ||||||
| 				# Set current position to collision point, so it will be added to the path | 				# Set current position to collision point, so it will be added to the path | ||||||
| 				# TODO: we could project further using the surface normal here... |  | ||||||
| 				pos = collision["position"] | 				pos = collision["position"] | ||||||
|  | 				_debug_points.append(pos) | ||||||
|  | 				if putt_projection: | ||||||
|  | 					var norm: Vector3 = (collision["normal"] as Vector3).normalized() | ||||||
|  | 					next_pos = pos + norm * 0.05 | ||||||
|  | 					vel = PUTT_ATTRITION * (vel - 2 * norm * vel.dot(norm)) | ||||||
|  | 				else: | ||||||
| 					# End projection! | 					# End projection! | ||||||
| 					break | 					break | ||||||
| 
 | 
 | ||||||
| @ -89,6 +107,8 @@ func _process(_delta: float) -> void: | |||||||
| 			node_3d.global_position = pos | 			node_3d.global_position = pos | ||||||
| 			node_3d.global_basis = Basis.IDENTITY | 			node_3d.global_basis = Basis.IDENTITY | ||||||
| 
 | 
 | ||||||
|  | 	(%DebugDraw as CanvasItem).queue_redraw() | ||||||
|  | 
 | ||||||
| 
 | 
 | ||||||
| func _on_visibility_changed() -> void: | func _on_visibility_changed() -> void: | ||||||
| 	# Force update as soon as visible | 	# Force update as soon as visible | ||||||
|  | |||||||
| @ -1,9 +1,9 @@ | |||||||
| [gd_scene load_steps=9 format=3 uid="uid://fht6j87o8ecr"] | [gd_scene load_steps=10 format=3 uid="uid://fht6j87o8ecr"] | ||||||
| 
 | 
 | ||||||
| [ext_resource type="Script" path="res://src/ui/3d/projectile_arc/projectile_arc.gd" id="1_vafqi"] | [ext_resource type="Script" path="res://src/ui/3d/projectile_arc/projectile_arc.gd" id="1_vafqi"] | ||||||
| [ext_resource type="Shader" path="res://src/shaders/plasma.gdshader" id="2_pi36v"] | [ext_resource type="Shader" path="res://src/shaders/plasma.gdshader" id="2_pi36v"] | ||||||
| 
 | 
 | ||||||
| [sub_resource type="Curve3D" id="Curve3D_rfv3d"] | [sub_resource type="Curve3D" id="Curve3D_sj0rs"] | ||||||
| 
 | 
 | ||||||
| [sub_resource type="Gradient" id="Gradient_28hbf"] | [sub_resource type="Gradient" id="Gradient_28hbf"] | ||||||
| offsets = PackedFloat32Array(0, 0.37193, 0.838596, 1) | offsets = PackedFloat32Array(0, 0.37193, 0.838596, 1) | ||||||
| @ -34,12 +34,31 @@ shader_parameter/pulse_speed = 0.3 | |||||||
| shader_parameter/wave_gradient = SubResource("GradientTexture1D_l8ond") | shader_parameter/wave_gradient = SubResource("GradientTexture1D_l8ond") | ||||||
| shader_parameter/pulse_gradient = SubResource("GradientTexture1D_8xhfy") | shader_parameter/pulse_gradient = SubResource("GradientTexture1D_8xhfy") | ||||||
| 
 | 
 | ||||||
|  | [sub_resource type="GDScript" id="GDScript_hbqgy"] | ||||||
|  | script/source = "extends Control | ||||||
|  | 
 | ||||||
|  | const COLOR := Color(0, 1, 0) | ||||||
|  | const WIDTH := 4 | ||||||
|  | const RADIUS := 16 | ||||||
|  | 
 | ||||||
|  | @onready var root: ProjectileArc = owner | ||||||
|  | 
 | ||||||
|  | func _draw() -> void: | ||||||
|  | 	if not visible: | ||||||
|  | 		return | ||||||
|  | 
 | ||||||
|  | 	var camera := get_viewport().get_camera_3d() | ||||||
|  | 	for p: Vector3 in root._debug_points: | ||||||
|  | 		var pos := camera.unproject_position(p) | ||||||
|  | 		draw_circle(pos, RADIUS, COLOR, false, WIDTH, true) | ||||||
|  | " | ||||||
|  | 
 | ||||||
| [node name="ProjectileArc" type="Node3D"] | [node name="ProjectileArc" type="Node3D"] | ||||||
| script = ExtResource("1_vafqi") | script = ExtResource("1_vafqi") | ||||||
| 
 | 
 | ||||||
| [node name="Path" type="Path3D" parent="."] | [node name="Path" type="Path3D" parent="."] | ||||||
| unique_name_in_owner = true | unique_name_in_owner = true | ||||||
| curve = SubResource("Curve3D_rfv3d") | curve = SubResource("Curve3D_sj0rs") | ||||||
| 
 | 
 | ||||||
| [node name="Polygon" type="CSGPolygon3D" parent="Path"] | [node name="Polygon" type="CSGPolygon3D" parent="Path"] | ||||||
| unique_name_in_owner = true | unique_name_in_owner = true | ||||||
| @ -56,4 +75,13 @@ path_u_distance = 1.0 | |||||||
| path_joined = false | path_joined = false | ||||||
| material = SubResource("ShaderMaterial_ahf42") | material = SubResource("ShaderMaterial_ahf42") | ||||||
| 
 | 
 | ||||||
|  | [node name="DebugDraw" type="Control" parent="."] | ||||||
|  | unique_name_in_owner = true | ||||||
|  | visible = false | ||||||
|  | layout_mode = 3 | ||||||
|  | anchors_preset = 0 | ||||||
|  | offset_right = 40.0 | ||||||
|  | offset_bottom = 40.0 | ||||||
|  | script = SubResource("GDScript_hbqgy") | ||||||
|  | 
 | ||||||
| [connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"] | [connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"] | ||||||
|  | |||||||
| @ -3,15 +3,39 @@ class_name Arc extends Control | |||||||
| 
 | 
 | ||||||
| const BASE_POINTS := 64 | const BASE_POINTS := 64 | ||||||
| 
 | 
 | ||||||
| @export var gap_angle := 0.1 | @export_range(-360, 360, 0.001, "radians") var arc_start := 0.1: | ||||||
| @export var width := 1.0 | 	set(value): | ||||||
| @export var antialiased := true | 		arc_start = value | ||||||
| @export var color: Color | 		queue_redraw() | ||||||
|  | @export_range(-360, 360, 0.001, "radians") var arc_end := TAU: | ||||||
|  | 	set(value): | ||||||
|  | 		arc_end = value | ||||||
|  | 		queue_redraw() | ||||||
|  | @export var width := 1.0: | ||||||
|  | 	set(value): | ||||||
|  | 		width = value | ||||||
|  | 		queue_redraw() | ||||||
|  | @export var antialiased := true: | ||||||
|  | 	set(value): | ||||||
|  | 		antialiased = value | ||||||
|  | 		queue_redraw() | ||||||
|  | @export var color: Color: | ||||||
|  | 	set(value): | ||||||
|  | 		color = value | ||||||
|  | 		queue_redraw() | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| func _draw() -> void: | func _draw() -> void: | ||||||
| 	var radius: float = minf(size.x, size.y) / 2.0 | 	var radius: float = minf(size.x, size.y) / 2.0 | ||||||
| 	var point_count: int = int(BASE_POINTS * (TAU - gap_angle) / TAU) | 	var width_buffer: float = floor(width / 2.0) | ||||||
|  | 	var point_count: int = int(BASE_POINTS * (arc_end - arc_start) / TAU) | ||||||
| 	draw_arc( | 	draw_arc( | ||||||
| 		Vector2(radius, radius), radius, gap_angle, TAU, point_count, color, width, antialiased | 		Vector2(radius, radius), | ||||||
|  | 		radius - width_buffer, | ||||||
|  | 		arc_start, | ||||||
|  | 		arc_end, | ||||||
|  | 		point_count, | ||||||
|  | 		color, | ||||||
|  | 		width, | ||||||
|  | 		antialiased | ||||||
| 	) | 	) | ||||||
|  | |||||||
| @ -68,7 +68,7 @@ grow_horizontal = 2 | |||||||
| grow_vertical = 2 | grow_vertical = 2 | ||||||
| pivot_offset = Vector2(300, 300) | pivot_offset = Vector2(300, 300) | ||||||
| script = ExtResource("2_vijl7") | script = ExtResource("2_vijl7") | ||||||
| gap_angle = 0.6 | arc_start = 0.610865 | ||||||
| width = 36.0 | width = 36.0 | ||||||
| color = Color(0, 0, 0, 0.392157) | color = Color(0, 0, 0, 0.392157) | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										31
									
								
								src/ui/shot_hud/curve_bar/curve_bar.gd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								src/ui/shot_hud/curve_bar/curve_bar.gd
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | |||||||
|  | @tool | ||||||
|  | class_name CurveBar extends Control | ||||||
|  | ## Swinging arc used to set the curve of a shot. | ||||||
|  | 
 | ||||||
|  | const PIVOT_SCALE := -PI / 4 | ||||||
|  | 
 | ||||||
|  | @export var gradient: Gradient: | ||||||
|  | 	set(value): | ||||||
|  | 		if gradient_tex: | ||||||
|  | 			gradient_tex.gradient = value | ||||||
|  | 		gradient = value | ||||||
|  | 
 | ||||||
|  | @export var value: float: | ||||||
|  | 	set(v): | ||||||
|  | 		if pivot: | ||||||
|  | 			pivot.rotation = v * PIVOT_SCALE | ||||||
|  | 	get: | ||||||
|  | 		return pivot.rotation / PIVOT_SCALE if pivot else 0 | ||||||
|  | 
 | ||||||
|  | @onready var pivot: Control = %Pivot | ||||||
|  | @onready var gradient_fill: TextureRect = %GradientFill | ||||||
|  | @onready var gradient_tex: GradientTexture2D = gradient_fill.texture | ||||||
|  | @onready var animation_player: AnimationPlayer = $Reticle/AnimationPlayer | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | func _ready() -> void: | ||||||
|  | 	gradient = gradient | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | func flourish() -> void: | ||||||
|  | 	animation_player.play("flourish") | ||||||
							
								
								
									
										184
									
								
								src/ui/shot_hud/curve_bar/curve_bar.tscn
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										184
									
								
								src/ui/shot_hud/curve_bar/curve_bar.tscn
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,184 @@ | |||||||
|  | [gd_scene load_steps=9 format=3 uid="uid://mm02j126jo1h"] | ||||||
|  | 
 | ||||||
|  | [ext_resource type="Script" path="res://src/ui/shot_hud/curve_bar/curve_bar.gd" id="1_aqvdi"] | ||||||
|  | [ext_resource type="Gradient" uid="uid://k7867gxaxx57" path="res://src/ui/shot_hud/curve_bar/one_sided_gradient.tres" id="2_f3fom"] | ||||||
|  | [ext_resource type="Texture2D" uid="uid://du3vk5nnksohs" path="res://assets/sprites/particles/sparkle.png" id="3_2tv33"] | ||||||
|  | [ext_resource type="Script" path="res://src/ui/decorations/arc.gd" id="4_s2bpl"] | ||||||
|  | 
 | ||||||
|  | [sub_resource type="GradientTexture2D" id="GradientTexture2D_o88ik"] | ||||||
|  | gradient = ExtResource("2_f3fom") | ||||||
|  | width = 128 | ||||||
|  | height = 128 | ||||||
|  | fill = 1 | ||||||
|  | fill_from = Vector2(0.5, 0.02) | ||||||
|  | fill_to = Vector2(0.5, 0.37) | ||||||
|  | metadata/_snap_enabled = true | ||||||
|  | 
 | ||||||
|  | [sub_resource type="Animation" id="Animation_kfg2n"] | ||||||
|  | length = 0.001 | ||||||
|  | tracks/0/type = "value" | ||||||
|  | tracks/0/imported = false | ||||||
|  | tracks/0/enabled = true | ||||||
|  | tracks/0/path = NodePath("Reticle:rotation") | ||||||
|  | tracks/0/interp = 2 | ||||||
|  | tracks/0/loop_wrap = true | ||||||
|  | tracks/0/keys = { | ||||||
|  | "times": PackedFloat32Array(0), | ||||||
|  | "transitions": PackedFloat32Array(1), | ||||||
|  | "update": 0, | ||||||
|  | "values": [0.0] | ||||||
|  | } | ||||||
|  | tracks/1/type = "value" | ||||||
|  | tracks/1/imported = false | ||||||
|  | tracks/1/enabled = true | ||||||
|  | tracks/1/path = NodePath("Reticle:scale") | ||||||
|  | tracks/1/interp = 1 | ||||||
|  | tracks/1/loop_wrap = true | ||||||
|  | tracks/1/keys = { | ||||||
|  | "times": PackedFloat32Array(0), | ||||||
|  | "transitions": PackedFloat32Array(1), | ||||||
|  | "update": 0, | ||||||
|  | "values": [Vector2(1, 1)] | ||||||
|  | } | ||||||
|  | tracks/2/type = "value" | ||||||
|  | tracks/2/imported = false | ||||||
|  | tracks/2/enabled = true | ||||||
|  | tracks/2/path = NodePath("Pivot/ArcBG:color") | ||||||
|  | tracks/2/interp = 1 | ||||||
|  | tracks/2/loop_wrap = true | ||||||
|  | tracks/2/keys = { | ||||||
|  | "times": PackedFloat32Array(0), | ||||||
|  | "transitions": PackedFloat32Array(1), | ||||||
|  | "update": 0, | ||||||
|  | "values": [Color(0.0352941, 0.0784314, 0.160784, 0.784314)] | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [sub_resource type="Animation" id="Animation_pt3no"] | ||||||
|  | resource_name = "flourish" | ||||||
|  | length = 0.42 | ||||||
|  | step = 0.01 | ||||||
|  | tracks/0/type = "value" | ||||||
|  | tracks/0/imported = false | ||||||
|  | tracks/0/enabled = true | ||||||
|  | tracks/0/path = NodePath("Reticle:rotation") | ||||||
|  | tracks/0/interp = 2 | ||||||
|  | tracks/0/loop_wrap = true | ||||||
|  | tracks/0/keys = { | ||||||
|  | "times": PackedFloat32Array(0, 0.42), | ||||||
|  | "transitions": PackedFloat32Array(1.618, 1), | ||||||
|  | "update": 0, | ||||||
|  | "values": [0.0, 6.28319] | ||||||
|  | } | ||||||
|  | tracks/1/type = "value" | ||||||
|  | tracks/1/imported = false | ||||||
|  | tracks/1/enabled = true | ||||||
|  | tracks/1/path = NodePath("Reticle:scale") | ||||||
|  | tracks/1/interp = 2 | ||||||
|  | tracks/1/loop_wrap = true | ||||||
|  | tracks/1/keys = { | ||||||
|  | "times": PackedFloat32Array(0, 0.0333333, 0.2, 0.42), | ||||||
|  | "transitions": PackedFloat32Array(1, 1.618, 1.618, 1), | ||||||
|  | "update": 0, | ||||||
|  | "values": [Vector2(1, 1), Vector2(0.6, 0.6), Vector2(2, 2), Vector2(1, 1)] | ||||||
|  | } | ||||||
|  | tracks/2/type = "value" | ||||||
|  | tracks/2/imported = false | ||||||
|  | tracks/2/enabled = true | ||||||
|  | tracks/2/path = NodePath("Pivot/ArcBG:color") | ||||||
|  | tracks/2/interp = 1 | ||||||
|  | tracks/2/loop_wrap = true | ||||||
|  | tracks/2/keys = { | ||||||
|  | "times": PackedFloat32Array(0, 0.105, 0.21, 0.315, 0.42), | ||||||
|  | "transitions": PackedFloat32Array(1, 1, 1, 1, 1), | ||||||
|  | "update": 0, | ||||||
|  | "values": [Color(0.0352941, 0.0784314, 0.160784, 0.784314), Color(1, 1, 1, 1), Color(0.0352941, 0.0784314, 0.160784, 0.784314), Color(1, 1, 1, 1), Color(0.0352941, 0.0784314, 0.160784, 0.784314)] | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [sub_resource type="AnimationLibrary" id="AnimationLibrary_eqkfk"] | ||||||
|  | _data = { | ||||||
|  | "RESET": SubResource("Animation_kfg2n"), | ||||||
|  | "flourish": SubResource("Animation_pt3no") | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | [node name="CurveBar" type="Control"] | ||||||
|  | layout_mode = 3 | ||||||
|  | anchors_preset = 8 | ||||||
|  | anchor_left = 0.5 | ||||||
|  | anchor_top = 0.5 | ||||||
|  | anchor_right = 0.5 | ||||||
|  | anchor_bottom = 0.5 | ||||||
|  | grow_horizontal = 2 | ||||||
|  | grow_vertical = 2 | ||||||
|  | script = ExtResource("1_aqvdi") | ||||||
|  | gradient = ExtResource("2_f3fom") | ||||||
|  | 
 | ||||||
|  | [node name="Pivot" type="Control" parent="."] | ||||||
|  | unique_name_in_owner = true | ||||||
|  | show_behind_parent = true | ||||||
|  | texture_filter = 6 | ||||||
|  | custom_minimum_size = Vector2(600, 600) | ||||||
|  | anchors_preset = 0 | ||||||
|  | offset_left = -300.0 | ||||||
|  | offset_top = -32.0 | ||||||
|  | offset_right = 300.0 | ||||||
|  | offset_bottom = 568.0 | ||||||
|  | pivot_offset = Vector2(300, 300) | ||||||
|  | 
 | ||||||
|  | [node name="ArcBG" type="Control" parent="Pivot"] | ||||||
|  | layout_mode = 1 | ||||||
|  | anchors_preset = 15 | ||||||
|  | anchor_right = 1.0 | ||||||
|  | anchor_bottom = 1.0 | ||||||
|  | grow_horizontal = 2 | ||||||
|  | grow_vertical = 2 | ||||||
|  | script = ExtResource("4_s2bpl") | ||||||
|  | arc_start = -2.35619 | ||||||
|  | arc_end = -0.785398 | ||||||
|  | width = 32.0 | ||||||
|  | color = Color(0.0352941, 0.0784314, 0.160784, 0.784314) | ||||||
|  | 
 | ||||||
|  | [node name="MarginContainer" type="MarginContainer" parent="Pivot"] | ||||||
|  | layout_mode = 1 | ||||||
|  | anchors_preset = 15 | ||||||
|  | anchor_right = 1.0 | ||||||
|  | anchor_bottom = 1.0 | ||||||
|  | grow_horizontal = 2 | ||||||
|  | grow_vertical = 2 | ||||||
|  | theme_override_constants/margin_left = 3 | ||||||
|  | theme_override_constants/margin_top = 3 | ||||||
|  | theme_override_constants/margin_right = 3 | ||||||
|  | theme_override_constants/margin_bottom = 3 | ||||||
|  | 
 | ||||||
|  | [node name="ArcFill" type="Control" parent="Pivot/MarginContainer"] | ||||||
|  | clip_children = 1 | ||||||
|  | layout_mode = 2 | ||||||
|  | script = ExtResource("4_s2bpl") | ||||||
|  | arc_start = -2.35619 | ||||||
|  | arc_end = -0.785398 | ||||||
|  | width = 26.0 | ||||||
|  | 
 | ||||||
|  | [node name="GradientFill" type="TextureRect" parent="Pivot/MarginContainer/ArcFill"] | ||||||
|  | unique_name_in_owner = true | ||||||
|  | layout_mode = 1 | ||||||
|  | anchors_preset = 15 | ||||||
|  | anchor_right = 1.0 | ||||||
|  | anchor_bottom = 1.0 | ||||||
|  | grow_horizontal = 2 | ||||||
|  | grow_vertical = 2 | ||||||
|  | texture = SubResource("GradientTexture2D_o88ik") | ||||||
|  | 
 | ||||||
|  | [node name="Reticle" type="TextureRect" parent="."] | ||||||
|  | texture_filter = 1 | ||||||
|  | layout_mode = 0 | ||||||
|  | offset_left = -20.0 | ||||||
|  | offset_top = -20.0 | ||||||
|  | offset_right = 20.0 | ||||||
|  | offset_bottom = 20.0 | ||||||
|  | pivot_offset = Vector2(20, 20) | ||||||
|  | texture = ExtResource("3_2tv33") | ||||||
|  | 
 | ||||||
|  | [node name="AnimationPlayer" type="AnimationPlayer" parent="Reticle"] | ||||||
|  | root_node = NodePath("../..") | ||||||
|  | libraries = { | ||||||
|  | "": SubResource("AnimationLibrary_eqkfk") | ||||||
|  | } | ||||||
							
								
								
									
										6
									
								
								src/ui/shot_hud/curve_bar/one_sided_gradient.tres
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								src/ui/shot_hud/curve_bar/one_sided_gradient.tres
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | |||||||
|  | [gd_resource type="Gradient" format=3 uid="uid://k7867gxaxx57"] | ||||||
|  | 
 | ||||||
|  | [resource] | ||||||
|  | interpolation_color_space = 2 | ||||||
|  | offsets = PackedFloat32Array(0, 0.25, 0.5, 0.75, 1) | ||||||
|  | colors = PackedColorArray(1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0) | ||||||
							
								
								
									
										6
									
								
								src/ui/shot_hud/curve_bar/standard_gradient.tres
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								src/ui/shot_hud/curve_bar/standard_gradient.tres
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | |||||||
|  | [gd_resource type="Gradient" format=3 uid="uid://3achrua4vnny"] | ||||||
|  | 
 | ||||||
|  | [resource] | ||||||
|  | interpolation_color_space = 2 | ||||||
|  | offsets = PackedFloat32Array(0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1) | ||||||
|  | colors = PackedColorArray(1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0) | ||||||
| @ -9,7 +9,7 @@ const LIFE_BAR_DAMAGE_RUMBLE_TIME := 0.2 | |||||||
| var player: WorldPlayer | var player: WorldPlayer | ||||||
| 
 | 
 | ||||||
| @onready var power_bar: TextureProgressBar = %PowerBar | @onready var power_bar: TextureProgressBar = %PowerBar | ||||||
| @onready var curve_bar: ProgressBar = %CurveBar | @onready var curve_bar: CurveBar = %CurveBar | ||||||
| @onready var life_bar: TextureProgressBar = %LifeBar | @onready var life_bar: TextureProgressBar = %LifeBar | ||||||
| 
 | 
 | ||||||
| @onready var club_selector: ClubSelector = %ClubSelector | @onready var club_selector: ClubSelector = %ClubSelector | ||||||
| @ -81,6 +81,10 @@ func reset_curve_bar() -> void: | |||||||
| 	_curve_animation.stop() | 	_curve_animation.stop() | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | func gauge_flourish() -> void: | ||||||
|  | 	curve_bar.flourish() | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| func play_nice_animation() -> void: | func play_nice_animation() -> void: | ||||||
| 	_nice_animation.play("display") | 	_nice_animation.play("display") | ||||||
| 
 | 
 | ||||||
| @ -111,8 +115,8 @@ func set_life_value(new_value: float) -> void: | |||||||
| 	life_bar.value = new_value | 	life_bar.value = new_value | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| static func create(player: WorldPlayer) -> ShotHUD: | static func create(_player: WorldPlayer) -> ShotHUD: | ||||||
| 	var instance: ShotHUD = scene.instantiate() | 	var instance: ShotHUD = scene.instantiate() | ||||||
| 	instance.player = player | 	instance.player = _player | ||||||
| 
 | 
 | ||||||
| 	return instance | 	return instance | ||||||
|  | |||||||
| @ -1,4 +1,4 @@ | |||||||
| [gd_scene load_steps=34 format=3 uid="uid://c4ifdiohng830"] | [gd_scene load_steps=35 format=3 uid="uid://c4ifdiohng830"] | ||||||
| 
 | 
 | ||||||
| [ext_resource type="Script" path="res://src/ui/shot_hud/shot_hud.gd" id="1_x5b4c"] | [ext_resource type="Script" path="res://src/ui/shot_hud/shot_hud.gd" id="1_x5b4c"] | ||||||
| [ext_resource type="Shader" path="res://src/shaders/canvas_retro.gdshader" id="1_ybxxp"] | [ext_resource type="Shader" path="res://src/shaders/canvas_retro.gdshader" id="1_ybxxp"] | ||||||
| @ -7,6 +7,7 @@ | |||||||
| [ext_resource type="Texture2D" uid="uid://b5812y3pmmgg5" path="res://assets/ui/gauge_patch.png" id="4_5kcpe"] | [ext_resource type="Texture2D" uid="uid://b5812y3pmmgg5" path="res://assets/ui/gauge_patch.png" id="4_5kcpe"] | ||||||
| [ext_resource type="Texture2D" uid="uid://76fjx2ukavqe" path="res://assets/ui/power_gauge_fill.png" id="5_3i1yq"] | [ext_resource type="Texture2D" uid="uid://76fjx2ukavqe" path="res://assets/ui/power_gauge_fill.png" id="5_3i1yq"] | ||||||
| [ext_resource type="Texture2D" uid="uid://4a8tvjgwegv3" path="res://assets/ui/power_gauge_tab.png" id="6_sw48q"] | [ext_resource type="Texture2D" uid="uid://4a8tvjgwegv3" path="res://assets/ui/power_gauge_tab.png" id="6_sw48q"] | ||||||
|  | [ext_resource type="PackedScene" uid="uid://mm02j126jo1h" path="res://src/ui/shot_hud/curve_bar/curve_bar.tscn" id="7_kqi7w"] | ||||||
| [ext_resource type="PackedScene" uid="uid://b0yr0w0xv8cm5" path="res://src/ui/shot_hud/ball_selector/ball_selector.tscn" id="8_b2302"] | [ext_resource type="PackedScene" uid="uid://b0yr0w0xv8cm5" path="res://src/ui/shot_hud/ball_selector/ball_selector.tscn" id="8_b2302"] | ||||||
| [ext_resource type="FontFile" uid="uid://dsa0oh7c0h4pu" path="res://assets/fonts/Racing_Sans_One/RacingSansOne-Regular.ttf" id="8_bejx4"] | [ext_resource type="FontFile" uid="uid://dsa0oh7c0h4pu" path="res://assets/fonts/Racing_Sans_One/RacingSansOne-Regular.ttf" id="8_bejx4"] | ||||||
| [ext_resource type="Texture2D" uid="uid://tancoet1lih5" path="res://assets/ui/ball_icons/basic_icon.png" id="8_tt8i3"] | [ext_resource type="Texture2D" uid="uid://tancoet1lih5" path="res://assets/ui/ball_icons/basic_icon.png" id="8_tt8i3"] | ||||||
| @ -670,7 +671,6 @@ script = ExtResource("3_6groq") | |||||||
| 
 | 
 | ||||||
| [node name="PowerBar" type="TextureProgressBar" parent="ShotGauges/PowerGauge/Rumbler"] | [node name="PowerBar" type="TextureProgressBar" parent="ShotGauges/PowerGauge/Rumbler"] | ||||||
| unique_name_in_owner = true | unique_name_in_owner = true | ||||||
| visible = false |  | ||||||
| texture_filter = 5 | texture_filter = 5 | ||||||
| custom_minimum_size = Vector2(64, 0) | custom_minimum_size = Vector2(64, 0) | ||||||
| layout_mode = 1 | layout_mode = 1 | ||||||
| @ -718,19 +718,9 @@ grow_horizontal = 2 | |||||||
| grow_vertical = 2 | grow_vertical = 2 | ||||||
| mouse_filter = 1 | mouse_filter = 1 | ||||||
| 
 | 
 | ||||||
| [node name="CurveBar" type="ProgressBar" parent="ShotGauges/CurveGauge"] | [node name="CurveBar" parent="ShotGauges/CurveGauge" instance=ExtResource("7_kqi7w")] | ||||||
| unique_name_in_owner = true | unique_name_in_owner = true | ||||||
| visible = false |  | ||||||
| layout_mode = 1 | layout_mode = 1 | ||||||
| anchors_preset = 15 |  | ||||||
| anchor_right = 1.0 |  | ||||||
| anchor_bottom = 1.0 |  | ||||||
| offset_top = -13.5 |  | ||||||
| offset_bottom = 13.5 |  | ||||||
| grow_horizontal = 2 |  | ||||||
| grow_vertical = 2 |  | ||||||
| min_value = -1.0 |  | ||||||
| max_value = 1.0 |  | ||||||
| 
 | 
 | ||||||
| [node name="CurveAnimation" type="AnimationPlayer" parent="ShotGauges/CurveGauge"] | [node name="CurveAnimation" type="AnimationPlayer" parent="ShotGauges/CurveGauge"] | ||||||
| unique_name_in_owner = true | unique_name_in_owner = true | ||||||
|  | |||||||
| @ -1,4 +1,4 @@ | |||||||
| [gd_scene load_steps=8 format=3 uid="uid://cwnwcd8kushl3"] | [gd_scene load_steps=9 format=3 uid="uid://cwnwcd8kushl3"] | ||||||
| 
 | 
 | ||||||
| [ext_resource type="Script" path="res://src/world/world.gd" id="1_ybjyx"] | [ext_resource type="Script" path="res://src/world/world.gd" id="1_ybjyx"] | ||||||
| [ext_resource type="PackedScene" uid="uid://bm2o3mex10v11" path="res://levels/debug_level/debug_level.tscn" id="2_0xu5a"] | [ext_resource type="PackedScene" uid="uid://bm2o3mex10v11" path="res://levels/debug_level/debug_level.tscn" id="2_0xu5a"] | ||||||
| @ -6,10 +6,11 @@ | |||||||
| [ext_resource type="Script" path="res://src/ui/world_ui.gd" id="2_imewa"] | [ext_resource type="Script" path="res://src/ui/world_ui.gd" id="2_imewa"] | ||||||
| [ext_resource type="Resource" uid="uid://crock3revdn73" path="res://src/player/debug_player.tres" id="3_pyw81"] | [ext_resource type="Resource" uid="uid://crock3revdn73" path="res://src/player/debug_player.tres" id="3_pyw81"] | ||||||
| [ext_resource type="Script" path="res://src/world/play_manager/round_robin_manager.gd" id="5_h6mje"] | [ext_resource type="Script" path="res://src/world/play_manager/round_robin_manager.gd" id="5_h6mje"] | ||||||
|  | [ext_resource type="Resource" uid="uid://b5j0lmo4jayk4" path="res://src/player/debug_orange.tres" id="5_ym50e"] | ||||||
| 
 | 
 | ||||||
| [sub_resource type="Resource" id="Resource_rdjhi"] | [sub_resource type="Resource" id="Resource_rdjhi"] | ||||||
| script = ExtResource("5_h6mje") | script = ExtResource("5_h6mje") | ||||||
| players = Array[ExtResource("2_e743i")]([ExtResource("3_pyw81")]) | players = Array[ExtResource("2_e743i")]([ExtResource("3_pyw81"), ExtResource("5_ym50e")]) | ||||||
| 
 | 
 | ||||||
| [node name="World" type="Node" groups=["WorldGroup"]] | [node name="World" type="Node" groups=["WorldGroup"]] | ||||||
| script = ExtResource("1_ybjyx") | script = ExtResource("1_ybjyx") | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user