Update SplashScreen scene
This commit is contained in:
parent
d717e73fa8
commit
ef78920014
BIN
assets/textures/splash2.png
Normal file
BIN
assets/textures/splash2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.5 KiB |
40
assets/textures/splash2.png.import
Normal file
40
assets/textures/splash2.png.import
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dhovl8qbhk1xe"
|
||||||
|
path="res://.godot/imported/splash2.png-975b5ae55910322c5b4e9c302583fe54.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/textures/splash2.png"
|
||||||
|
dest_files=["res://.godot/imported/splash2.png-975b5ae55910322c5b4e9c302583fe54.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
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/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
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
|
||||||
|
|
@ -1,33 +1,38 @@
|
||||||
extends Control
|
extends Control
|
||||||
|
|
||||||
@onready var animated_display: TextureRect = %AnimatedDisplay
|
@export var load_scene : PackedScene
|
||||||
@onready var transition_rect: ColorRect = %TransitionRect
|
|
||||||
|
|
||||||
@export var main_menu_scene_path : String = "res://game/ui/main_menu/main_menu.tscn"
|
|
||||||
@export var splash_duration : float = 3.0
|
|
||||||
@export var allow_skip : bool = true
|
@export var allow_skip : bool = true
|
||||||
|
@export var splash_screen_container: Node
|
||||||
|
|
||||||
const SCREEN_FADE_DURATION := 0.6
|
@export_group("Timings")
|
||||||
|
@export var in_time : float = 0.5
|
||||||
|
@export var fade_in_time : float = 1.5
|
||||||
|
@export var pause_time : float = 1.5
|
||||||
|
@export var fade_out_time : float = 1.5
|
||||||
|
@export var out_time : float = 0.5
|
||||||
|
|
||||||
var is_transitioning : bool = false
|
var splash_screens = []
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
await get_tree().create_timer(splash_duration).timeout
|
get_screens()
|
||||||
go_to_main_menu()
|
fade()
|
||||||
|
|
||||||
func _unhandled_input(event: InputEvent) -> void:
|
func _unhandled_input(event: InputEvent) -> void:
|
||||||
# permet de passer le splash en appuyant sur une touche ou en cliquant
|
if allow_skip and event.is_pressed():
|
||||||
if allow_skip and !is_transitioning and event.is_pressed() and (event is InputEventKey or event is InputEventMouseButton):
|
get_tree().change_scene_to_packed(load_scene)
|
||||||
go_to_main_menu()
|
|
||||||
|
|
||||||
func go_to_main_menu() -> void:
|
func get_screens() -> void:
|
||||||
if is_transitioning: return
|
splash_screens = splash_screen_container.get_children()
|
||||||
is_transitioning = true
|
for screen in splash_screens:
|
||||||
|
screen.modulate.a = 0.0
|
||||||
|
|
||||||
transition_rect.visible = true
|
func fade() -> void:
|
||||||
transition_rect.modulate.a = 0.0
|
for screen in splash_screens:
|
||||||
var tween := create_tween()
|
var tween = self.create_tween()
|
||||||
tween.tween_property(transition_rect, "modulate:a", 1.0, SCREEN_FADE_DURATION)
|
tween.tween_interval(in_time)
|
||||||
await tween.finished
|
tween.tween_property(screen, "modulate:a", 1.0, fade_in_time)
|
||||||
|
tween.tween_interval(pause_time)
|
||||||
get_tree().change_scene_to_file(main_menu_scene_path)
|
tween.tween_property(screen, "modulate:a", 0.0, fade_out_time)
|
||||||
|
tween.tween_interval(out_time)
|
||||||
|
await tween.finished
|
||||||
|
get_tree().change_scene_to_packed(load_scene)
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,10 @@
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://ddxoruhyuxesc" path="res://game/ui/splash_screen/splash_screen.gd" id="1_hsxvm"]
|
[ext_resource type="Script" uid="uid://ddxoruhyuxesc" path="res://game/ui/splash_screen/splash_screen.gd" id="1_hsxvm"]
|
||||||
[ext_resource type="Texture2D" uid="uid://c28nuhy3im7y4" path="res://assets/textures/splash.png" id="2_4gp4q"]
|
[ext_resource type="Texture2D" uid="uid://c28nuhy3im7y4" path="res://assets/textures/splash.png" id="2_4gp4q"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bluq6da7tku3d" path="res://game/ui/main_menu/main_menu.tscn" id="2_cob3s"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dhovl8qbhk1xe" path="res://assets/textures/splash2.png" id="4_cob3s"]
|
||||||
|
|
||||||
[node name="SplashScreen" type="Control" unique_id=300161700]
|
[node name="SplashScreen" type="Control" unique_id=300161700 node_paths=PackedStringArray("splash_screen_container")]
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
|
|
@ -11,25 +13,37 @@ anchor_bottom = 1.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
script = ExtResource("1_hsxvm")
|
script = ExtResource("1_hsxvm")
|
||||||
|
load_scene = ExtResource("2_cob3s")
|
||||||
|
splash_screen_container = NodePath("SplashScreenContainer")
|
||||||
|
fade_in_time = 0.5
|
||||||
|
pause_time = 0.5
|
||||||
|
fade_out_time = 0.5
|
||||||
|
|
||||||
[node name="AnimatedDisplay" type="TextureRect" parent="." unique_id=1433597692]
|
[node name="ColorRect" type="ColorRect" parent="." unique_id=140381773]
|
||||||
unique_name_in_owner = true
|
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
color = Color(0.14117648, 0.14117648, 0.14117648, 1)
|
||||||
|
|
||||||
|
[node name="SplashScreenContainer" type="MarginContainer" parent="." unique_id=71933636]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="Screen1" type="TextureRect" parent="SplashScreenContainer" unique_id=1430161342]
|
||||||
|
layout_mode = 2
|
||||||
texture = ExtResource("2_4gp4q")
|
texture = ExtResource("2_4gp4q")
|
||||||
expand_mode = 1
|
expand_mode = 1
|
||||||
stretch_mode = 6
|
stretch_mode = 6
|
||||||
|
|
||||||
[node name="TransitionRect" type="ColorRect" parent="." unique_id=33546617]
|
[node name="Screen2" type="TextureRect" parent="SplashScreenContainer" unique_id=708644296]
|
||||||
unique_name_in_owner = true
|
layout_mode = 2
|
||||||
layout_mode = 1
|
texture = ExtResource("4_cob3s")
|
||||||
anchors_preset = 15
|
expand_mode = 1
|
||||||
anchor_right = 1.0
|
stretch_mode = 6
|
||||||
anchor_bottom = 1.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
color = Color(1, 1, 1, 0)
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue