extends Node2D const ADD_STEP_OUTLINESIZE=30 const MAX_OUTLINESIZE=60 var animate_outline_on_press=true const ADD_STEP_SPRITE_SCALE=0.2 const MAX_SPRITE_SCALE=1.5 var animate_sprite_on_press=true @onready var playerlist_particles_2d: CPUParticles2D = $MarginContainer/PlayerlistParticles2D # Called when the node enters the scene tree for the first time. func _ready() -> void: if ConfigFileHandler.get_video_setting("playerlist_sprite")==false: $MarginContainer/VBoxContainer_Spritelist.visible=false if ConfigFileHandler.get_video_setting("playerlist_key")==false: $MarginContainer/VBoxContainer_Playerlist.visible=false animate_outline_on_press=ConfigFileHandler.get_video_setting("animate_outline_on_press") animate_sprite_on_press=ConfigFileHandler.get_video_setting("animate_sprite_on_press") # Called every frame. 'delta' is the elapsed time since the previous frame. func updateCountdown(t:int): if (t<0): $countdown.visible=false else: $countdown.visible=true $countdown.text=str(t) func update_playerlist(players:Array[Gamestate.Player],flashplayer_keycode=-1,effect="blink"): var Playerlabels=$MarginContainer/VBoxContainer_Playerlist.get_children() var i=0 for label in Playerlabels: var PlayerSprite=$MarginContainer/VBoxContainer_Spritelist.get_child(i) #get corresponding car sprite if i void: var Playerlabels=$MarginContainer/VBoxContainer_Playerlist.get_children() var i=0 for label in Playerlabels: var PlayerSprite=$MarginContainer/VBoxContainer_Spritelist.get_child(i) #get corresponding car sprite var outlinesize=max(0,label.get_theme_constant("outline_size")-2*delta) label.add_theme_constant_override("outline_size",outlinesize) var spritescale=min(max(1.0,PlayerSprite.scale.x-1*delta),MAX_SPRITE_SCALE) #enlarge outline a bit PlayerSprite.scale=Vector2(spritescale,spritescale) i+=1 if Gamestate.automatic_map_change_in>0: $MapChangeInfo.text="Mapchange in "+str(Gamestate.automatic_map_change_in) else: $MapChangeInfo.text=""