From fe9f682818413e7133137b4dd0114dc25b126de3 Mon Sep 17 00:00:00 2001 From: Haze Weathers Date: Mon, 25 Dec 2023 15:11:59 -0500 Subject: [PATCH] implement splash screens --- graphics/hud/godot_splash.png | Bin 0 -> 5378 bytes graphics/hud/godot_splash.png.import | 35 +++++++++++++++++++++++ graphics/hud/team_sg_splash.png | Bin 0 -> 1782 bytes graphics/hud/team_sg_splash.png.import | 35 +++++++++++++++++++++++ menus/splash_screen.gd | 38 +++++++++++++++++++++++++ menus/splash_screen.tscn | 29 +++++++++++++++++++ menus/title_screen.gd | 1 + project.godot | 2 +- 8 files changed, 139 insertions(+), 1 deletion(-) create mode 100644 graphics/hud/godot_splash.png create mode 100644 graphics/hud/godot_splash.png.import create mode 100644 graphics/hud/team_sg_splash.png create mode 100644 graphics/hud/team_sg_splash.png.import create mode 100644 menus/splash_screen.gd create mode 100644 menus/splash_screen.tscn diff --git a/graphics/hud/godot_splash.png b/graphics/hud/godot_splash.png new file mode 100644 index 0000000000000000000000000000000000000000..963a9dfa06cca60e3e2777d358299e75c93370fc GIT binary patch literal 5378 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 E2UJ>fHvj+t literal 0 HcmV?d00001 diff --git a/graphics/hud/godot_splash.png.import b/graphics/hud/godot_splash.png.import new file mode 100644 index 0000000..4d61550 --- /dev/null +++ b/graphics/hud/godot_splash.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/godot_splash.png-5d8819d8c94270b9158234d3ebb5bf62.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://graphics/hud/godot_splash.png" +dest_files=[ "res://.import/godot_splash.png-5d8819d8c94270b9158234d3ebb5bf62.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/graphics/hud/team_sg_splash.png b/graphics/hud/team_sg_splash.png new file mode 100644 index 0000000000000000000000000000000000000000..5a5072d130331586112644be2fb1f323b189fe26 GIT binary patch literal 1782 zcmb_cSyWS36umFg3y_4tDMTPttfmS`L|S7a1``StMFz{DAXuuXh=GV<6dqa`)Ka@z zN?R#Xm5QPQrI7$af)E1~Bo;ABK#?d=kN|>)AtrsU)sKF+J!{=__u3!l+`G?SC(qx{ zi)>0W1pttJy!n9uKqv$!;^aXd&)crGN3%$w@Z~r``RJoQ0 zDrtgqvg2e&Wr1JkqMW?at#G+*$La6Gr@ruUVxfBd&7W13ND@b6R3IQEWiN^aNR%z=j1_%NATE#CEcR}SQbShVWQ9~MC2K) z1Eks>I%K~OAz$G8SS7jLDG3*nk?Vh)&TDeju5BqcLtB`c^L()}vuj^2zH%^io{8B0 zQ+}CuIZK%6gMb z=PJrGzx3EK_vCj))+5MemV#pgn%(U=aqQaZhY7;qDOL16Mc9IC?;tZOMs57ICn?T8 z2pjc!8Q4TKSUpuM>tQaO1t6+^QzVYjwq2H=o#})T*9_k>Vr2ODh!KDC1d}}yo3MqA zlf7Qq2Mf<5*a+Pf%I(3N~VY{eT)ur)()I0 z5Me!QUahbP;hZntPja|9hDXjT_(U9%4Sy7)wq2OD2%2wXHc=O_azb!kN#FViiw zJ;fC91+-#9=zmbu4eEEZyx5@bT=kka?x7;kw}0ObYr{EBDS^+yA!a$!mMM}Hb>o@4 z!m`4Ou!Z@t3vp!KF30?Qr==Kfv<|xm&R`X#HPeL4+&8RZ)}P)pp*I6Q#t~j{&m-tD zZB`kb%{lgcWc8BM4M(Xdvv}l?YJ}Mw8C~+7f@1w#sj9^d1gl@CFm_p=D1S|E}>_KZaOAWC!z@JoT8t%RmF_8n!X-ck0x$n^z3+8G`# zN8YP=oOXPqJ5Q;Rza*wgNt384zI+V*_kB~<2%YyxxOCF>_836J$J390b8FOzzW^Fk B%xwSw literal 0 HcmV?d00001 diff --git a/graphics/hud/team_sg_splash.png.import b/graphics/hud/team_sg_splash.png.import new file mode 100644 index 0000000..ed6e833 --- /dev/null +++ b/graphics/hud/team_sg_splash.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/team_sg_splash.png-23db1fe9018a61fe815d83158426f094.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://graphics/hud/team_sg_splash.png" +dest_files=[ "res://.import/team_sg_splash.png-23db1fe9018a61fe815d83158426f094.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/menus/splash_screen.gd b/menus/splash_screen.gd new file mode 100644 index 0000000..afd5c06 --- /dev/null +++ b/menus/splash_screen.gd @@ -0,0 +1,38 @@ +extends Control + +export var next_screen: PackedScene + +var skipping: bool = false + +onready var team_sg: TextureRect = $TeamSG +onready var godot: TextureRect = $Godot + +func _ready() -> void: + yield(get_tree().create_timer(0.5), "timeout") + Fade.fade_out(0.4) + yield(Fade, "fade_finished") + team_sg.visible = true + Fade.fade_in(0.4) + yield(Fade, "fade_finished") + yield(get_tree().create_timer(1.0), "timeout") + Fade.fade_out(0.4) + yield(Fade, "fade_finished") + yield(get_tree().create_timer(0.5), "timeout") + godot.visible = true + Fade.fade_in(0.4) + yield(Fade, "fade_finished") + yield(get_tree().create_timer(1.0), "timeout") + Fade.fade_out(0.4) + yield(Fade, "fade_finished") + _next_screen() + +func _input(event: InputEvent) -> void: + if Input.is_action_just_pressed("ui_accept"): + skipping = true + Fade.fade_out(0.4) + yield(Fade, "fade_finished") + _next_screen() + free() + +func _next_screen() -> void: + SceneManager.current_scene = next_screen.instance() diff --git a/menus/splash_screen.tscn b/menus/splash_screen.tscn new file mode 100644 index 0000000..1f632ec --- /dev/null +++ b/menus/splash_screen.tscn @@ -0,0 +1,29 @@ +[gd_scene load_steps=5 format=2] + +[ext_resource path="res://graphics/hud/team_sg_splash.png" type="Texture" id=1] +[ext_resource path="res://menus/splash_screen.gd" type="Script" id=2] +[ext_resource path="res://graphics/hud/godot_splash.png" type="Texture" id=3] +[ext_resource path="res://menus/title_screen.tscn" type="PackedScene" id=4] + +[node name="SplashScreen" type="Control"] +anchor_right = 1.0 +anchor_bottom = 1.0 +script = ExtResource( 2 ) +next_screen = ExtResource( 4 ) + +[node name="ColorRect" type="ColorRect" parent="."] +anchor_right = 1.0 +anchor_bottom = 1.0 +color = Color( 0, 0, 0, 1 ) + +[node name="TeamSG" type="TextureRect" parent="."] +visible = false +anchor_right = 1.0 +anchor_bottom = 1.0 +texture = ExtResource( 1 ) + +[node name="Godot" type="TextureRect" parent="."] +visible = false +anchor_right = 1.0 +anchor_bottom = 1.0 +texture = ExtResource( 3 ) diff --git a/menus/title_screen.gd b/menus/title_screen.gd index 9546d2a..cd767b0 100644 --- a/menus/title_screen.gd +++ b/menus/title_screen.gd @@ -9,6 +9,7 @@ func _input(event): $AnimationPlayer.play("activate") func _ready(): + Fade.fade_in(0.4) var time = OS.get_time() if time.hour >= 18 or time.hour < 6: $Night.visible = true diff --git a/project.godot b/project.godot index 3ebbefc..0e51b2c 100644 --- a/project.godot +++ b/project.godot @@ -69,7 +69,7 @@ _global_script_class_icons={ [application] config/name="Revolution 2083" -run/main_scene="res://menus/title_screen.tscn" +run/main_scene="res://menus/splash_screen.tscn" config/use_custom_user_dir=true config/custom_user_dir_name="heromark2" config/icon="res://icon.png"