some ui improvements
This commit is contained in:
@ -19,6 +19,12 @@ var enemy_names = []
|
||||
@export var weapon_energy_bar : TextureProgressBar
|
||||
@export var offhand_energy_bar : TextureProgressBar
|
||||
@export var pickup_notif_scene : PackedScene
|
||||
@export var wave_start_label : Label
|
||||
|
||||
var wave_start_label_shrinking := false
|
||||
var wave_start_label_growing := false
|
||||
var wave_start_label_acceleration := 200.0
|
||||
var wave_start_label_speed := 0.0
|
||||
|
||||
|
||||
func set_energy_visible(value):
|
||||
@ -29,8 +35,39 @@ func set_offhand_energy_visible(value):
|
||||
offhand_energy_bar.set_visible(value)
|
||||
|
||||
|
||||
func _process(_delta: float) -> 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"
|
||||
if wave_start_label_growing:
|
||||
wave_start_label.set_visible(true)
|
||||
wave_start_label_speed += wave_start_label_acceleration * delta
|
||||
wave_start_label.offset_left -= wave_start_label_speed * delta
|
||||
wave_start_label.offset_right += wave_start_label_speed * delta
|
||||
if wave_start_label.offset_left <= -300:
|
||||
wave_start_label.offset_left = -300
|
||||
wave_start_label.offset_right = 300
|
||||
wave_start_label_growing = false
|
||||
wave_start_label_speed = 0.0
|
||||
if wave_start_label_shrinking:
|
||||
wave_start_label_speed += wave_start_label_acceleration * delta
|
||||
wave_start_label.offset_left += wave_start_label_speed * delta
|
||||
wave_start_label.offset_right -= wave_start_label_speed * delta
|
||||
if wave_start_label.offset_left >= 0:
|
||||
wave_start_label.set_visible(false)
|
||||
wave_start_label.offset_left = 0
|
||||
wave_start_label.offset_right = 0
|
||||
wave_start_label_shrinking = false
|
||||
wave_start_label_speed = 0.0
|
||||
|
||||
|
||||
func grow_wave_start_label():
|
||||
wave_start_label_growing = true
|
||||
wave_start_label_shrinking = false
|
||||
|
||||
|
||||
func shrink_wave_start_label():
|
||||
wave_start_label_shrinking = true
|
||||
wave_start_label_growing = false
|
||||
|
||||
|
||||
func set_hover_text(text):
|
||||
|
@ -31,7 +31,7 @@ func _ready() -> void:
|
||||
player_keymap.apply()
|
||||
|
||||
characters.append(preload("res://PCs/Red/red.tres"))
|
||||
characters.append(preload("res://PCs/Green/green.tres"))
|
||||
#characters.append(preload("res://PCs/Green/green.tres"))
|
||||
characters.append(preload("res://PCs/Blue/blue.tres"))
|
||||
|
||||
#Common
|
||||
|
@ -12,7 +12,7 @@ var enet_peer = ENetMultiplayerPeer.new()
|
||||
|
||||
@export var server_form : ServerForm
|
||||
@export var scoreboard : Scoreboard
|
||||
@export var loadout_editor : LoadoutEditor
|
||||
@export var loadout_editor : HeroSelector
|
||||
@export var chatbox : Chatbox
|
||||
var alert_popup_scene = preload("res://Scenes/Menus/alert_popup.tscn")
|
||||
var connected_players_profiles = {}
|
||||
@ -68,8 +68,8 @@ func setup_game(peer_id):
|
||||
setup_the_ui()
|
||||
chatbox.username = Data.player_profile.display_name
|
||||
Data.player_profile.display_name_changed.connect(chatbox.change_username)
|
||||
loadout_editor.character_selected.connect(Data.player_profile.set_preferred_class)
|
||||
loadout_editor.character_selected.connect(edit_player_profile)
|
||||
loadout_editor.hero_selected.connect(Data.player_profile.set_preferred_class)
|
||||
loadout_editor.hero_selected.connect(edit_player_profile)
|
||||
connected_players_profiles[peer_id] = Data.player_profile
|
||||
player_connected.emit(peer_id, Data.player_profile)
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
extends Control
|
||||
|
||||
@export var scoreboard : Scoreboard
|
||||
@export var loadout_editor : LoadoutEditor
|
||||
@export var loadout_editor : HeroSelector
|
||||
@export var chatbox : Chatbox
|
||||
var connected_players_profiles = {}
|
||||
|
||||
@ -23,8 +23,8 @@ func setup_game():
|
||||
setup_the_ui()
|
||||
chatbox.username = Data.player_profile.display_name
|
||||
Data.player_profile.display_name_changed.connect(chatbox.change_username)
|
||||
loadout_editor.character_selected.connect(Data.player_profile.set_preferred_class)
|
||||
loadout_editor.character_selected.connect(edit_player_profile)
|
||||
loadout_editor.hero_selected.connect(Data.player_profile.set_preferred_class)
|
||||
loadout_editor.hero_selected.connect(edit_player_profile)
|
||||
connected_players_profiles[1] = Data.player_profile
|
||||
|
||||
|
||||
|
@ -5,6 +5,10 @@ class_name TowerBase
|
||||
@export var block : Node3D
|
||||
@export var collider : CollisionShape3D
|
||||
@export var minimap_icon : Sprite3D
|
||||
@export var north_icon : Sprite3D
|
||||
@export var south_icon : Sprite3D
|
||||
@export var east_icon : Sprite3D
|
||||
@export var west_icon : Sprite3D
|
||||
@export var north_mesh : CSGBox3D
|
||||
@export var south_mesh : CSGBox3D
|
||||
@export var east_mesh : CSGBox3D
|
||||
@ -73,6 +77,10 @@ func networked_spawn_tower(caller_id : int):
|
||||
tower.owner_id = caller_id
|
||||
tower.position = Vector3(0, 1.2, 0)
|
||||
minimap_icon.modulate = Color.RED
|
||||
north_icon.modulate = Color.RED
|
||||
south_icon.modulate = Color.RED
|
||||
west_icon.modulate = Color.RED
|
||||
east_icon.modulate = Color.RED
|
||||
add_child(tower)
|
||||
|
||||
|
||||
@ -81,3 +89,7 @@ func networked_remove_tower():
|
||||
tower.queue_free()
|
||||
tower = null
|
||||
minimap_icon.modulate = Color.GREEN
|
||||
north_icon.modulate = Color.GREEN
|
||||
south_icon.modulate = Color.GREEN
|
||||
west_icon.modulate = Color.GREEN
|
||||
east_icon.modulate = Color.GREEN
|
||||
|
Reference in New Issue
Block a user