generated from krampus/template-godot4
	Compare commits
	
		
			No commits in common. "0b0cb0ddf1da36dfa647d5f9f5c91098141d0292" and "6e34f236cab279f7cf4e147bf417b0b564dfd1b5" have entirely different histories.
		
	
	
		
			0b0cb0ddf1
			...
			6e34f236ca
		
	
		
| @ -1,120 +0,0 @@ | ||||
| GFOLF: Combat Golf Action | ||||
| Asset credits | ||||
| 
 | ||||
| * Graphics | ||||
| 
 | ||||
| ** Clear Sea Water | ||||
| 
 | ||||
| *** Retrieved from https://www.the3rdsequence.com/texturedb/texture/44/clear+sea+water/ | ||||
| 
 | ||||
| *** Author: the3rdSequence | ||||
| 
 | ||||
| *** License: CC BY 4.0 | ||||
| 
 | ||||
| * Fonts | ||||
| 
 | ||||
| ** Dokdo | ||||
| 
 | ||||
| *** Retrieved from https://fonts.google.com/specimen/Dokdo | ||||
| 
 | ||||
| *** Author: FONTRIX | ||||
| 
 | ||||
| *** License: OFL 1.1 | ||||
| 
 | ||||
| ** Geo | ||||
| 
 | ||||
| *** Retrieved from https://fonts.google.com/specimen/Geo | ||||
| 
 | ||||
| *** Author: Ben Weiner | ||||
| 
 | ||||
| *** License: OFL 1.1 | ||||
| 
 | ||||
| ** Racing Sans One | ||||
| 
 | ||||
| *** Retrieved from https://fonts.google.com/specimen/Racing+Sans+One | ||||
| 
 | ||||
| *** Author: Impallari Type | ||||
| 
 | ||||
| *** License: OFL 1.1 | ||||
| 
 | ||||
| * Sound | ||||
| 
 | ||||
| ** drive1.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/zolopher/sounds/75203/ | ||||
| 
 | ||||
| *** Author: zolopher | ||||
| 
 | ||||
| *** License: CC0 | ||||
| 
 | ||||
| ** drive2.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/zolopher/sounds/75214/ | ||||
| 
 | ||||
| *** Author: zolopher | ||||
| 
 | ||||
| *** License: CC0 | ||||
| 
 | ||||
| ** drive3.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/zolopher/sounds/75204/ | ||||
| 
 | ||||
| *** Author: zolopher | ||||
| 
 | ||||
| *** License: CC0 | ||||
| 
 | ||||
| ** drive4.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/13FPanska_Marval_Lukas/sounds/379328/ | ||||
| 
 | ||||
| *** Author: 13FPanska_Marval_Lukas | ||||
| 
 | ||||
| *** License: CC0 | ||||
| 
 | ||||
| ** hole.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/inbeeld/sounds/21878/ | ||||
| 
 | ||||
| *** Author: inbeeld | ||||
| 
 | ||||
| *** License: CC0 | ||||
| 
 | ||||
| ** putt1.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/lmbubec/sounds/119451/ | ||||
| 
 | ||||
| *** Author: lmbubec | ||||
| 
 | ||||
| *** License: CC0 | ||||
| 
 | ||||
| ** grass1.wav - grass5.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/mmmtoop/sounds/674030/ | ||||
| 
 | ||||
| *** Author: mmmtoop | ||||
| 
 | ||||
| *** License: CC0 | ||||
| 
 | ||||
| ** sand1.wav - sand3.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/Elements-Library/sounds/683785/ | ||||
| 
 | ||||
| *** Author: Elements-Library | ||||
| 
 | ||||
| *** License: CC0 | ||||
| 
 | ||||
| ** explosion.mp3 | ||||
| 
 | ||||
| *** Retrieved from https://pixabay.com/sound-effects/grenade-explosion-14-190266/ | ||||
| 
 | ||||
| *** Author: DavidDumaisAudio | ||||
| 
 | ||||
| *** License: Pixabay | ||||
| 
 | ||||
| ** ecofuture.wav | ||||
| 
 | ||||
| *** Retrieved from https://freesound.org/people/soneproject/sounds/346425/ | ||||
| 
 | ||||
| *** Author: soneproject | ||||
| 
 | ||||
| *** License: CC BY 3.0 | ||||
							
								
								
									
										
											BIN
										
									
								
								asset_dev/audio/366597__jittels__golf-ball-bounce.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								asset_dev/audio/366597__jittels__golf-ball-bounce.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								asset_dev/audio/399294__komitwav__synth-sparkle.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								asset_dev/audio/399294__komitwav__synth-sparkle.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								asset_dev/audio/674030__mmmtoop__230104-037_normalized_floor_mat_golf_ball_potential_kick_hit.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								asset_dev/audio/674030__mmmtoop__230104-037_normalized_floor_mat_golf_ball_potential_kick_hit.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								asset_dev/audio/683785__elements-library__hard-impact-on-sand.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								asset_dev/audio/683785__elements-library__hard-impact-on-sand.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								asset_dev/audio/drive4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								asset_dev/audio/drive4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -16,7 +16,7 @@ Rendering=null | ||||
| antialiasing=1 | ||||
| generate_mipmaps=true | ||||
| disable_embedded_bitmaps=true | ||||
| multichannel_signed_distance_field=true | ||||
| multichannel_signed_distance_field=false | ||||
| msdf_pixel_range=8 | ||||
| msdf_size=48 | ||||
| allow_system_fallback=true | ||||
|  | ||||
| @ -16,7 +16,7 @@ Rendering=null | ||||
| antialiasing=1 | ||||
| generate_mipmaps=true | ||||
| disable_embedded_bitmaps=true | ||||
| multichannel_signed_distance_field=true | ||||
| multichannel_signed_distance_field=false | ||||
| msdf_pixel_range=8 | ||||
| msdf_size=48 | ||||
| allow_system_fallback=true | ||||
|  | ||||
| @ -16,7 +16,7 @@ Rendering=null | ||||
| antialiasing=1 | ||||
| generate_mipmaps=true | ||||
| disable_embedded_bitmaps=true | ||||
| multichannel_signed_distance_field=true | ||||
| multichannel_signed_distance_field=false | ||||
| msdf_pixel_range=8 | ||||
| msdf_size=48 | ||||
| allow_system_fallback=true | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://bp2iaowkqvtj8" | ||||
| path="res://.godot/imported/concrete1.wav-fd53edddc2b6023804ce5ffb1713f99a.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/concrete1.wav" | ||||
| dest_files=["res://.godot/imported/concrete1.wav-fd53edddc2b6023804ce5ffb1713f99a.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://4355dy0meqbm" | ||||
| path="res://.godot/imported/concrete2.wav-ca6360ffedc83e3ef200990602e8177f.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/concrete2.wav" | ||||
| dest_files=["res://.godot/imported/concrete2.wav-ca6360ffedc83e3ef200990602e8177f.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://orisjdcj3mes" | ||||
| path="res://.godot/imported/concrete3.wav-fd28bbeb346240f5e96bc491f8e0a16f.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/concrete3.wav" | ||||
| dest_files=["res://.godot/imported/concrete3.wav-fd28bbeb346240f5e96bc491f8e0a16f.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://o4whyv43rr1u" | ||||
| path="res://.godot/imported/concrete4.wav-4a18f12d2767719d7c6842841fd8d85b.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/concrete4.wav" | ||||
| dest_files=["res://.godot/imported/concrete4.wav-4a18f12d2767719d7c6842841fd8d85b.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete5.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete5.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://3csnnhxndt67" | ||||
| path="res://.godot/imported/concrete5.wav-bfae0b04558dbd1d5e4feefb4d59d6b9.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/concrete5.wav" | ||||
| dest_files=["res://.godot/imported/concrete5.wav-bfae0b04558dbd1d5e4feefb4d59d6b9.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete6.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete6.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://duayjxkje12ey" | ||||
| path="res://.godot/imported/concrete6.wav-ba9216b4a836ae83a36866e8d77787dc.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/concrete6.wav" | ||||
| dest_files=["res://.godot/imported/concrete6.wav-ba9216b4a836ae83a36866e8d77787dc.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete7.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/concrete7.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://bhhts1tkvv236" | ||||
| path="res://.godot/imported/concrete7.wav-053d67f927d1311d4f9640a798e1807e.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/concrete7.wav" | ||||
| dest_files=["res://.godot/imported/concrete7.wav-053d67f927d1311d4f9640a798e1807e.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://cwpyh41qbh8js" | ||||
| path="res://.godot/imported/grass1.wav-b4216b08493666f75784d0642045864f.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/grass1.wav" | ||||
| dest_files=["res://.godot/imported/grass1.wav-b4216b08493666f75784d0642045864f.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://cayyndwmxua5x" | ||||
| path="res://.godot/imported/grass2.wav-430d8da851839bd8347aa77dc113d7ff.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/grass2.wav" | ||||
| dest_files=["res://.godot/imported/grass2.wav-430d8da851839bd8347aa77dc113d7ff.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://b87bneqvovibi" | ||||
| path="res://.godot/imported/grass3.wav-1d9817728f47ac5124105d7c1f50eeb0.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/grass3.wav" | ||||
| dest_files=["res://.godot/imported/grass3.wav-1d9817728f47ac5124105d7c1f50eeb0.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://b0fup7btd0b1k" | ||||
| path="res://.godot/imported/grass4.wav-29729dac6e9ca8db822b77925ab1a78e.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/grass4.wav" | ||||
| dest_files=["res://.godot/imported/grass4.wav-29729dac6e9ca8db822b77925ab1a78e.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass5.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/grass5.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://c6d1rse1aveiy" | ||||
| path="res://.godot/imported/grass5.wav-c1b5dcb7a89369922bcbafb0da9e769f.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/grass5.wav" | ||||
| dest_files=["res://.godot/imported/grass5.wav-c1b5dcb7a89369922bcbafb0da9e769f.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/sand1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/sand1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://bbbp6wrkuhkek" | ||||
| path="res://.godot/imported/sand1.wav-adf26d7ca3003a8860fb46cc0758e7bd.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/sand1.wav" | ||||
| dest_files=["res://.godot/imported/sand1.wav-adf26d7ca3003a8860fb46cc0758e7bd.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/sand2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/sand2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://b5xx5t050i4p" | ||||
| path="res://.godot/imported/sand2.wav-8556fd9b18e6810c91fc69b1f24a839b.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/sand2.wav" | ||||
| dest_files=["res://.godot/imported/sand2.wav-8556fd9b18e6810c91fc69b1f24a839b.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/sand3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ball/sand3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://c35jy105xr640" | ||||
| path="res://.godot/imported/sand3.wav-708a3206418fb40e4b4f401186c037b1.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ball/sand3.wav" | ||||
| dest_files=["res://.godot/imported/sand3.wav-708a3206418fb40e4b4f401186c037b1.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/player/drive1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/player/drive1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://cllhgumv1fkju" | ||||
| path="res://.godot/imported/drive1.wav-37a2ebf3422caee7737ed14d066e94ec.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/player/drive1.wav" | ||||
| dest_files=["res://.godot/imported/drive1.wav-37a2ebf3422caee7737ed14d066e94ec.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/player/drive2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/player/drive2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://c8vouau0488fh" | ||||
| path="res://.godot/imported/drive2.wav-40bb0e3487bcffb646233c3e9c9465a1.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/player/drive2.wav" | ||||
| dest_files=["res://.godot/imported/drive2.wav-40bb0e3487bcffb646233c3e9c9465a1.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/player/drive3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/player/drive3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://cskhg5l86yvkw" | ||||
| path="res://.godot/imported/drive3.wav-cc637d549cbfcb948c40cc777dca0600.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/player/drive3.wav" | ||||
| dest_files=["res://.godot/imported/drive3.wav-cc637d549cbfcb948c40cc777dca0600.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/player/drive4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/player/drive4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://bkd8py2e7yfat" | ||||
| path="res://.godot/imported/drive4.wav-b79415fd0bf467327ac8875e2a0a8c6a.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/player/drive4.wav" | ||||
| dest_files=["res://.godot/imported/drive4.wav-b79415fd0bf467327ac8875e2a0a8c6a.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/player/explosion.mp3
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/player/explosion.mp3
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,19 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="mp3" | ||||
| type="AudioStreamMP3" | ||||
| uid="uid://cvsv02inxvsyw" | ||||
| path="res://.godot/imported/explosion.mp3-7499f525d153013b4f2692e529312448.mp3str" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/player/explosion.mp3" | ||||
| dest_files=["res://.godot/imported/explosion.mp3-7499f525d153013b4f2692e529312448.mp3str"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| loop=false | ||||
| loop_offset=0 | ||||
| bpm=0 | ||||
| beat_count=0 | ||||
| bar_beats=4 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/player/hole.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/player/hole.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://b1pnbcsi0jrlf" | ||||
| path="res://.godot/imported/hole.wav-084f4e3629b5927d5a661d5f59a9d3e7.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/player/hole.wav" | ||||
| dest_files=["res://.godot/imported/hole.wav-084f4e3629b5927d5a661d5f59a9d3e7.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/player/putt1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/player/putt1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://j54ssyodqnn3" | ||||
| path="res://.godot/imported/putt1.wav-f5b4cf94df3968330049619e9410ebd1.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/player/putt1.wav" | ||||
| dest_files=["res://.godot/imported/putt1.wav-f5b4cf94df3968330049619e9410ebd1.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/player/sparkle.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/player/sparkle.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://bvl3vpj3bg04r" | ||||
| path="res://.godot/imported/sparkle.wav-e0e2ee28a5f3eebbbd6eb43c0562e56d.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/player/sparkle.wav" | ||||
| dest_files=["res://.godot/imported/sparkle.wav-e0e2ee28a5f3eebbbd6eb43c0562e56d.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ui/ecofuture1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ui/ecofuture1.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://dxoo3qgkkhbpj" | ||||
| path="res://.godot/imported/ecofuture1.wav-1ce9e72eda25c7270fd356e129c3353b.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ui/ecofuture1.wav" | ||||
| dest_files=["res://.godot/imported/ecofuture1.wav-1ce9e72eda25c7270fd356e129c3353b.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ui/ecofuture2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ui/ecofuture2.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://8uynlpios7u1" | ||||
| path="res://.godot/imported/ecofuture2.wav-72a1f01a22cb0f38074ccdef6e2dc37f.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ui/ecofuture2.wav" | ||||
| dest_files=["res://.godot/imported/ecofuture2.wav-72a1f01a22cb0f38074ccdef6e2dc37f.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ui/ecofuture3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ui/ecofuture3.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://c8bxu5lusqevv" | ||||
| path="res://.godot/imported/ecofuture3.wav-cfc8eb28b0ae99aa20757172461b6439.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ui/ecofuture3.wav" | ||||
| dest_files=["res://.godot/imported/ecofuture3.wav-cfc8eb28b0ae99aa20757172461b6439.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/sound/sfx/ui/ecofuture4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/sound/sfx/ui/ecofuture4.wav
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,24 +0,0 @@ | ||||
| [remap] | ||||
| 
 | ||||
| importer="wav" | ||||
| type="AudioStreamWAV" | ||||
| uid="uid://cuupx50lrp02p" | ||||
| path="res://.godot/imported/ecofuture4.wav-5123fe535484e1633f20122f24129c06.sample" | ||||
| 
 | ||||
| [deps] | ||||
| 
 | ||||
| source_file="res://assets/sound/sfx/ui/ecofuture4.wav" | ||||
| dest_files=["res://.godot/imported/ecofuture4.wav-5123fe535484e1633f20122f24129c06.sample"] | ||||
| 
 | ||||
| [params] | ||||
| 
 | ||||
| force/8_bit=false | ||||
| force/mono=false | ||||
| force/max_rate=false | ||||
| force/max_rate_hz=44100 | ||||
| edit/trim=false | ||||
| edit/normalize=false | ||||
| edit/loop_mode=0 | ||||
| edit/loop_begin=0 | ||||
| edit/loop_end=-1 | ||||
| compress/mode=0 | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/textures/grass_green/grass_green_albedo.dds
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/textures/grass_green/grass_green_albedo.dds
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/textures/grass_green/grass_green_normal.dds
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/textures/grass_green/grass_green_normal.dds
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,15 +0,0 @@ | ||||
| [gd_resource type="AudioBusLayout" format=3 uid="uid://cwxndi28bii8d"] | ||||
| 
 | ||||
| [resource] | ||||
| bus/1/name = &"SFX" | ||||
| bus/1/solo = false | ||||
| bus/1/mute = false | ||||
| bus/1/bypass_fx = false | ||||
| bus/1/volume_db = 0.0 | ||||
| bus/1/send = &"Master" | ||||
| bus/2/name = &"Music" | ||||
| bus/2/solo = false | ||||
| bus/2/mute = false | ||||
| bus/2/bypass_fx = false | ||||
| bus/2/volume_db = 0.0 | ||||
| bus/2/send = &"Master" | ||||
| @ -1,10 +1,17 @@ | ||||
| [gd_scene load_steps=37 format=3 uid="uid://bm2o3mex10v11"] | ||||
| [gd_scene load_steps=51 format=3 uid="uid://bm2o3mex10v11"] | ||||
| 
 | ||||
| [ext_resource type="Terrain3DAssets" uid="uid://cwl34gstabgrx" path="res://levels/debug_level/terrain_assets.res" id="1_5smdk"] | ||||
| [ext_resource type="Texture2D" path="res://assets/textures/grass_fairway/grass_fairway_albedo.dds" id="2_e4m27"] | ||||
| [ext_resource type="Texture2D" path="res://assets/textures/grass_rough/grass_rough_albedo.dds" id="4_p0awb"] | ||||
| [ext_resource type="Texture2D" path="res://assets/textures/grass_rough/grass_rough_normal.dds" id="4_yhjhv"] | ||||
| [ext_resource type="Texture2D" path="res://assets/textures/grass_fairway/grass_fairway_normal.dds" id="5_o361t"] | ||||
| [ext_resource type="Shader" path="res://src/shaders/psx_water.gdshader" id="6_0efu4"] | ||||
| [ext_resource type="Texture2D" uid="uid://c47ern0l2d50r" path="res://assets/vista_2.png" id="6_ectru"] | ||||
| [ext_resource type="Texture2D" path="res://assets/textures/sand_trap/sand_trap_albedo.dds" id="6_nlea7"] | ||||
| [ext_resource type="Texture2D" path="res://assets/textures/sand_trap/sand_trap_normal.dds" id="7_f25dn"] | ||||
| [ext_resource type="Texture2D" uid="uid://con5a36t6n6sq" path="res://assets/textures/clear_sea_water_2048x2048.png" id="7_t86h2"] | ||||
| [ext_resource type="Texture2D" path="res://assets/textures/mountain_rock/mountain_rock_albedo.dds" id="8_ujbjy"] | ||||
| [ext_resource type="Script" path="res://src/world/ball_zone/ball_zone.gd" id="9_jwlau"] | ||||
| [ext_resource type="Texture2D" path="res://assets/textures/mountain_rock/mountain_rock_normal.dds" id="9_rrguh"] | ||||
| [ext_resource type="PackedScene" uid="uid://dagh38vap4t1d" path="res://src/props/scenery/city/concrete_building_1.tscn" id="10_lf15j"] | ||||
| [ext_resource type="PackedScene" uid="uid://cjubxs7peir5k" path="res://src/props/scenery/city/kana_signboard.tscn" id="11_evxup"] | ||||
| [ext_resource type="PackedScene" uid="uid://di7aql54lksn7" path="res://src/props/scenery/trees/palm_tree/palm_tree.tscn" id="12_sswxf"] | ||||
| @ -27,7 +34,7 @@ noise = SubResource("FastNoiseLite_rpgb7") | ||||
| 
 | ||||
| [sub_resource type="Terrain3DMaterial" id="Terrain3DMaterial_woy2k"] | ||||
| _shader_parameters = { | ||||
| "auto_base_texture": 4, | ||||
| "auto_base_texture": 3, | ||||
| "auto_height_reduction": 0.1, | ||||
| "auto_overlay_texture": 0, | ||||
| "auto_slope": 0.41, | ||||
| @ -54,6 +61,53 @@ world_background = 2 | ||||
| texture_filtering = 1 | ||||
| auto_shader = true | ||||
| 
 | ||||
| [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_l1sla"] | ||||
| transparency = 4 | ||||
| cull_mode = 2 | ||||
| vertex_color_use_as_albedo = true | ||||
| backlight_enabled = true | ||||
| backlight = Color(0.5, 0.5, 0.5, 1) | ||||
| distance_fade_mode = 1 | ||||
| distance_fade_min_distance = 960.0 | ||||
| distance_fade_max_distance = 480.0 | ||||
| 
 | ||||
| [sub_resource type="Terrain3DMeshAsset" id="Terrain3DMeshAsset_iaq2t"] | ||||
| height_offset = 0.5 | ||||
| density = 10.0 | ||||
| material_override = SubResource("StandardMaterial3D_l1sla") | ||||
| generated_type = 1 | ||||
| 
 | ||||
| [sub_resource type="Terrain3DTextureAsset" id="Terrain3DTextureAsset_kocfk"] | ||||
| name = "Rough Grass" | ||||
| albedo_texture = ExtResource("4_p0awb") | ||||
| normal_texture = ExtResource("4_yhjhv") | ||||
| uv_scale = 0.01 | ||||
| 
 | ||||
| [sub_resource type="Terrain3DTextureAsset" id="Terrain3DTextureAsset_vmhlw"] | ||||
| name = "Fairway Grass" | ||||
| id = 1 | ||||
| albedo_texture = ExtResource("2_e4m27") | ||||
| normal_texture = ExtResource("5_o361t") | ||||
| uv_scale = 0.01 | ||||
| 
 | ||||
| [sub_resource type="Terrain3DTextureAsset" id="Terrain3DTextureAsset_k6h8c"] | ||||
| name = "sand_trap_albedo" | ||||
| id = 2 | ||||
| albedo_texture = ExtResource("6_nlea7") | ||||
| normal_texture = ExtResource("7_f25dn") | ||||
| uv_scale = 0.01 | ||||
| 
 | ||||
| [sub_resource type="Terrain3DTextureAsset" id="Terrain3DTextureAsset_13d2a"] | ||||
| name = "mountain_rock_albedo" | ||||
| id = 3 | ||||
| albedo_texture = ExtResource("8_ujbjy") | ||||
| normal_texture = ExtResource("9_rrguh") | ||||
| uv_scale = 0.02 | ||||
| 
 | ||||
| [sub_resource type="Terrain3DAssets" id="Terrain3DAssets_eq5uw"] | ||||
| mesh_list = Array[Terrain3DMeshAsset]([SubResource("Terrain3DMeshAsset_iaq2t")]) | ||||
| texture_list = Array[Terrain3DTextureAsset]([SubResource("Terrain3DTextureAsset_kocfk"), SubResource("Terrain3DTextureAsset_vmhlw"), SubResource("Terrain3DTextureAsset_k6h8c"), SubResource("Terrain3DTextureAsset_13d2a")]) | ||||
| 
 | ||||
| [sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_h8tes"] | ||||
| panorama = ExtResource("6_ectru") | ||||
| 
 | ||||
| @ -189,7 +243,7 @@ point_count = 5 | ||||
| [node name="Terrain3D" type="Terrain3D" parent="."] | ||||
| data_directory = "res://levels/debug_level/terrain_3d_data" | ||||
| material = SubResource("Terrain3DMaterial_woy2k") | ||||
| assets = ExtResource("1_5smdk") | ||||
| assets = SubResource("Terrain3DAssets_eq5uw") | ||||
| mesh_size = 64 | ||||
| top_level = true | ||||
| metadata/_edit_lock_ = true | ||||
| @ -206,8 +260,6 @@ shadow_blur = 4.0 | ||||
| [node name="Course" type="Node3D" parent="."] | ||||
| 
 | ||||
| [node name="Fairway" type="Area3D" parent="Course"] | ||||
| gravity_point_center = Vector3(0, 1, 0) | ||||
| gravity_direction = Vector3(0, 1, 0) | ||||
| script = ExtResource("9_jwlau") | ||||
| terrain_angular_damping = 2.0 | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								levels/debug_level/terrain_3d_data/terrain3d_00_00.res
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								levels/debug_level/terrain_3d_data/terrain3d_00_00.res
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								levels/debug_level/terrain_assets.res
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								levels/debug_level/terrain_assets.res
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -197,12 +197,6 @@ ball_previous={ | ||||
| 
 | ||||
| 3d_physics/layer_1="Collision Geometry" | ||||
| 3d_physics/layer_2="Layer 3" | ||||
| 3d_physics/layer_27="Glass Material" | ||||
| 3d_physics/layer_28="Metal Material" | ||||
| 3d_physics/layer_29="Rock Material" | ||||
| 3d_physics/layer_30="Wood Material" | ||||
| 3d_physics/layer_31="Sand Material" | ||||
| 3d_physics/layer_32="Grass Material" | ||||
| 
 | ||||
| [physics] | ||||
| 
 | ||||
|  | ||||
| @ -1,37 +0,0 @@ | ||||
| class_name BallSFX extends Node3D | ||||
| ## Controller for ball sound effects. | ||||
| 
 | ||||
| const BASE_VOLUME := -36.0 | ||||
| const MAX_VOLUME := 3.0 | ||||
| const VELOCITY_ATTENUATION_SCALE := 400.0 | ||||
| 
 | ||||
| @onready var parent: GameBall = $".." | ||||
| 
 | ||||
| @onready var grass_sfx_player: AudioStreamPlayer3D = %GrassSFXPlayer | ||||
| @onready var concrete_sfx_player: AudioStreamPlayer3D = %ConcreteSFXPlayer | ||||
| @onready var sand_sfx_player: AudioStreamPlayer3D = %SandSFXPlayer | ||||
| 
 | ||||
| 
 | ||||
| func _force_attenuated_volume() -> float: | ||||
| 	# Attenuate volume based on impact force | ||||
| 	return lerpf( | ||||
| 		BASE_VOLUME, | ||||
| 		MAX_VOLUME, | ||||
| 		clampf(parent.linear_velocity.length_squared() / VELOCITY_ATTENUATION_SCALE, 0, 1) | ||||
| 	) | ||||
| 
 | ||||
| 
 | ||||
| func _play(player: AudioStreamPlayer3D) -> void: | ||||
| 	player.volume_db = _force_attenuated_volume() | ||||
| 	print("PLAYING: ", player, "... VOLUME: ", player.volume_db) | ||||
| 	player.play() | ||||
| 
 | ||||
| 
 | ||||
| func play_sfx(terrain: Terrain.Type) -> void: | ||||
| 	match terrain: | ||||
| 		Terrain.Type.ROUGH, Terrain.Type.GREEN, Terrain.Type.FAIRWAY: | ||||
| 			_play(grass_sfx_player) | ||||
| 		Terrain.Type.CONCRETE, Terrain.Type.ROCK: | ||||
| 			_play(concrete_sfx_player) | ||||
| 		Terrain.Type.SAND: | ||||
| 			_play(sand_sfx_player) | ||||
| @ -52,8 +52,6 @@ var _position_on_last_wake: Vector3 | ||||
| var _awake := false | ||||
| var _zones: Array[BallZone] = [] | ||||
| 
 | ||||
| @onready var sfx: BallSFX = %SFX | ||||
| 
 | ||||
| @onready var normal_physics: PhysicsMaterial = preload( | ||||
| 	"res://src/equipment/balls/physics_ball/normal_physics.tres" | ||||
| ) | ||||
| @ -144,14 +142,3 @@ func _on_sleeping_state_changed() -> void: | ||||
| 	if sleeping: | ||||
| 		# Trigger to reassign on wake | ||||
| 		_awake = false | ||||
| 
 | ||||
| 
 | ||||
| func _on_collision(body: Node) -> void: | ||||
| 	if body is Terrain3D: | ||||
| 		sfx.play_sfx(Terrain.at_position(global_position, body as Terrain3D)) | ||||
| 	elif body is CSGShape3D: | ||||
| 		sfx.play_sfx(Terrain.from_physical_layer((body as CSGShape3D).collision_layer)) | ||||
| 	elif body is CollisionObject3D: | ||||
| 		sfx.play_sfx(Terrain.from_physical_layer((body as CollisionObject3D).collision_layer)) | ||||
| 	else: | ||||
| 		print_debug("COLLIDER: ", body) | ||||
|  | ||||
| @ -1,16 +1,9 @@ | ||||
| [gd_scene load_steps=19 format=3 uid="uid://dfttci386ohip"] | ||||
| [gd_scene load_steps=9 format=3 uid="uid://dfttci386ohip"] | ||||
| 
 | ||||
| [ext_resource type="Script" path="res://src/equipment/balls/physics_ball/game_ball.gd" id="1_iwh2u"] | ||||
| [ext_resource type="PhysicsMaterial" uid="uid://3bih72l068ic" path="res://src/equipment/balls/physics_ball/normal_physics.tres" id="1_l23pw"] | ||||
| [ext_resource type="Texture2D" uid="uid://ckhiq6rfjv63u" path="res://assets/textures/gfolfball/gfolfball.png" id="1_y3q5j"] | ||||
| [ext_resource type="Texture2D" uid="uid://btntjs7mbdigu" path="res://assets/textures/gfolfball/gfolfball_normal.png" id="2_mx7l6"] | ||||
| [ext_resource type="Script" path="res://src/equipment/balls/physics_ball/ball_sfx.gd" id="5_bhshl"] | ||||
| [ext_resource type="AudioStream" uid="uid://cayyndwmxua5x" path="res://assets/sound/sfx/ball/grass2.wav" id="7_l22cv"] | ||||
| [ext_resource type="AudioStream" uid="uid://orisjdcj3mes" path="res://assets/sound/sfx/ball/concrete3.wav" id="7_t2ak2"] | ||||
| [ext_resource type="AudioStream" uid="uid://o4whyv43rr1u" path="res://assets/sound/sfx/ball/concrete4.wav" id="8_0anjl"] | ||||
| [ext_resource type="AudioStream" uid="uid://3csnnhxndt67" path="res://assets/sound/sfx/ball/concrete5.wav" id="9_p0lmw"] | ||||
| [ext_resource type="AudioStream" uid="uid://bbbp6wrkuhkek" path="res://assets/sound/sfx/ball/sand1.wav" id="10_b64mx"] | ||||
| [ext_resource type="AudioStream" uid="uid://b5xx5t050i4p" path="res://assets/sound/sfx/ball/sand2.wav" id="11_ed8je"] | ||||
| 
 | ||||
| [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_xqofq"] | ||||
| albedo_texture = ExtResource("1_y3q5j") | ||||
| @ -73,25 +66,6 @@ func _draw() -> void: | ||||
| 		draw_line(start, end, COLOR_MAGNUS, WIDTH) | ||||
| " | ||||
| 
 | ||||
| [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_gc38m"] | ||||
| playback_mode = 1 | ||||
| random_pitch = 1.1 | ||||
| streams_count = 1 | ||||
| stream_0/stream = ExtResource("7_l22cv") | ||||
| 
 | ||||
| [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_tg0n0"] | ||||
| random_pitch = 1.1 | ||||
| streams_count = 3 | ||||
| stream_0/stream = ExtResource("7_t2ak2") | ||||
| stream_1/stream = ExtResource("8_0anjl") | ||||
| stream_2/stream = ExtResource("9_p0lmw") | ||||
| 
 | ||||
| [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_uu1f8"] | ||||
| playback_mode = 1 | ||||
| streams_count = 2 | ||||
| stream_0/stream = ExtResource("10_b64mx") | ||||
| stream_1/stream = ExtResource("11_ed8je") | ||||
| 
 | ||||
| [node name="PhysicsBall" type="RigidBody3D"] | ||||
| mass = 0.05 | ||||
| physics_material_override = ExtResource("1_l23pw") | ||||
| @ -123,28 +97,4 @@ grow_vertical = 2 | ||||
| script = SubResource("GDScript_p4v7o") | ||||
| draw_reoriented_basis = false | ||||
| 
 | ||||
| [node name="SFX" type="Node3D" parent="."] | ||||
| unique_name_in_owner = true | ||||
| script = ExtResource("5_bhshl") | ||||
| 
 | ||||
| [node name="GrassSFXPlayer" type="AudioStreamPlayer3D" parent="SFX"] | ||||
| unique_name_in_owner = true | ||||
| stream = SubResource("AudioStreamRandomizer_gc38m") | ||||
| unit_size = 40.0 | ||||
| bus = &"SFX" | ||||
| 
 | ||||
| [node name="ConcreteSFXPlayer" type="AudioStreamPlayer3D" parent="SFX"] | ||||
| unique_name_in_owner = true | ||||
| stream = SubResource("AudioStreamRandomizer_tg0n0") | ||||
| unit_size = 40.0 | ||||
| bus = &"SFX" | ||||
| 
 | ||||
| [node name="SandSFXPlayer" type="AudioStreamPlayer3D" parent="SFX"] | ||||
| unique_name_in_owner = true | ||||
| stream = SubResource("AudioStreamRandomizer_uu1f8") | ||||
| unit_size = 40.0 | ||||
| max_db = 0.0 | ||||
| bus = &"SFX" | ||||
| 
 | ||||
| [connection signal="body_entered" from="." to="." method="_on_collision"] | ||||
| [connection signal="sleeping_state_changed" from="." to="." method="_on_sleeping_state_changed"] | ||||
|  | ||||
| @ -184,12 +184,10 @@ stretch = true | ||||
| script = ExtResource("3_rmm5i") | ||||
| 
 | ||||
| [node name="Viewport" type="SubViewport" parent="RootControl/Rumbler/ViewportContainer"] | ||||
| unique_name_in_owner = true | ||||
| handle_input_locally = false | ||||
| msaa_3d = 3 | ||||
| screen_space_aa = 1 | ||||
| use_taa = true | ||||
| audio_listener_enable_3d = true | ||||
| size = Vector2i(1920, 1080) | ||||
| render_target_update_mode = 4 | ||||
| 
 | ||||
|  | ||||
| @ -140,7 +140,6 @@ var _tracking_camera: OrbitalCamera | ||||
| @onready var character: CharacterController = $PlayerPivot/GfolfGirl | ||||
| 
 | ||||
| @onready var shot_animation: AnimationPlayer = %ShotAnimation | ||||
| @onready var shot_sfx: ShotSFX = %ShotSFX | ||||
| 
 | ||||
| @onready var arrow: Node3D = %Arrow | ||||
| @onready var arrow_pivot: Node3D = %ArrowPivot | ||||
| @ -162,7 +161,6 @@ var _tracking_camera: OrbitalCamera | ||||
| @onready var ball_return_timer: Timer = %BallReturnTimer | ||||
| 
 | ||||
| @onready var explosion_animation: AnimationPlayer = %ExplosionAnimation | ||||
| @onready var player_label: Label3D = %PlayerLabel | ||||
| 
 | ||||
| @onready var camera_distance := zoom.position.z: | ||||
| 	set = _set_camera_distance | ||||
| @ -182,12 +180,6 @@ func _ready() -> void: | ||||
| 	ball_type = initial_ball | ||||
| 	club = initial_club | ||||
| 	character.set_color(player.color) | ||||
| 
 | ||||
| 	# Set up player 3D label | ||||
| 	player_label.text = player.name | ||||
| 	player_label.modulate = player.color | ||||
| 	player_label.outline_modulate = ColorTools.get_bg_color(player.color) | ||||
| 
 | ||||
| 	_on_phase_change(phase) | ||||
| 
 | ||||
| 
 | ||||
| @ -231,10 +223,6 @@ func is_active() -> bool: | ||||
| 	return phase != Phase.FINISHED | ||||
| 
 | ||||
| 
 | ||||
| func is_shot_good() -> bool: | ||||
| 	return abs(shot_curve) <= NICE_THRESHOLD | ||||
| 
 | ||||
| 
 | ||||
| func finish_downswing() -> void: | ||||
| 	phase = Phase.SHOT | ||||
| 
 | ||||
| @ -247,14 +235,13 @@ func take_shot() -> void: | ||||
| 	# Impact screenshake & hitlag | ||||
| 	if game: | ||||
| 		if shot_power > BIG_POWER_THRESHOLD: | ||||
| 			#game.viewport.hit_lag_big() | ||||
| 			game.viewport.hit_lag_big() | ||||
| 			var shake_intensity: float = ( | ||||
| 				10.0 * (shot_power - BIG_POWER_THRESHOLD) / (1.0 - BIG_POWER_THRESHOLD) | ||||
| 			) | ||||
| 			game.viewport.screen_shake(shake_intensity, 1.0) | ||||
| 		else: | ||||
| 			pass | ||||
| 			#game.viewport.hit_lag_small() | ||||
| 			game.viewport.hit_lag_small() | ||||
| 
 | ||||
| 	print_debug("WHACK!\nPower: ", shot_power, "\nCurve: ", shot_curve) | ||||
| 
 | ||||
| @ -276,9 +263,6 @@ func take_shot() -> void: | ||||
| 		game_ball.freeze = false | ||||
| 		game_ball.apply_impulse(impulse, offset) | ||||
| 
 | ||||
| 	# Play SFX | ||||
| 	shot_sfx.play_shot_sfx(club, is_shot_good(), shot_power) | ||||
| 
 | ||||
| 	# Use a ball if a limited type is selected | ||||
| 	if player.get_balls(ball_type) > 0: | ||||
| 		player.mutate_balls(ball_type, -1) | ||||
| @ -450,7 +434,7 @@ func _on_phase_change(new_phase: Phase) -> void: | ||||
| 			if perfect_aim: | ||||
| 				shot_curve = 0.0 | ||||
| 
 | ||||
| 			if is_shot_good(): | ||||
| 			if abs(shot_curve) <= NICE_THRESHOLD: | ||||
| 				hud.play_nice_animation() | ||||
| 
 | ||||
| 			if not driving_range: | ||||
|  | ||||
| @ -1,38 +1,13 @@ | ||||
| [gd_scene load_steps=34 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/ball_point.gd" id="2_e6i3g"] | ||||
| [ext_resource type="PackedScene" uid="uid://c2k88ns0h5ie1" path="res://src/ui/3d/arrow/arrow.tscn" id="2_s70wl"] | ||||
| [ext_resource type="Script" path="res://src/player/shot_setup/shot_sfx.gd" id="3_7vs2d"] | ||||
| [ext_resource type="PackedScene" uid="uid://1s3gywmoi20e" path="res://src/characters/player_characters/gfolf_girl/gfolf_girl.tscn" id="3_e4aur"] | ||||
| [ext_resource type="AudioStream" uid="uid://cllhgumv1fkju" path="res://assets/sound/sfx/player/drive1.wav" id="3_em3cj"] | ||||
| [ext_resource type="AudioStream" uid="uid://c8vouau0488fh" path="res://assets/sound/sfx/player/drive2.wav" id="4_4cajc"] | ||||
| [ext_resource type="PackedScene" uid="uid://fht6j87o8ecr" path="res://src/ui/3d/projectile_arc/projectile_arc.tscn" id="4_ry2ho"] | ||||
| [ext_resource type="AudioStream" uid="uid://cskhg5l86yvkw" path="res://assets/sound/sfx/player/drive3.wav" id="5_5lj1j"] | ||||
| [ext_resource type="AudioStream" uid="uid://bkd8py2e7yfat" path="res://assets/sound/sfx/player/drive4.wav" id="6_1wnu3"] | ||||
| [ext_resource type="PackedScene" uid="uid://dbdul15c4oblg" path="res://src/ui/3d/projected_target.tscn" id="6_mynqj"] | ||||
| [ext_resource type="AudioStream" uid="uid://j54ssyodqnn3" path="res://assets/sound/sfx/player/putt1.wav" id="7_niyj5"] | ||||
| [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"] | ||||
| [ext_resource type="FontFile" uid="uid://dsa0oh7c0h4pu" path="res://assets/fonts/Racing_Sans_One/RacingSansOne-Regular.ttf" id="9_y5iv1"] | ||||
| [ext_resource type="AudioStream" uid="uid://cvsv02inxvsyw" path="res://assets/sound/sfx/player/explosion.mp3" id="15_fn6g1"] | ||||
| 
 | ||||
| [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_gh0gi"] | ||||
| random_pitch = 1.1 | ||||
| streams_count = 1 | ||||
| stream_0/stream = ExtResource("3_em3cj") | ||||
| 
 | ||||
| [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_7isox"] | ||||
| random_pitch = 1.1 | ||||
| streams_count = 3 | ||||
| stream_0/stream = ExtResource("4_4cajc") | ||||
| stream_1/stream = ExtResource("5_5lj1j") | ||||
| stream_2/stream = ExtResource("6_1wnu3") | ||||
| 
 | ||||
| [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_wnuop"] | ||||
| random_pitch = 1.1 | ||||
| streams_count = 1 | ||||
| stream_0/stream = ExtResource("7_niyj5") | ||||
| 
 | ||||
| [sub_resource type="Animation" id="Animation_ug2a7"] | ||||
| length = 0.001 | ||||
| @ -243,18 +218,6 @@ tracks/1/keys = { | ||||
| "update": 1, | ||||
| "values": [false] | ||||
| } | ||||
| tracks/2/type = "value" | ||||
| tracks/2/imported = false | ||||
| tracks/2/enabled = false | ||||
| tracks/2/path = NodePath("ExplosionMesh/ExplosionSFXPlayer:playing") | ||||
| tracks/2/interp = 1 | ||||
| tracks/2/loop_wrap = true | ||||
| tracks/2/keys = { | ||||
| "times": PackedFloat32Array(0), | ||||
| "transitions": PackedFloat32Array(1), | ||||
| "update": 1, | ||||
| "values": [true] | ||||
| } | ||||
| 
 | ||||
| [sub_resource type="Animation" id="Animation_bv1ov"] | ||||
| resource_name = "explode" | ||||
| @ -283,18 +246,6 @@ tracks/1/keys = { | ||||
| "update": 1, | ||||
| "values": [true, false] | ||||
| } | ||||
| tracks/2/type = "value" | ||||
| tracks/2/imported = false | ||||
| tracks/2/enabled = true | ||||
| tracks/2/path = NodePath("ExplosionMesh/ExplosionSFXPlayer:playing") | ||||
| tracks/2/interp = 1 | ||||
| tracks/2/loop_wrap = true | ||||
| tracks/2/keys = { | ||||
| "times": PackedFloat32Array(0), | ||||
| "transitions": PackedFloat32Array(1), | ||||
| "update": 1, | ||||
| "values": [true] | ||||
| } | ||||
| 
 | ||||
| [sub_resource type="AnimationLibrary" id="AnimationLibrary_dg262"] | ||||
| _data = { | ||||
| @ -302,11 +253,6 @@ _data = { | ||||
| "explode": SubResource("Animation_bv1ov") | ||||
| } | ||||
| 
 | ||||
| [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_8natr"] | ||||
| random_pitch = 1.1 | ||||
| streams_count = 1 | ||||
| stream_0/stream = ExtResource("15_fn6g1") | ||||
| 
 | ||||
| [node name="ShotSetup" type="Node3D"] | ||||
| script = ExtResource("1_r6ei4") | ||||
| 
 | ||||
| @ -315,27 +261,6 @@ unique_name_in_owner = true | ||||
| transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.08, 0) | ||||
| script = ExtResource("2_e6i3g") | ||||
| 
 | ||||
| [node name="ShotSFX" type="Node3D" parent="BallPoint"] | ||||
| unique_name_in_owner = true | ||||
| script = ExtResource("3_7vs2d") | ||||
| 
 | ||||
| [node name="GoodDriveSFXPlayer" type="AudioStreamPlayer3D" parent="BallPoint/ShotSFX"] | ||||
| unique_name_in_owner = true | ||||
| stream = SubResource("AudioStreamRandomizer_gh0gi") | ||||
| volume_db = -3.0 | ||||
| bus = &"SFX" | ||||
| 
 | ||||
| [node name="BadDriveSFXPlayer" type="AudioStreamPlayer3D" parent="BallPoint/ShotSFX"] | ||||
| unique_name_in_owner = true | ||||
| stream = SubResource("AudioStreamRandomizer_7isox") | ||||
| volume_db = -1.0 | ||||
| bus = &"SFX" | ||||
| 
 | ||||
| [node name="PuttSFXPlayer" type="AudioStreamPlayer3D" parent="BallPoint/ShotSFX"] | ||||
| unique_name_in_owner = true | ||||
| stream = SubResource("AudioStreamRandomizer_wnuop") | ||||
| bus = &"SFX" | ||||
| 
 | ||||
| [node name="PlayerPivot" type="Node3D" parent="."] | ||||
| unique_name_in_owner = true | ||||
| 
 | ||||
| @ -343,7 +268,7 @@ unique_name_in_owner = true | ||||
| transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -0.555968, 0, 0.0999683) | ||||
| 
 | ||||
| [node name="DemoCamera" type="Camera3D" parent="PlayerPivot" groups=["DemoCamera"]] | ||||
| transform = Transform3D(-0.311543, -0.0687373, 0.947743, 0, 0.99738, 0.0723374, -0.950232, 0.0225362, -0.310727, 0.845792, 0.706621, -0.383459) | ||||
| transform = Transform3D(-0.124487, 0.584637, 0.801687, 0, 0.807972, -0.589221, -0.992221, -0.0733503, -0.100582, 0.395614, 0.0284514, -0.0394773) | ||||
| 
 | ||||
| [node name="Direction" type="Node3D" parent="."] | ||||
| unique_name_in_owner = true | ||||
| @ -497,32 +422,6 @@ libraries = { | ||||
| "": SubResource("AnimationLibrary_dg262") | ||||
| } | ||||
| 
 | ||||
| [node name="ExplosionSFXPlayer" type="AudioStreamPlayer3D" parent="ExplosionMesh"] | ||||
| stream = SubResource("AudioStreamRandomizer_8natr") | ||||
| unit_size = 60.0 | ||||
| bus = &"SFX" | ||||
| 
 | ||||
| [node name="PlayerLabel" type="Label3D" parent="."] | ||||
| unique_name_in_owner = true | ||||
| transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0) | ||||
| visibility_range_begin = 50.0 | ||||
| visibility_range_begin_margin = 3.0 | ||||
| visibility_range_fade_mode = 1 | ||||
| pixel_size = 0.001 | ||||
| billboard = 1 | ||||
| no_depth_test = true | ||||
| fixed_size = true | ||||
| texture_filter = 5 | ||||
| render_priority = 4 | ||||
| outline_render_priority = 3 | ||||
| text = "Player Name" | ||||
| font = ExtResource("9_y5iv1") | ||||
| font_size = 36 | ||||
| outline_size = 10 | ||||
| line_spacing = -16.0 | ||||
| autowrap_mode = 2 | ||||
| width = 120.0 | ||||
| 
 | ||||
| [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"] | ||||
|  | ||||
| @ -1,27 +0,0 @@ | ||||
| class_name ShotSFX extends Node3D | ||||
| ## SFX controller for golf shots | ||||
| 
 | ||||
| const BASE_VOLUME := -6.0 | ||||
| const MAX_VOLUME := -1.0 | ||||
| 
 | ||||
| @onready var good_drive_sfx_player: AudioStreamPlayer3D = %GoodDriveSFXPlayer | ||||
| @onready var bad_drive_sfx_player: AudioStreamPlayer3D = %BadDriveSFXPlayer | ||||
| @onready var putt_sfx_player: AudioStreamPlayer3D = %PuttSFXPlayer | ||||
| 
 | ||||
| 
 | ||||
| func _attenuate_volume(power: float) -> float: | ||||
| 	return lerpf(BASE_VOLUME, MAX_VOLUME, power) | ||||
| 
 | ||||
| 
 | ||||
| func play_shot_sfx(club: Club.Type, good: bool, power: float) -> void: | ||||
| 	var player: AudioStreamPlayer3D | ||||
| 	match club: | ||||
| 		Club.Type.PUTTER: | ||||
| 			player = putt_sfx_player | ||||
| 		_: | ||||
| 			# TODO more varied SFX maybe? | ||||
| 			player = good_drive_sfx_player if good else bad_drive_sfx_player | ||||
| 
 | ||||
| 	player.volume_db = _attenuate_volume(power) | ||||
| 	print_debug("Playing ", player) | ||||
| 	player.play() | ||||
| @ -8,7 +8,6 @@ data = PackedVector3Array(0, 0, -5.2392, -1.2315, 0, -2.5941, 1.2315, 0, -2.5941 | ||||
| [node name="Sailboat" instance=ExtResource("1_ivu5q")] | ||||
| 
 | ||||
| [node name="StaticBody3D" type="StaticBody3D" parent="." index="1"] | ||||
| collision_layer = 536870913 | ||||
| 
 | ||||
| [node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D" index="0"] | ||||
| shape = SubResource("ConcavePolygonShape3D_mrf68") | ||||
|  | ||||
| @ -45,7 +45,6 @@ bones/10/scale = Vector3(1, 1, 1) | ||||
| bones/11/rotation = Quaternion(-0.13894, 0.0183908, 0.000355869, 0.99013) | ||||
| 
 | ||||
| [node name="StaticBody3D" type="StaticBody3D" parent="." index="2"] | ||||
| collision_layer = 2147483649 | ||||
| 
 | ||||
| [node name="CollisionShape3D2" type="CollisionShape3D" parent="StaticBody3D" index="0"] | ||||
| shape = SubResource("ConcavePolygonShape3D_bp5t6") | ||||
|  | ||||
| @ -15,8 +15,8 @@ grow_horizontal = 2 | ||||
| grow_vertical = 2 | ||||
| size_flags_horizontal = 4 | ||||
| script = ExtResource("1_p0p8j") | ||||
| text = "BALLTYPE" | ||||
| quantity = 18 | ||||
| quantity = -1 | ||||
| unlimited = true | ||||
| 
 | ||||
| [node name="BallLabel" type="Label" parent="."] | ||||
| unique_name_in_owner = true | ||||
| @ -35,30 +35,34 @@ grow_vertical = 2 | ||||
| theme_override_constants/outline_size = 10 | ||||
| theme_override_fonts/font = ExtResource("2_bu42i") | ||||
| theme_override_font_sizes/font_size = 25 | ||||
| text = "BALLTYPE" | ||||
| horizontal_alignment = 2 | ||||
| 
 | ||||
| [node name="QuantityContainer" type="HBoxContainer" parent="BallLabel"] | ||||
| unique_name_in_owner = true | ||||
| clip_contents = true | ||||
| visible = false | ||||
| layout_mode = 1 | ||||
| anchors_preset = -1 | ||||
| anchor_left = 1.1 | ||||
| anchor_top = 0.4 | ||||
| anchor_right = 1.1 | ||||
| anchor_bottom = 0.4 | ||||
| anchor_left = 1.0 | ||||
| anchor_top = 0.8 | ||||
| anchor_right = 1.0 | ||||
| anchor_bottom = 0.8 | ||||
| grow_horizontal = 2 | ||||
| grow_vertical = 2 | ||||
| theme_override_constants/separation = 0 | ||||
| 
 | ||||
| [node name="Label" type="Label" parent="BallLabel/QuantityContainer"] | ||||
| layout_mode = 2 | ||||
| size_flags_horizontal = 8 | ||||
| size_flags_vertical = 8 | ||||
| theme_type_variation = &"QuantityLabel" | ||||
| theme_override_font_sizes/font_size = 40 | ||||
| theme_override_font_sizes/font_size = 22 | ||||
| text = "×" | ||||
| 
 | ||||
| [node name="QuantityLabel" type="Label" parent="BallLabel/QuantityContainer"] | ||||
| unique_name_in_owner = true | ||||
| layout_mode = 2 | ||||
| size_flags_horizontal = 8 | ||||
| size_flags_vertical = 8 | ||||
| theme_type_variation = &"QuantityLabel" | ||||
| theme_override_font_sizes/font_size = 40 | ||||
| text = "18" | ||||
| theme_override_font_sizes/font_size = 22 | ||||
| text = "-1" | ||||
|  | ||||
| @ -1,9 +1,8 @@ | ||||
| [gd_scene load_steps=36 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="Shader" path="res://src/shaders/canvas_retro.gdshader" id="1_ybxxp"] | ||||
| [ext_resource type="PackedScene" uid="uid://445qd7m4qe2j" path="res://src/ui/shot_hud/club_selector/club_selector.tscn" id="2_1hdub"] | ||||
| [ext_resource type="AudioStream" uid="uid://c8bxu5lusqevv" path="res://assets/sound/sfx/ui/ecofuture3.wav" id="2_5f3rs"] | ||||
| [ext_resource type="Script" path="res://src/ui/decorations/rumbler.gd" id="3_6groq"] | ||||
| [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"] | ||||
| @ -75,18 +74,6 @@ tracks/4/keys = { | ||||
| "points": PackedFloat32Array(0.5, -0.25, 0, 0.25, 0), | ||||
| "times": PackedFloat32Array(0) | ||||
| } | ||||
| tracks/5/type = "value" | ||||
| tracks/5/imported = false | ||||
| tracks/5/enabled = false | ||||
| tracks/5/path = NodePath("AudioStreamPlayer:playing") | ||||
| tracks/5/interp = 1 | ||||
| tracks/5/loop_wrap = true | ||||
| tracks/5/keys = { | ||||
| "times": PackedFloat32Array(0), | ||||
| "transitions": PackedFloat32Array(1), | ||||
| "update": 1, | ||||
| "values": [true] | ||||
| } | ||||
| 
 | ||||
| [sub_resource type="Animation" id="Animation_cwotn"] | ||||
| resource_name = "display" | ||||
| @ -150,18 +137,6 @@ tracks/4/keys = { | ||||
| "points": PackedFloat32Array(0.5, -0.25, 0, 0.5, -0.055, 0.5, -0.4, 0.059, 0.233, -0.456, 1.25, -0.25, 0, 0.25, 0), | ||||
| "times": PackedFloat32Array(0, 2, 2.4) | ||||
| } | ||||
| tracks/5/type = "value" | ||||
| tracks/5/imported = false | ||||
| tracks/5/enabled = true | ||||
| tracks/5/path = NodePath("AudioStreamPlayer:playing") | ||||
| tracks/5/interp = 1 | ||||
| tracks/5/loop_wrap = true | ||||
| tracks/5/keys = { | ||||
| "times": PackedFloat32Array(0.1), | ||||
| "transitions": PackedFloat32Array(1), | ||||
| "update": 1, | ||||
| "values": [true] | ||||
| } | ||||
| 
 | ||||
| [sub_resource type="AnimationLibrary" id="AnimationLibrary_2a0gn"] | ||||
| _data = { | ||||
| @ -623,11 +598,6 @@ libraries = { | ||||
| "": SubResource("AnimationLibrary_2a0gn") | ||||
| } | ||||
| 
 | ||||
| [node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="WoahNiceFeedback"] | ||||
| stream = ExtResource("2_5f3rs") | ||||
| volume_db = -3.0 | ||||
| bus = &"SFX" | ||||
| 
 | ||||
| [node name="WastedFeedback" type="RichTextLabel" parent="."] | ||||
| visible = false | ||||
| custom_minimum_size = Vector2(1400, 0) | ||||
| @ -757,7 +727,6 @@ unique_name_in_owner = true | ||||
| libraries = { | ||||
| "": SubResource("AnimationLibrary_dicse") | ||||
| } | ||||
| speed_scale = 0.9 | ||||
| 
 | ||||
| [node name="ClubSelector" parent="." instance=ExtResource("2_1hdub")] | ||||
| unique_name_in_owner = true | ||||
|  | ||||
| @ -1,11 +0,0 @@ | ||||
| class_name ColorTools | ||||
| ## Toolkit for working with colors | ||||
| 
 | ||||
| const DEFAULT_LUM_THRESHOLD := 0.179 | ||||
| 
 | ||||
| 
 | ||||
| ## Selects an appropriate background color for the given foreground color. | ||||
| ## | ||||
| ## Options are white or black. | ||||
| static func get_bg_color(fg_color: Color, threshold: float = DEFAULT_LUM_THRESHOLD) -> Color: | ||||
| 	return Color.BLACK if fg_color.srgb_to_linear().get_luminance() > threshold else Color.WHITE | ||||
| @ -1,69 +0,0 @@ | ||||
| class_name Terrain | ||||
| ## Tools for working with different terrain types. | ||||
| ## This provides a unified interface to Terrain3D and regular meshes. | ||||
| 
 | ||||
| ## Basic terrain materials | ||||
| enum Type { | ||||
| 	NONE, | ||||
| 	ROUGH, | ||||
| 	FAIRWAY, | ||||
| 	GREEN, | ||||
| 	SAND, | ||||
| 	CONCRETE, | ||||
| 	ROCK, | ||||
| 	WOOD, | ||||
| 	METAL, | ||||
| 	GLASS, | ||||
| } | ||||
| 
 | ||||
| ## We use the upper bits of collision layers to encode material data | ||||
| const PHYSICAL_LAYERS := { | ||||
| 	1 << 31: Type.ROUGH, | ||||
| 	1 << 30: Type.SAND, | ||||
| 	1 << 29: Type.WOOD, | ||||
| 	1 << 28: Type.ROCK, | ||||
| 	1 << 27: Type.METAL, | ||||
| 	1 << 26: Type.GLASS, | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| ## Get the `Terrain.Type` value which corresponds to the given Terrain3D texture ID. | ||||
| ## | ||||
| ## Note that this relies on the ordering of textures in our Terrain3DAsset resource! | ||||
| ## If the order textures are defined in changes, this will break! | ||||
| static func from_texture_id(tex_id: int) -> Type: | ||||
| 	match tex_id: | ||||
| 		0: | ||||
| 			return Type.ROUGH | ||||
| 		1: | ||||
| 			return Type.FAIRWAY | ||||
| 		2: | ||||
| 			return Type.SAND | ||||
| 		3: | ||||
| 			return Type.GREEN | ||||
| 		4: | ||||
| 			return Type.ROCK | ||||
| 		_: | ||||
| 			return Type.NONE | ||||
| 
 | ||||
| 
 | ||||
| ## Get the `Terrain.Type` value encoded in the given collision layer setting. | ||||
| ## | ||||
| ## We use the upper bits in the collision layer to encode material data. | ||||
| ## Check the collision layer descriptions for more information. | ||||
| static func from_physical_layer(collision_layer: int) -> Type: | ||||
| 	for bit: int in PHYSICAL_LAYERS: | ||||
| 		if collision_layer & bit: | ||||
| 			return PHYSICAL_LAYERS[bit] | ||||
| 	return Type.CONCRETE | ||||
| 
 | ||||
| 
 | ||||
| ## Get the `Terrain.Type` value at the given position in a Terrain3D node. | ||||
| static func at_position(global_position: Vector3, terrain3d: Terrain3D) -> Type: | ||||
| 	var blend := terrain3d.data.get_texture_id(global_position) | ||||
| 	var id: int | ||||
| 	if terrain3d.data.get_control_auto(global_position): | ||||
| 		id = blend.x if blend.z > 0 else blend.y | ||||
| 	else: | ||||
| 		id = blend.x | ||||
| 	return from_texture_id(id) | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user