added new sounds and icon button prompts

This commit is contained in:
Lexi Quinn 2024-03-30 13:55:36 +11:00
parent 6823dff8f7
commit 2c2962077e
79 changed files with 859 additions and 95 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 855 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cvjcu3hofahr6"
path="res://.godot/imported/place_slot.png-277c2064aa605974a2c8c060d6ff595c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/place_slot.png"
dest_files=["res://.godot/imported/place_slot.png-277c2064aa605974a2c8c060d6ff595c.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 787 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b8woqvpwq3tsq"
path="res://.godot/imported/swap_slot.png-4ba37718f082a20531b0a5f6fa604f7b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Textures/swap_slot.png"
dest_files=["res://.godot/imported/swap_slot.png-4ba37718f082a20531b0a5f6fa604f7b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

BIN
Audio/cardPlace1.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://csu2hce4bfoki"
path="res://.godot/imported/cardPlace1.ogg-2484e2527a295193b9378094435e9c9d.oggvorbisstr"
[deps]
source_file="res://Audio/cardPlace1.ogg"
dest_files=["res://.godot/imported/cardPlace1.ogg-2484e2527a295193b9378094435e9c9d.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardPlace2.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://dxq8b77wa41os"
path="res://.godot/imported/cardPlace2.ogg-0c24dab76ba9a42d0eff08b9c96cceee.oggvorbisstr"
[deps]
source_file="res://Audio/cardPlace2.ogg"
dest_files=["res://.godot/imported/cardPlace2.ogg-0c24dab76ba9a42d0eff08b9c96cceee.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardPlace3.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bxripx3suub1v"
path="res://.godot/imported/cardPlace3.ogg-29e7b13d100ccf162783d6849c21c459.oggvorbisstr"
[deps]
source_file="res://Audio/cardPlace3.ogg"
dest_files=["res://.godot/imported/cardPlace3.ogg-29e7b13d100ccf162783d6849c21c459.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardPlace4.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://k1lsqkvohjpa"
path="res://.godot/imported/cardPlace4.ogg-bbcb2002430b837099853de8eda9734e.oggvorbisstr"
[deps]
source_file="res://Audio/cardPlace4.ogg"
dest_files=["res://.godot/imported/cardPlace4.ogg-bbcb2002430b837099853de8eda9734e.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardShove1.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://ctrc0l0g7mec"
path="res://.godot/imported/cardShove1.ogg-4dee539f1c52597a702387a3df9c4191.oggvorbisstr"
[deps]
source_file="res://Audio/cardShove1.ogg"
dest_files=["res://.godot/imported/cardShove1.ogg-4dee539f1c52597a702387a3df9c4191.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardShove2.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://d1qvky0vjo2wq"
path="res://.godot/imported/cardShove2.ogg-a5c118f5c2023e41228c900b97d7020b.oggvorbisstr"
[deps]
source_file="res://Audio/cardShove2.ogg"
dest_files=["res://.godot/imported/cardShove2.ogg-a5c118f5c2023e41228c900b97d7020b.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardShove3.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://vd0qchqv42qn"
path="res://.godot/imported/cardShove3.ogg-1f2a1e97387dc1e52853c96aa8315378.oggvorbisstr"
[deps]
source_file="res://Audio/cardShove3.ogg"
dest_files=["res://.godot/imported/cardShove3.ogg-1f2a1e97387dc1e52853c96aa8315378.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardShove4.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://cu4bn671jhais"
path="res://.godot/imported/cardShove4.ogg-1d7c1b3f5bfb250bed03a77c9c653339.oggvorbisstr"
[deps]
source_file="res://Audio/cardShove4.ogg"
dest_files=["res://.godot/imported/cardShove4.ogg-1d7c1b3f5bfb250bed03a77c9c653339.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardShuffle.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://t1fbuwpxgm8w"
path="res://.godot/imported/cardShuffle.ogg-21abb83a55a7ddb07caf12f82b0e7346.oggvorbisstr"
[deps]
source_file="res://Audio/cardShuffle.ogg"
dest_files=["res://.godot/imported/cardShuffle.ogg-21abb83a55a7ddb07caf12f82b0e7346.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardSlide1.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bn8lkvy5wibvo"
path="res://.godot/imported/cardSlide1.ogg-0983d08fca06583d6858d3e9e943d766.oggvorbisstr"
[deps]
source_file="res://Audio/cardSlide1.ogg"
dest_files=["res://.godot/imported/cardSlide1.ogg-0983d08fca06583d6858d3e9e943d766.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardSlide2.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://d32gpcu8w1yvn"
path="res://.godot/imported/cardSlide2.ogg-2dd9e75ff46c041bd3ad9fcf7dc80082.oggvorbisstr"
[deps]
source_file="res://Audio/cardSlide2.ogg"
dest_files=["res://.godot/imported/cardSlide2.ogg-2dd9e75ff46c041bd3ad9fcf7dc80082.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardSlide3.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://val5n418yebw"
path="res://.godot/imported/cardSlide3.ogg-ce933f8aeec0b58d53e5dc1985ff9b88.oggvorbisstr"
[deps]
source_file="res://Audio/cardSlide3.ogg"
dest_files=["res://.godot/imported/cardSlide3.ogg-ce933f8aeec0b58d53e5dc1985ff9b88.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardSlide4.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://ck6g061w7i6ro"
path="res://.godot/imported/cardSlide4.ogg-69ffad0c85778dc323cf370c2f0341b4.oggvorbisstr"
[deps]
source_file="res://Audio/cardSlide4.ogg"
dest_files=["res://.godot/imported/cardSlide4.ogg-69ffad0c85778dc323cf370c2f0341b4.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardSlide5.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bj8eitlsjdotb"
path="res://.godot/imported/cardSlide5.ogg-1ef687cfe2d894a337301291b9aeded7.oggvorbisstr"
[deps]
source_file="res://Audio/cardSlide5.ogg"
dest_files=["res://.godot/imported/cardSlide5.ogg-1ef687cfe2d894a337301291b9aeded7.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardSlide6.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://d0620p56ad34a"
path="res://.godot/imported/cardSlide6.ogg-81b8647b3cb4c41ab5bb71c075c58cb8.oggvorbisstr"
[deps]
source_file="res://Audio/cardSlide6.ogg"
dest_files=["res://.godot/imported/cardSlide6.ogg-81b8647b3cb4c41ab5bb71c075c58cb8.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardSlide7.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://uvoxbl1fbtu0"
path="res://.godot/imported/cardSlide7.ogg-2fb8e073ecc659aa8ae1c670096b8dd6.oggvorbisstr"
[deps]
source_file="res://Audio/cardSlide7.ogg"
dest_files=["res://.godot/imported/cardSlide7.ogg-2fb8e073ecc659aa8ae1c670096b8dd6.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/cardSlide8.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://dmf7dxo75df1a"
path="res://.godot/imported/cardSlide8.ogg-ca517e3ce7cc8d3d8ed207e15519f5ad.oggvorbisstr"
[deps]
source_file="res://Audio/cardSlide8.ogg"
dest_files=["res://.godot/imported/cardSlide8.ogg-ca517e3ce7cc8d3d8ed207e15519f5ad.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/close_002.wav Normal file

Binary file not shown.

View File

@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dq01plaqhqso4"
path="res://.godot/imported/close_002.wav-19192063de9b868c7b1eb52e7700d625.sample"
[deps]
source_file="res://Audio/close_002.wav"
dest_files=["res://.godot/imported/close_002.wav-19192063de9b868c7b1eb52e7700d625.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
Audio/open_002.wav Normal file

Binary file not shown.

24
Audio/open_002.wav.import Normal file
View File

@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://datdq1i45080i"
path="res://.godot/imported/open_002.wav-40ac5f38b7eb750dd76c18c53df194d9.sample"
[deps]
source_file="res://Audio/open_002.wav"
dest_files=["res://.godot/imported/open_002.wav-40ac5f38b7eb750dd76c18c53df194d9.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
Audio/phaserDown3.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://dd1w61ri7ui4i"
path="res://.godot/imported/phaserDown3.ogg-a508eae0a84c0b6496ed1d1aad2c2331.oggvorbisstr"
[deps]
source_file="res://Audio/phaserDown3.ogg"
dest_files=["res://.godot/imported/phaserDown3.ogg-a508eae0a84c0b6496ed1d1aad2c2331.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/phaserUp3.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bll3n3pr8s4yy"
path="res://.godot/imported/phaserUp3.ogg-1752df47bb0e90522f7db16c046d14eb.oggvorbisstr"
[deps]
source_file="res://Audio/phaserUp3.ogg"
dest_files=["res://.godot/imported/phaserUp3.ogg-1752df47bb0e90522f7db16c046d14eb.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/powerUp2-Reversed.wav Normal file

Binary file not shown.

View File

@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://quk50d1jafdw"
path="res://.godot/imported/powerUp2-Reversed.wav-95f4d13f3498a400b55b9902231dc2df.sample"
[deps]
source_file="res://Audio/powerUp2-Reversed.wav"
dest_files=["res://.godot/imported/powerUp2-Reversed.wav-95f4d13f3498a400b55b9902231dc2df.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
Audio/powerUp2.ogg Normal file

Binary file not shown.

19
Audio/powerUp2.ogg.import Normal file
View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bqjqokbvkfap7"
path="res://.godot/imported/powerUp2.ogg-f32574f7124606fb52772c7cad039764.oggvorbisstr"
[deps]
source_file="res://Audio/powerUp2.ogg"
dest_files=["res://.godot/imported/powerUp2.ogg-f32574f7124606fb52772c7cad039764.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -1,8 +1,8 @@
[gd_resource type="Resource" script_class="HeroClass" load_steps=7 format=3 uid="uid://dxonpv8qbyrjy"]
[ext_resource type="Script" path="res://Scripts/Resources/hero_class.gd" id="1_aeu85"]
[ext_resource type="Resource" uid="uid://b37r54q84vqoi" path="res://PCs/Mechanic/ClassCards/RocketLauncher/card_rocket_launcher.tres" id="1_uvyoy"]
[ext_resource type="Resource" uid="uid://deer0awg4d18o" path="res://PCs/Mechanic/ClassCards/Assault/card_assault.tres" id="2_3yr5a"]
[ext_resource type="Resource" uid="uid://bibx2my7igspq" path="res://PCs/Mage/ClassCards/Fireball/card_fireball.tres" id="3_sh7d1"]
[ext_resource type="Resource" uid="uid://ckm88acryitl4" path="res://PCs/Mechanic/ClassCards/Sniper/card_sniper.tres" id="3_wyb0n"]
[ext_resource type="Texture2D" uid="uid://bvaif1sfn1ej4" path="res://PCs/Mage/blue_hand.png" id="4_srskc"]
[ext_resource type="Texture2D" uid="uid://bvybr3fwnw46p" path="res://Assets/Textures/yeen.png" id="6_jda20"]
@ -12,4 +12,4 @@ script = ExtResource("1_aeu85")
hero_name = "Mage"
texture = ExtResource("6_jda20")
hand_texture = ExtResource("4_srskc")
deck = Array[Resource("res://Scripts/Resources/card.gd")]([ExtResource("1_uvyoy"), ExtResource("2_3yr5a"), ExtResource("3_wyb0n"), ExtResource("2_3yr5a")])
deck = Array[Resource("res://Scripts/Resources/card.gd")]([ExtResource("2_3yr5a"), ExtResource("2_3yr5a"), ExtResource("3_wyb0n"), ExtResource("3_sh7d1")])

View File

@ -27,6 +27,14 @@ signal died
@export var player_name_tag: Label
@export var weapon_swap_timer: Timer
@export var ears: AudioListener3D
@export var place_card_audio: AudioStreamPlayer
@export var swap_card_audio: AudioStreamPlayer
@export var ready_audio: AudioStreamPlayer
@export var unready_audio: AudioStreamPlayer
@export var fullpower_audio: AudioStreamPlayer
@export var zeropower_audio: AudioStreamPlayer
@export var swap_off_audio: AudioStreamPlayer
@export var swap_on_audio: AudioStreamPlayer
var inventory_selected_index: int = 0
var equipped_card: Card
@ -117,12 +125,12 @@ func _process(delta: float) -> void:
equip_weapon()
if Input.is_action_just_pressed("Secondary Fire"):
swap_weapons()
if Input.is_action_just_pressed("Select Next Card") and inventory.size != 0:
if Input.is_action_just_pressed("Select Next Card") and inventory.contents.size() > 1:
increment_selected()
$AudioStreamPlayer.play()
if Input.is_action_just_pressed("Select Previous Card") and inventory.size != 0:
swap_card_audio.play()
if Input.is_action_just_pressed("Select Previous Card") and inventory.contents.size() > 1:
decrement_selected()
$AudioStreamPlayer.play()
swap_card_audio.play()
if Input.is_action_just_pressed("Primary Fire"):
edit_tool.interact_key_held = true
if Input.is_action_just_released("Primary Fire"):
@ -195,7 +203,7 @@ func ready_self() -> void:
if !ready_state:
ready_state = true
hud.shrink_wave_start_label()
$AudioStreamPlayer.play()
ready_audio.play()
networked_set_ready_state.rpc(ready_state)
@ -203,13 +211,14 @@ func unready_self() -> void:
if ready_state:
ready_state = false
hud.grow_wave_start_label()
$AudioStreamPlayer.play()
unready_audio.play()
networked_set_ready_state(ready_state)
func add_card(new_card: Card) -> void:
inventory.add(new_card)
hud.pickup(new_card)
place_card_audio.play()
func unpause() -> void:
@ -285,7 +294,7 @@ func equip_weapon() -> void:
unequip_weapon()
return
if inventory.size > 0:
$AudioStreamPlayer.play()
place_card_audio.play()
equipped_card = inventory.remove_at(inventory_selected_index)
if !inventory.contents.has(equipped_card):
decrement_selected()
@ -296,6 +305,7 @@ func equip_weapon() -> void:
weapon.set_multiplayer_authority(multiplayer.get_unique_id())
#gauntlet_sprite.set_visible(false)
gauntlet_card_1.set_card(equipped_card)
hud.place_icon.set_visible(false)
gauntlet_card_1.view_weapon()
gauntlet_card_1.set_visible(true)
weapon.set_hero(self)
@ -308,7 +318,11 @@ func swap_weapons() -> void:
if !editing_mode:
weapons_active = false
if weapon or offhand_weapon:
$AudioStreamPlayer.play()
if editing_mode:
swap_card_audio.play()
else:
swap_off_audio.play()
hud.audio_guard = true
var temp: Weapon = offhand_weapon
var temp_card: Card = offhand_card
if weapon:
@ -323,10 +337,12 @@ func swap_weapons() -> void:
gauntlet_card_2.set_card(offhand_card)
gauntlet_card_2.view_weapon()
gauntlet_card_2.set_visible(true)
hud.swap_icon.set_visible(false)
else:
offhand_weapon = null
offhand_card = null
gauntlet_card_2.set_visible(false)
hud.swap_icon.set_visible(true)
if temp:
weapon = temp
equipped_card = temp_card
@ -338,10 +354,12 @@ func swap_weapons() -> void:
gauntlet_card_1.set_card(equipped_card)
gauntlet_card_1.view_weapon()
gauntlet_card_1.set_visible(true)
hud.place_icon.set_visible(false)
else:
weapon = null
equipped_card = null
gauntlet_card_1.set_visible(false)
hud.place_icon.set_visible(true)
if !editing_mode:
weapon_swap_timer.start()
@ -349,19 +367,20 @@ func swap_weapons() -> void:
func _on_timer_timeout() -> void:
weapons_active = true
if weapon:
$AudioStreamPlayer.play()
swap_on_audio.play()
weapon.set_visible(true)
func unequip_weapon() -> void:
networked_unequip_weapon.rpc()
gauntlet_card_1.set_visible(false)
hud.place_icon.set_visible(true)
#gauntlet_sprite.set_visible(true)
weapon.queue_free()
weapon = null
inventory.add(equipped_card)
equipped_card = null
$AudioStreamPlayer.play()
place_card_audio.play()
check_left_hand_valid()

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=40 format=3 uid="uid://dxgxbtf68lcv5"]
[gd_scene load_steps=62 format=3 uid="uid://dxgxbtf68lcv5"]
[ext_resource type="Script" path="res://PCs/hero.gd" id="1_pihpe"]
[ext_resource type="Resource" uid="uid://b5pc3frhx467q" path="res://PCs/Mechanic/red.tres" id="2_dbyo0"]
@ -20,10 +20,29 @@
[ext_resource type="Texture2D" uid="uid://chhmkmlfrobhu" path="res://Assets/Textures/bubble.png" id="15_q3yot"]
[ext_resource type="Texture2D" uid="uid://cqnapc8cscl7i" path="res://Assets/Textures/border.png" id="16_x1xjr"]
[ext_resource type="PackedScene" uid="uid://chnj376d3lcjd" path="res://Scenes/UI/pickup_notification.tscn" id="17_oyeww"]
[ext_resource type="Texture2D" uid="uid://cvjcu3hofahr6" path="res://Assets/Textures/place_slot.png" id="18_okmpi"]
[ext_resource type="Script" path="res://PCs/player_movement.gd" id="20_cfhw8"]
[ext_resource type="Shader" path="res://crosshair.gdshader" id="20_gxpgc"]
[ext_resource type="Texture2D" uid="uid://r202vo47jw1q" path="res://Assets/Textures/enemyhealth.png" id="21_apps2"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="24_gg2dy"]
[ext_resource type="AudioStream" uid="uid://csu2hce4bfoki" path="res://Audio/cardPlace1.ogg" id="24_8ch4w"]
[ext_resource type="Texture2D" uid="uid://b8woqvpwq3tsq" path="res://Assets/Textures/swap_slot.png" id="24_gr6xt"]
[ext_resource type="AudioStream" uid="uid://dxq8b77wa41os" path="res://Audio/cardPlace2.ogg" id="25_awl6m"]
[ext_resource type="AudioStream" uid="uid://bxripx3suub1v" path="res://Audio/cardPlace3.ogg" id="26_7tm07"]
[ext_resource type="AudioStream" uid="uid://k1lsqkvohjpa" path="res://Audio/cardPlace4.ogg" id="27_xvxs8"]
[ext_resource type="AudioStream" uid="uid://bn8lkvy5wibvo" path="res://Audio/cardSlide1.ogg" id="28_1thk8"]
[ext_resource type="AudioStream" uid="uid://d32gpcu8w1yvn" path="res://Audio/cardSlide2.ogg" id="29_s0a0l"]
[ext_resource type="AudioStream" uid="uid://val5n418yebw" path="res://Audio/cardSlide3.ogg" id="30_djhlg"]
[ext_resource type="AudioStream" uid="uid://ck6g061w7i6ro" path="res://Audio/cardSlide4.ogg" id="31_546e6"]
[ext_resource type="AudioStream" uid="uid://bj8eitlsjdotb" path="res://Audio/cardSlide5.ogg" id="32_tg7y0"]
[ext_resource type="AudioStream" uid="uid://d0620p56ad34a" path="res://Audio/cardSlide6.ogg" id="33_2v5co"]
[ext_resource type="AudioStream" uid="uid://uvoxbl1fbtu0" path="res://Audio/cardSlide7.ogg" id="34_6acmc"]
[ext_resource type="AudioStream" uid="uid://dmf7dxo75df1a" path="res://Audio/cardSlide8.ogg" id="35_i0lwe"]
[ext_resource type="AudioStream" uid="uid://dq01plaqhqso4" path="res://Audio/close_002.wav" id="36_cd8og"]
[ext_resource type="AudioStream" uid="uid://quk50d1jafdw" path="res://Audio/powerUp2-Reversed.wav" id="36_lsvj8"]
[ext_resource type="AudioStream" uid="uid://bqjqokbvkfap7" path="res://Audio/powerUp2.ogg" id="37_kv1mg"]
[ext_resource type="AudioStream" uid="uid://datdq1i45080i" path="res://Audio/open_002.wav" id="37_sa2xu"]
[ext_resource type="AudioStream" uid="uid://dd1w61ri7ui4i" path="res://Audio/phaserDown3.ogg" id="40_pnv0q"]
[ext_resource type="AudioStream" uid="uid://bll3n3pr8s4yy" path="res://Audio/phaserUp3.ogg" id="41_hussy"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_jbu13"]
radius = 0.3
@ -99,12 +118,46 @@ properties/1/spawn = true
properties/1/replication_mode = 2
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_wyb7c"]
random_pitch = 1.1
streams_count = 4
stream_0/stream = ExtResource("24_8ch4w")
stream_0/weight = 1.0
stream_1/stream = ExtResource("25_awl6m")
stream_1/weight = 1.0
stream_2/stream = ExtResource("26_7tm07")
stream_2/weight = 1.0
stream_3/stream = ExtResource("27_xvxs8")
stream_3/weight = 1.0
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_0lyoo"]
streams_count = 8
stream_0/stream = ExtResource("28_1thk8")
stream_0/weight = 1.0
stream_1/stream = ExtResource("29_s0a0l")
stream_1/weight = 1.0
stream_2/stream = ExtResource("30_djhlg")
stream_2/weight = 1.0
stream_3/stream = ExtResource("31_546e6")
stream_3/weight = 1.0
stream_4/stream = ExtResource("32_tg7y0")
stream_4/weight = 1.0
stream_5/stream = ExtResource("33_2v5co")
stream_5/weight = 1.0
stream_6/stream = ExtResource("34_6acmc")
stream_6/weight = 1.0
stream_7/stream = ExtResource("35_i0lwe")
stream_7/weight = 1.0
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_evsqr"]
streams_count = 1
stream_0/stream = ExtResource("24_gg2dy")
stream_0/stream = ExtResource("36_lsvj8")
stream_0/weight = 1.0
[node name="Hero" type="CharacterBody3D" node_paths=PackedStringArray("camera", "gun_camera", "left_hand_sprite", "card_sprites", "left_hand", "right_hand", "right_hand_animator", "edit_tool", "gauntlet_sprite", "sprite", "hand_sprite", "interaction_raycast", "inventory", "gauntlet_card_1", "gauntlet_card_2", "hud", "movement", "player_name_tag", "weapon_swap_timer", "ears")]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_pc8yw"]
streams_count = 1
stream_0/stream = ExtResource("37_kv1mg")
stream_0/weight = 1.0
[node name="Hero" type="CharacterBody3D" node_paths=PackedStringArray("camera", "gun_camera", "left_hand_sprite", "card_sprites", "left_hand", "right_hand", "right_hand_animator", "edit_tool", "gauntlet_sprite", "sprite", "hand_sprite", "interaction_raycast", "inventory", "gauntlet_card_1", "gauntlet_card_2", "hud", "movement", "player_name_tag", "weapon_swap_timer", "ears", "place_card_audio", "swap_card_audio", "ready_audio", "unready_audio", "fullpower_audio", "zeropower_audio", "swap_off_audio", "swap_on_audio")]
collision_layer = 2
collision_mask = 37
script = ExtResource("1_pihpe")
@ -130,6 +183,14 @@ movement = NodePath("PlayerMovement")
player_name_tag = NodePath("NametagViewport/Label")
weapon_swap_timer = NodePath("WeaponSwapTimer")
ears = NodePath("AudioListener3D")
place_card_audio = NodePath("PlaceCardAudio")
swap_card_audio = NodePath("SwapCardAudio")
ready_audio = NodePath("ReadyAudio")
unready_audio = NodePath("UnreadyAudio")
fullpower_audio = NodePath("FullPowerAudio")
zeropower_audio = NodePath("ZeroPowerAudio")
swap_off_audio = NodePath("SwapOffAudio")
swap_on_audio = NodePath("SwapOnAudio")
[node name="AudioListener3D" type="AudioListener3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
@ -334,8 +395,9 @@ head = NodePath("../ViewMovement")
max_look_down_angle = 80.0
max_look_up_angle = 80.0
[node name="HUD" type="CanvasLayer" parent="." node_paths=PackedStringArray("wave_count", "lives_count", "currency_count", "minimap_outline", "crosshair", "minimap", "minimap_cam", "minimap_viewport", "fps_label", "hover_text", "enemy_sprites", "enemy_counts", "weapon_energy_bar", "offhand_energy_bar", "wave_start_label")]
[node name="HUD" type="CanvasLayer" parent="." node_paths=PackedStringArray("player", "wave_count", "lives_count", "currency_count", "minimap_outline", "crosshair", "minimap", "minimap_cam", "minimap_viewport", "fps_label", "hover_text", "enemy_sprites", "enemy_counts", "weapon_energy_bar", "offhand_energy_bar", "wave_start_label", "place_icon", "swap_icon", "place_text", "swap_text")]
script = ExtResource("8_yl6ka")
player = NodePath("..")
wave_count = NodePath("WaveCount")
lives_count = NodePath("LivesCount")
currency_count = NodePath("CurrencyCount")
@ -345,13 +407,17 @@ minimap = NodePath("Minimap")
minimap_cam = NodePath("../MiniMapViewport/Camera3D")
minimap_viewport = NodePath("../MiniMapViewport")
fps_label = NodePath("FPSCounter")
hover_text = NodePath("HoverOverText")
hover_text = NodePath("RichTextLabel2")
enemy_sprites = [NodePath("EnemyTracker/TextureRect"), NodePath("EnemyTracker/TextureRect2"), NodePath("EnemyTracker/TextureRect3"), NodePath("EnemyTracker/TextureRect4"), NodePath("EnemyTracker/TextureRect5")]
enemy_counts = [NodePath("EnemyTracker/TextureRect/Label"), NodePath("EnemyTracker/TextureRect2/Label2"), NodePath("EnemyTracker/TextureRect3/Label3"), NodePath("EnemyTracker/TextureRect4/Label4"), NodePath("EnemyTracker/TextureRect5/Label5")]
weapon_energy_bar = NodePath("PrimaryEnergyBar")
offhand_energy_bar = NodePath("OffhandEnergyBar")
pickup_notif_scene = ExtResource("17_oyeww")
wave_start_label = NodePath("Label")
wave_start_label = NodePath("RichTextLabel")
place_icon = NodePath("PlaceIcon")
swap_icon = NodePath("SwapIcon")
place_text = NodePath("PlaceIcon/RichTextLabel")
swap_text = NodePath("SwapIcon/RichTextLabel")
[node name="FirstPersonCam" type="TextureRect" parent="HUD"]
anchors_preset = 15
@ -362,6 +428,68 @@ grow_vertical = 2
mouse_filter = 2
texture = SubResource("ViewportTexture_mk87g")
[node name="PlaceIcon" type="TextureRect" parent="HUD"]
anchors_preset = 3
anchor_left = 1.0
anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = -657.0
offset_top = -455.0
offset_right = -331.0
offset_bottom = -1.0
grow_horizontal = 0
grow_vertical = 0
texture = ExtResource("18_okmpi")
[node name="RichTextLabel" type="RichTextLabel" parent="HUD/PlaceIcon"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -30.0
offset_top = -19.0
offset_right = 30.0
offset_bottom = 41.0
grow_horizontal = 2
grow_vertical = 2
bbcode_enabled = true
text = "#Equip In Gauntlet#"
scroll_active = false
[node name="SwapIcon" type="TextureRect" parent="HUD"]
anchors_preset = 3
anchor_left = 1.0
anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = -332.0
offset_top = -455.0
offset_right = -6.0
offset_bottom = -1.0
grow_horizontal = 0
grow_vertical = 0
texture = ExtResource("24_gr6xt")
[node name="RichTextLabel" type="RichTextLabel" parent="HUD/SwapIcon"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -30.0
offset_top = -29.0
offset_right = 30.0
offset_bottom = 31.0
grow_horizontal = 2
grow_vertical = 2
bbcode_enabled = true
text = "#Secondary Fire#"
scroll_active = false
[node name="Minimap" type="TextureRect" parent="HUD"]
anchors_preset = 1
anchor_left = 1.0
@ -560,26 +688,25 @@ text = "20"
horizontal_alignment = 1
vertical_alignment = 1
[node name="HoverOverText" type="Label" parent="HUD"]
visible = false
[node name="RichTextLabel2" type="RichTextLabel" parent="HUD"]
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -93.5
offset_top = 167.0
offset_right = 93.5
offset_bottom = 13.0
offset_left = -304.0
offset_top = 37.0
offset_right = 296.0
offset_bottom = 84.0
grow_horizontal = 2
grow_vertical = 2
theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_colors/default_color = Color(0, 0, 0, 1)
theme_override_colors/font_outline_color = Color(1, 1, 1, 1)
theme_override_constants/outline_size = 4
theme_override_font_sizes/font_size = 34
text = "Press button to do thing"
horizontal_alignment = 1
vertical_alignment = 1
theme_override_constants/outline_size = 5
theme_override_font_sizes/normal_font_size = 32
bbcode_enabled = true
text = "[center]Press Button To do thing"
scroll_active = false
[node name="WaveCount" type="Label" parent="HUD"]
anchors_preset = 5
@ -657,7 +784,7 @@ offset_bottom = -40.0
grow_vertical = 0
alignment = 2
[node name="Label" type="Label" parent="HUD"]
[node name="RichTextLabel" type="RichTextLabel" parent="HUD"]
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
@ -666,10 +793,10 @@ offset_top = 110.0
offset_right = 300.0
offset_bottom = 160.0
grow_horizontal = 2
text = "Press [Button] to start wave"
horizontal_alignment = 1
vertical_alignment = 1
clip_text = true
theme_override_font_sizes/normal_font_size = 32
bbcode_enabled = true
text = "[center]Press #Ready# to start wave[/center]"
scroll_active = false
[node name="WeaponSwapTimer" type="Timer" parent="."]
wait_time = 0.9
@ -678,8 +805,36 @@ one_shot = true
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_tsiqi")
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
[node name="PlaceCardAudio" type="AudioStreamPlayer" parent="."]
stream = SubResource("AudioStreamRandomizer_wyb7c")
bus = &"SFX"
[node name="SwapCardAudio" type="AudioStreamPlayer" parent="."]
stream = SubResource("AudioStreamRandomizer_0lyoo")
bus = &"SFX"
[node name="ReadyAudio" type="AudioStreamPlayer" parent="."]
stream = SubResource("AudioStreamRandomizer_evsqr")
bus = &"SFX"
[node name="UnreadyAudio" type="AudioStreamPlayer" parent="."]
stream = SubResource("AudioStreamRandomizer_pc8yw")
bus = &"SFX"
[node name="FullPowerAudio" type="AudioStreamPlayer" parent="."]
stream = ExtResource("37_sa2xu")
bus = &"SFX"
[node name="ZeroPowerAudio" type="AudioStreamPlayer" parent="."]
stream = ExtResource("36_cd8og")
bus = &"SFX"
[node name="SwapOffAudio" type="AudioStreamPlayer" parent="."]
stream = ExtResource("40_pnv0q")
bus = &"SFX"
[node name="SwapOnAudio" type="AudioStreamPlayer" parent="."]
stream = ExtResource("41_hussy")
bus = &"SFX"
[connection signal="timeout" from="WeaponSwapTimer" to="." method="_on_timer_timeout"]

View File

@ -92,7 +92,7 @@ collision_layer = 16
collision_mask = 0
script = ExtResource("4_eavi1")
press_cost = 15
hover_text = "Spend 15 Coins to print card"
hover_text = "[center]#Interact# to spend $15 on random card"
[node name="CollisionShape3D2" type="CollisionShape3D" parent="StaticBody3D"]
shape = SubResource("BoxShape3D_ikdwj")

View File

@ -2,12 +2,12 @@
[ext_resource type="Script" path="res://Scenes/Menus/CharacterSelect/charselect.gd" id="1_h2h26"]
[ext_resource type="PackedScene" uid="uid://bnsf2degj5tio" path="res://Scenes/UI/hero_card.tscn" id="1_v2mfo"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="3_o88ca"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="3_ho1fl"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_ehpk7"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("3_o88ca")
stream_0/stream = ExtResource("3_ho1fl")
stream_0/weight = 1.0
[node name="Control" type="Control" node_paths=PackedStringArray("hbox")]

View File

@ -4,7 +4,7 @@
[ext_resource type="Script" path="res://Scenes/Menus/MainMenu/main_menu.gd" id="2_ivytu"]
[ext_resource type="Texture2D" uid="uid://lvvnrb5jugum" path="res://Assets/Textures/logo_title.png" id="3_8jkeb"]
[ext_resource type="PackedScene" uid="uid://y1qa1g3ic8sp" path="res://Worlds/GreenPlanet/Levels/first_level.tscn" id="3_l8r4a"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="5_4c4cl"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="5_cwn2i"]
[sub_resource type="ViewportTexture" id="ViewportTexture_5u75i"]
viewport_path = NodePath("SubViewport")
@ -12,7 +12,7 @@ viewport_path = NodePath("SubViewport")
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_2jyua"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("5_4c4cl")
stream_0/stream = ExtResource("5_cwn2i")
stream_0/weight = 1.0
[node name="MainMenu" type="Control" node_paths=PackedStringArray("bg_level")]

View File

@ -2,12 +2,12 @@
[ext_resource type="Theme" uid="uid://b6a0ip4p72tgx" path="res://new_theme.tres" id="1_gaupv"]
[ext_resource type="Script" path="res://Scenes/Menus/PauseMenu/pause_menu.gd" id="2_4pn2l"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="3_q3xhn"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="3_0bid7"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_n6ixr"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("3_q3xhn")
stream_0/stream = ExtResource("3_0bid7")
stream_0/weight = 1.0
[node name="Control" type="Control"]

View File

@ -1,12 +1,12 @@
[gd_scene load_steps=4 format=3 uid="uid://6a277g802os0"]
[ext_resource type="Script" path="res://Scripts/alert_popup.gd" id="1_cac03"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="2_h7kij"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="2_2mbtt"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_veol0"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("2_h7kij")
stream_0/stream = ExtResource("2_2mbtt")
stream_0/weight = 1.0
[node name="Control" type="PanelContainer"]

View File

@ -1,12 +1,12 @@
[gd_scene load_steps=4 format=3 uid="uid://f46qh73hrk4y"]
[ext_resource type="Script" path="res://Scripts/confirmation_popup.gd" id="1_x7akt"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="2_hgqp4"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="2_3w36n"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_22wuj"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("2_hgqp4")
stream_0/stream = ExtResource("2_3w36n")
stream_0/weight = 1.0
[node name="ConfirmationPopup" type="PanelContainer"]

View File

@ -1,13 +1,13 @@
[gd_scene load_steps=5 format=3 uid="uid://dsydnch32qh2h"]
[ext_resource type="Script" path="res://Scripts/lost_game_screen.gd" id="1_1pne8"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="2_sjvor"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="3_v84an"]
[ext_resource type="PackedScene" uid="uid://b5hp43bm07b8a" path="res://h_box_container.tscn" id="3_ynscm"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_ddnd1"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("2_sjvor")
stream_0/stream = ExtResource("3_v84an")
stream_0/weight = 1.0
[node name="Control" type="Control"]

View File

@ -6,12 +6,12 @@
[ext_resource type="PackedScene" uid="uid://bvfit0sy2tnw4" path="res://Scenes/Menus/server_form.tscn" id="5_bqbwv"]
[ext_resource type="PackedScene" uid="uid://dqqitmhu66a7d" path="res://Scenes/Menus/CharacterSelect/charselect.tscn" id="5_lvoo2"]
[ext_resource type="PackedScene" uid="uid://ddmg342ff2qaq" path="res://Scenes/UI/chatbox.tscn" id="6_wtqwd"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="7_npnbo"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="7_6mhre"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_cwnde"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("7_npnbo")
stream_0/stream = ExtResource("7_6mhre")
stream_0/weight = 1.0
[node name="multiplayer_lobby" type="Control" node_paths=PackedStringArray("server_form", "scoreboard", "loadout_editor", "chatbox")]

View File

@ -1,10 +1,17 @@
[gd_scene load_steps=6 format=3 uid="uid://clulh7v8c7h85"]
[gd_scene load_steps=8 format=3 uid="uid://clulh7v8c7h85"]
[ext_resource type="Script" path="res://Scripts/options_menu.gd" id="1_bievw"]
[ext_resource type="PackedScene" uid="uid://bjk7jf0bau5lv" path="res://Scenes/Menus/gameplay_options.tscn" id="3_25wuw"]
[ext_resource type="PackedScene" uid="uid://bmd4mawasoc11" path="res://Scenes/Menus/graphics_options.tscn" id="4_ckcvq"]
[ext_resource type="PackedScene" uid="uid://bf2nosqt5f82e" path="res://Scenes/Menus/keybind_options.tscn" id="5_4k33c"]
[ext_resource type="PackedScene" uid="uid://bwc45ogto8thn" path="res://Scenes/Menus/audio_options.tscn" id="6_4vs8p"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="6_hhyef"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_5otwj"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("6_hhyef")
stream_0/weight = 1.0
[node name="OptionsMenu" type="PanelContainer" node_paths=PackedStringArray("gameplay", "graphics", "keybinds")]
anchors_preset = 15
@ -40,6 +47,7 @@ visible = false
layout_mode = 2
[node name="Audio" parent="VBoxContainer/TabContainer" instance=ExtResource("6_4vs8p")]
visible = false
layout_mode = 2
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"]
@ -54,5 +62,10 @@ text = "Discard"
layout_mode = 2
text = "Confirm"
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
stream = SubResource("AudioStreamRandomizer_5otwj")
[connection signal="mouse_entered" from="VBoxContainer/HBoxContainer/Cancel" to="." method="_on_button_hovered"]
[connection signal="pressed" from="VBoxContainer/HBoxContainer/Cancel" to="." method="_on_cancel_pressed"]
[connection signal="mouse_entered" from="VBoxContainer/HBoxContainer/Confirm" to="." method="_on_button_hovered"]
[connection signal="pressed" from="VBoxContainer/HBoxContainer/Confirm" to="." method="_on_confirm_pressed"]

View File

@ -1,12 +1,12 @@
[gd_scene load_steps=4 format=3 uid="uid://bvfit0sy2tnw4"]
[ext_resource type="Script" path="res://Scripts/server_form.gd" id="1_43oaq"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="2_2xblc"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="2_hirre"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_3o7ni"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("2_2xblc")
stream_0/stream = ExtResource("2_hirre")
stream_0/weight = 1.0
[node name="ServerForm" type="PanelContainer"]

View File

@ -5,12 +5,12 @@
[ext_resource type="Script" path="res://Scripts/singleplayer_lobby.gd" id="1_nd17k"]
[ext_resource type="PackedScene" uid="uid://ddmg342ff2qaq" path="res://Scenes/UI/chatbox.tscn" id="3_l8xy3"]
[ext_resource type="PackedScene" uid="uid://dqqitmhu66a7d" path="res://Scenes/Menus/CharacterSelect/charselect.tscn" id="5_vg5y0"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="6_qgq1v"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="6_6nu57"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_g5har"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("6_qgq1v")
stream_0/stream = ExtResource("6_6nu57")
stream_0/weight = 1.0
[node name="singleplayer_lobby" type="Control" node_paths=PackedStringArray("scoreboard", "loadout_editor", "chatbox")]

View File

@ -1,12 +1,12 @@
[gd_scene load_steps=4 format=3 uid="uid://dccsyymk4uko6"]
[ext_resource type="Script" path="res://Scripts/text_input_popup.gd" id="1_ve6eb"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="2_eqkxc"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="2_mec4u"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_w0x7l"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("2_eqkxc")
stream_0/stream = ExtResource("2_mec4u")
stream_0/weight = 1.0
[node name="TextInputPopup" type="PanelContainer"]

View File

@ -1,13 +1,13 @@
[gd_scene load_steps=5 format=3 uid="uid://ce0m8vbjbng6o"]
[ext_resource type="Script" path="res://Scripts/won_game_screen.gd" id="1_oa7nq"]
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://shot1.wav" id="2_553mv"]
[ext_resource type="PackedScene" uid="uid://b5hp43bm07b8a" path="res://h_box_container.tscn" id="2_xm8em"]
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="3_ro1yg"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_dram5"]
random_pitch = 1.1
streams_count = 1
stream_0/stream = ExtResource("2_553mv")
stream_0/stream = ExtResource("3_ro1yg")
stream_0/weight = 1.0
[node name="Control" type="Control"]

View File

@ -46,6 +46,7 @@ layers = 4
[node name="CSGSphere3D" type="CSGSphere3D" parent="."]
visible = false
layers = 5
radius = 10.0
radial_segments = 16
rings = 16

BIN
Scenes/UI/drop_003.ogg Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://cp6ph4ra7u5rk"
path="res://.godot/imported/drop_003.ogg-b1448cf24bb17e683ffb9af8ac49fa5f.oggvorbisstr"
[deps]
source_file="res://Scenes/UI/drop_003.ogg"
dest_files=["res://.godot/imported/drop_003.ogg-b1448cf24bb17e683ffb9af8ac49fa5f.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -26,6 +26,12 @@ var rarity_weights: Dictionary = {
}
func _ready() -> void:
keymaps.append(preload("res://Resources/Keymaps/qwerty.tres"))
keymaps.append(preload("res://Resources/Keymaps/azerty.tres"))
keymaps.append(preload("res://Resources/Keymaps/dvorak.tres"))
keymaps.append(preload("res://Resources/Keymaps/colemak.tres"))
keymaps.append(preload("res://Resources/Keymaps/workman.tres"))
graphics = PlayerGraphicsSettings.load_profile_from_disk()
graphics.apply_graphical_settings(get_viewport())
audio = PlayerAudioSettings.load_profile_from_disk()
@ -69,9 +75,3 @@ func _ready() -> void:
enemies.append(preload("res://Worlds/GreenPlanet/Enemies/dog_boss.tres"))
enemies.append(preload("res://Worlds/GreenPlanet/Enemies/airenemy.tres"))
enemies.append(preload("res://Worlds/GreenPlanet/Enemies/airenemy2.tres"))
keymaps.append(preload("res://Resources/Keymaps/qwerty.tres"))
keymaps.append(preload("res://Resources/Keymaps/azerty.tres"))
keymaps.append(preload("res://Resources/Keymaps/dvorak.tres"))
keymaps.append(preload("res://Resources/Keymaps/colemak.tres"))
keymaps.append(preload("res://Resources/Keymaps/workman.tres"))

View File

@ -169,6 +169,7 @@ func put_card_in_tower_base(tower_base: TowerBase) -> void:
if !inventory.contents.has(card):
hero.decrement_selected()
tower_base.add_card(card, multiplayer.get_unique_id())
hero.place_card_audio.play()
func set_progress_percent(value: float) -> void:

View File

@ -229,7 +229,7 @@ func damage_goal(enemy: Enemy, penalty: int) -> void:
func end_wave() -> void:
for peer_id: int in connected_players_nodes:
connected_players_nodes[peer_id].currency += ceili(pot / connected_players_nodes.size())
connected_players_nodes[peer_id].ready_state = false
connected_players_nodes[peer_id].unready_self()
level.a_star_graph_3d.visualized_path.enable_visualization()
level.a_star_graph_3d.enable_non_path_tower_frames()
if is_multiplayer_authority():

View File

@ -1,6 +1,7 @@
class_name HUD extends CanvasLayer
var last_lives_count: int = 120
@export var player: Hero
@export var wave_count: Label
@export var lives_count: Label
@export var currency_count: Label
@ -10,7 +11,7 @@ var last_lives_count: int = 120
@export var minimap_cam: MinimapCamera3D
@export var minimap_viewport: SubViewport
@export var fps_label: Label
@export var hover_text: Label
@export var hover_text: RichTextLabel
var minimap_anchor: Node3D
var enemy_names: Array[String]
@export var enemy_sprites: Array[TextureRect]
@ -18,7 +19,13 @@ var enemy_names: Array[String]
@export var weapon_energy_bar: TextureProgressBar
@export var offhand_energy_bar: TextureProgressBar
@export var pickup_notif_scene: PackedScene
@export var wave_start_label: Label
@export var wave_start_label: RichTextLabel
@export var place_icon: TextureRect
@export var swap_icon: TextureRect
@export var place_text: RichTextLabel
@export var swap_text: RichTextLabel
var audio_guard: bool = false
func set_energy_visible(value: bool) -> void:
@ -31,7 +38,9 @@ func set_offhand_energy_visible(value: bool) -> void:
func _process(_delta: float) -> void:
fps_label.text = "FPS: " + str(Engine.get_frames_per_second())
wave_start_label.text = "Press [" + Data.player_keymap.ready.as_text_key_label() + "] to start wave"
wave_start_label.text = parse_action_tag("[center]Press #Ready# to start wave")
place_text.text = parse_action_tag("[center]#Equip In Gauntlet#")
swap_text.text = parse_action_tag("[center]#Secondary Fire#")
func grow_wave_start_label() -> void:
@ -55,7 +64,7 @@ func tween_label(x: float) -> void:
func set_hover_text(text: String) -> void:
hover_text.text = text
hover_text.text = parse_action_tag(text)
hover_text.set_visible(true)
@ -111,6 +120,16 @@ func set_crosshair_visible(value: bool) -> void:
func set_weapon_energy(value: int) -> void:
weapon_energy_bar.value = value
if player.editing_mode:
audio_guard = true
if value == 0 and !audio_guard:
player.zeropower_audio.play()
audio_guard = true
if value == 100 and !audio_guard:
player.fullpower_audio.play()
audio_guard = true
if value > 0 and value < 100:
audio_guard = false
func set_offhand_energy(value: int) -> void:
@ -147,3 +166,15 @@ func pickup(card: Card) -> void:
var notif: PickupNotification = pickup_notif_scene.instantiate()
notif.set_card(card)
$VBoxContainer.add_child(notif)
func parse_action_tag(text: String) -> String:
var string_array: PackedStringArray = text.split("#")
if string_array.size() > 1:
var event: InputEvent = InputMap.action_get_events(string_array[1])[0]
if event is InputEventKey:
string_array[1] = "[img=top,50]%s[/img]" % KeyIconMap.keys[str(event.keycode)]
if event is InputEventMouseButton:
string_array[1] = "[img=top,50]%s[/img]" % KeyIconMap.mouse_buttons[str(event.button_index)]
text = "".join(string_array)
return text

View File

@ -20,3 +20,7 @@ func _on_confirm_pressed() -> void:
Data.player_keymap.save_profile_to_disk()
Data.player_controller_keymap.append_input_map()
queue_free()
func _on_button_hovered() -> void:
$AudioStreamPlayer.play()

View File

@ -32,18 +32,18 @@ script = ExtResource("3_wiose")
damage_particle_scene = ExtResource("4_mhq3m")
[node name="Hitbox" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.527022, 0)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.00571543, 0)
shape = SubResource("SphereShape3D_21dgw")
script = ExtResource("5_433ie")
[node name="DirectionSprite" type="Sprite3D" parent="."]
transform = Transform3D(1.56, 0, 0, 0, 1.56, 0, 0, 0, 1.56, 0, 0.546419, 0)
transform = Transform3D(1.56, 0, 0, 0, 1.56, 0, 0, 0, 1.56, 0, 0.0251125, 0)
billboard = 1
texture_filter = 0
texture = ExtResource("6_ke2c8")
[node name="Sprite3D" type="Sprite3D" parent="."]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 1.15918, 0)
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0.637873, 0)
sorting_offset = 1.0
pixel_size = 0.02
billboard = 1
@ -51,12 +51,13 @@ texture_filter = 0
texture = SubResource("ViewportTexture_ss5ir")
[node name="Sprite3D2" type="Sprite3D" parent="."]
transform = Transform3D(2, 0, 0, 0, -8.74228e-08, 2, 0, -2, -8.74228e-08, 0, 1.40824, 0)
transform = Transform3D(2, 0, 0, 0, -8.74228e-08, 2, 0, -2, -8.74228e-08, 0, 0.886933, 0)
layers = 4
texture_filter = 0
texture = ExtResource("9_7yfyh")
[node name="StatusEffector" type="Node3D" parent="." node_paths=PackedStringArray("hbox", "enemy")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.521307, 0)
script = ExtResource("9_7hati")
hbox = NodePath("../SubViewport/HBoxContainer")
enemy = NodePath("..")

View File

@ -112,7 +112,7 @@ material = SubResource("StandardMaterial3D_u3k34")
size = Vector2(2, 8)
[sub_resource type="BoxShape3D" id="BoxShape3D_6x7pa"]
size = Vector3(8, 1, 2)
size = Vector3(8.5, 1, 2)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_sugxr"]
albedo_texture = ExtResource("17_oq0rj")
@ -1025,10 +1025,10 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2.5, 0)
shape = SubResource("BoxShape3D_jcbfv")
[node name="StaticBody3D3" type="StaticBody3D" parent="."]
transform = Transform3D(0.933524, 0.358515, 0, -0.358515, 0.933524, 0, 0, 0, 1, 12.7353, 2.06138, 7.5)
transform = Transform3D(0.933524, 0.358515, 0, -0.358515, 0.933524, 0, 0, 0, 1, 12.9463, 1.97883, 7.5)
[node name="MeshInstance3D" type="MeshInstance3D" parent="StaticBody3D3"]
transform = Transform3D(-4.37114e-08, -1, -4.37114e-08, 0, -4.37114e-08, 1, -1, 4.37114e-08, 1.91069e-15, 0, 0, 0)
transform = Transform3D(-4.37114e-08, -1, -2.98023e-08, -8.88178e-16, -2.98023e-08, 1, -1, 4.37114e-08, 1.91069e-15, -0.223239, -0.00713253, 0)
mesh = SubResource("QuadMesh_p8nf8")
skeleton = NodePath("../..")
@ -1037,10 +1037,10 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)
shape = SubResource("BoxShape3D_6x7pa")
[node name="StaticBody3D4" type="StaticBody3D" parent="."]
transform = Transform3D(0.933524, 0.358515, 0, -0.358515, 0.933524, 0, 0, 0, 1, 12.735, 2.061, -7.5)
transform = Transform3D(0.933524, 0.358515, 0, -0.358515, 0.933524, 0, 0, 0, 1, 12.946, 1.97845, -7.5)
[node name="MeshInstance3D" type="MeshInstance3D" parent="StaticBody3D4"]
transform = Transform3D(-4.37114e-08, -1, -4.37114e-08, 0, -4.37114e-08, 1, -1, 4.37114e-08, 1.91069e-15, 0, 0, 0)
transform = Transform3D(-4.37114e-08, -1, -2.98023e-08, -8.88178e-16, -2.98023e-08, 1, -1, 4.37114e-08, 1.91069e-15, -0.223239, -0.00713158, 0)
mesh = SubResource("QuadMesh_p8nf8")
skeleton = NodePath("../..")
@ -1049,10 +1049,10 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)
shape = SubResource("BoxShape3D_6x7pa")
[node name="StaticBody3D5" type="StaticBody3D" parent="."]
transform = Transform3D(-0.933524, -0.358515, -8.74228e-08, -0.358515, 0.933524, 0, 8.16113e-08, 3.13423e-08, -1, -12.735, 2.06138, 7.5)
transform = Transform3D(-0.933524, -0.358515, -8.74228e-08, -0.358515, 0.933524, 0, 8.16113e-08, 3.13423e-08, -1, -12.9597, 1.97579, 7.5)
[node name="MeshInstance3D" type="MeshInstance3D" parent="StaticBody3D5"]
transform = Transform3D(-4.37114e-08, -1, -4.37114e-08, 0, -4.37114e-08, 1, -1, 4.37114e-08, 1.91069e-15, 0, 0, 0)
transform = Transform3D(-4.37114e-08, -1, -2.98023e-08, 7.10543e-15, -2.98023e-08, 1, -1, 4.37114e-08, 1.06581e-14, -0.226588, -0.00680065, 0)
mesh = SubResource("QuadMesh_p8nf8")
skeleton = NodePath("../..")
@ -1061,10 +1061,10 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)
shape = SubResource("BoxShape3D_6x7pa")
[node name="StaticBody3D6" type="StaticBody3D" parent="."]
transform = Transform3D(-0.933524, -0.358515, -8.74228e-08, -0.358515, 0.933524, 0, 8.16113e-08, 3.13423e-08, -1, -12.735, 2.061, -7.5)
transform = Transform3D(-0.933524, -0.358515, -8.74228e-08, -0.358515, 0.933524, 0, 8.16113e-08, 3.13423e-08, -1, -12.9597, 1.97541, -7.5)
[node name="MeshInstance3D" type="MeshInstance3D" parent="StaticBody3D6"]
transform = Transform3D(-4.37114e-08, -1, -4.37114e-08, 0, -4.37114e-08, 1, -1, 4.37114e-08, 1.91069e-15, 0, 0, 0)
transform = Transform3D(-4.37114e-08, -1, -2.98023e-08, 7.10543e-15, -2.98023e-08, 1, -1, 4.37114e-08, 1.06581e-14, -0.226588, -0.0067997, 0)
mesh = SubResource("QuadMesh_p8nf8")
skeleton = NodePath("../..")

File diff suppressed because one or more lines are too long

View File

@ -8,7 +8,7 @@ custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path="../../tower_defense/Linux/output.x86_64"
export_path="../../tower_defense/Linux/DeckedOutDefense"
encryption_include_filters=""
encryption_exclude_filters=""
encrypt_pck=false
@ -48,7 +48,7 @@ custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path="../../tower_defense/Windows/output.exe"
export_path="../../tower_defense/Windows/DeckedOutDefense.exe"
encryption_include_filters=""
encryption_exclude_filters=""
encrypt_pck=false

View File

@ -10,7 +10,7 @@ config_version=5
[application]
config/name="Multiplayer Tower Defense"
config/name="Decked Out Defense"
run/main_scene="res://Scenes/Menus/MainMenu/main_menu.tscn"
config/features=PackedStringArray("4.2", "Forward Plus")
config/icon="res://Assets/Textures/icon.svg"