Files
net-gunner/scenes/title_screen.tscn

458 lines
14 KiB
Plaintext

[gd_scene load_steps=30 format=3 uid="uid://dd40q2mv84pmc"]
[ext_resource type="Script" uid="uid://dhu2psbhh1rl8" path="res://scripts/title_screen.gd" id="1_e54dn"]
[ext_resource type="Shader" uid="uid://b2g6yddun2l6e" path="res://visuals/shaders/noise.gdshader" id="2_3yumr"]
[ext_resource type="Texture2D" uid="uid://dtg4wpwey78lo" path="res://visuals/images/title.png" id="4_cs5ya"]
[ext_resource type="AudioStream" uid="uid://bl08d5aj1f7nf" path="res://audio/old-music/15 - Opening.mp3" id="4_mykxm"]
[ext_resource type="Texture2D" uid="uid://c0eww4swdkxcg" path="res://visuals/images/title target.png" id="4_tklts"]
[ext_resource type="Material" uid="uid://c88aptbv2lgbu" path="res://visuals/materials/tv_static_image.tres" id="5_ib7db"]
[ext_resource type="Texture2D" uid="uid://c4r0yuw28xqrc" path="res://visuals/textures/explosive_noise.tres" id="5_p07av"]
[ext_resource type="Texture2D" uid="uid://cllmt3pn6veff" path="res://visuals/images/title backsplash.png" id="5_u26n3"]
[ext_resource type="AudioStream" uid="uid://cwmfd8ov3lj1h" path="res://audio/sounds/menu select.wav" id="6_3yumr"]
[ext_resource type="Texture2D" uid="uid://dkef04mo56lma" path="res://visuals/images/title glow.png" id="6_ib7db"]
[ext_resource type="AudioStream" uid="uid://doelc8yt5snc2" path="res://audio/sounds/Keypad A.wav" id="7_cs5ya"]
[ext_resource type="Texture2D" uid="uid://bjwelo48s6aoh" path="res://visuals/images/title frame.png" id="11_u26n3"]
[ext_resource type="Material" uid="uid://cysw8uwdmtv1v" path="res://visuals/materials/lowres-text.tres" id="12_ib7db"]
[ext_resource type="Shader" uid="uid://b202rwkcmmg56" path="res://visuals/shaders/matrix.gdshader" id="13_4qe4i"]
[ext_resource type="Texture2D" uid="uid://dpfq1o38kl88c" path="res://visuals/textures/glyphs.png" id="14_p07av"]
[ext_resource type="Texture2D" uid="uid://i0esgu8xi4dp" path="res://visuals/textures/small_noise.tres" id="15_khjys"]
[ext_resource type="Texture2D" uid="uid://dri0a20l6kpbj" path="res://visuals/images/icon.svg" id="16_174rq"]
[sub_resource type="Gradient" id="Gradient_cs5ya"]
offsets = PackedFloat32Array(0)
colors = PackedColorArray(0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_ig5kc"]
gradient = SubResource("Gradient_cs5ya")
width = 1
[sub_resource type="ShaderMaterial" id="ShaderMaterial_tpml5"]
shader = ExtResource("2_3yumr")
shader_parameter/granularity = 20.0
shader_parameter/opacity_limit = 0.0
[sub_resource type="Shader" id="Shader_p07av"]
code = "shader_type canvas_item;
uniform sampler2D chars;
uniform sampler2D noise_tex;
uniform float offset;
uniform float seed;
float random (vec2 uv) {
return fract(sin(dot(uv.xy,
vec2(12.9898,78.233))) * 43758.5453123);
}
void fragment() {
// Random character
vec2 uv = fract(UV * 32.0); // loop uv 32 times for the characters (as the noise resolution is 32x32)
//vec2 uv = vec2(0,0);
float noise = texture(noise_tex, vec2(round(UV.x * 26.0 + 0.5) / 26.0, 0)).g;
noise = round(noise * 26.0) / 26.0; // make sure the color value are snapped by 0.1 (so its only 0.0, 0.1, 0.2, and so on) for perfect offset
//uv.x = (uv.x / 26.0); // offset
//uv.x = UV.x;
//uv.x += noise; // offset every character by the noise value
uv.x = fract(UV.x + noise);
//uv.x += round(TIME * 0.5 * 26.0)/26.0; // animate characters with TIME, then snapped by 0.1 so it doesnt slide. 0.5 is the speed, you might want to change that
// distortion
float rain = UV.y; // this is a vertical gradient
float distortion = texture(noise_tex, (UV + vec2(0,offset)) / vec2(1.0, 64.0)).g; // this will be used for distortion, using previous noise but only horizontal
distortion = round(distortion * 26.0) / 26.0; // for precision reason, you need to round your distortion too, otherwise some character wouldnt be fully shown
rain -= round((TIME + offset) * 0.2 * 32.0) / 32.0; // the 'rain' shouldn't move smoothly right? also, 0.2 is the speed
rain += distortion; // distort this gradient, turning it into a rain
rain = fract(rain); // loop the rain
rain = round(rain * 128.0) / 128.0; // pixelate the rain. Rounding by 32.0 or 8.0 is optional
rain = pow(rain, 5.0); // this is not necessary, i just think that it looks good
rain *= 2.0; // this is also not important, just making the characters brighter
COLOR.rgb = texture(chars, vec2(uv.x, uv.y)).rgb * rain * vec3(0.0, 1.0, 0.0); // finally multiply them together then multiply with green for the color
COLOR.a = rain;
}
"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_khjys"]
resource_local_to_scene = true
shader = SubResource("Shader_p07av")
shader_parameter/chars = ExtResource("14_p07av")
shader_parameter/noise_tex = ExtResource("5_p07av")
shader_parameter/offset = 12.625
shader_parameter/seed = 0.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_174rq"]
resource_local_to_scene = true
shader = SubResource("Shader_p07av")
shader_parameter/chars = ExtResource("14_p07av")
shader_parameter/noise_tex = ExtResource("5_p07av")
shader_parameter/offset = 18.91
shader_parameter/seed = 0.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_neciy"]
resource_local_to_scene = true
shader = SubResource("Shader_p07av")
shader_parameter/chars = ExtResource("14_p07av")
shader_parameter/noise_tex = ExtResource("5_p07av")
shader_parameter/offset = 21.135
shader_parameter/seed = 0.0
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_ib7db"]
blend_mode = 1
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_frs5l"]
blend_mode = 1
light_mode = 1
[sub_resource type="Shader" id="Shader_u26n3"]
code = "shader_type canvas_item;
uniform sampler2D noise;
varying vec4 modulate;
uniform float threshold : hint_range(0,0.5)= .5;
uniform float strength : hint_range(-0.5,0.5) = 0;
float random (vec2 uv) {
return fract(sin(dot(uv.xy,
vec2(12.9898,78.233))) * 43758.5453123);
}
void vertex() {
// Called for every vertex the material is visible on.
modulate = COLOR;
}
void fragment() {
// Called for every pixel the material is visible on.
vec2 uv = UV;
vec2 rv = vec2(mod(TIME / 3.5, 1.0), uv.y);
vec4 val = texture(noise, rv);
uv.x += .002 * (val.x - 0.5) * 2.0;
float extrema = abs(val.x - 0.5);
//if(extrema > threshold){
//uv.x += sign(val.x - 0.5) * mix(0,strength, (extrema) / (.5 - threshold));
//}
if(extrema > threshold){
uv.x -= strength * (val.x - 0.5) * 2.0;
}
vec4 col = texture(TEXTURE, uv) * modulate;
COLOR = col; //* COLOR;
//COLOR = val;
}
//void light() {
// // Called for every pixel for every light affecting the CanvasItem.
// // Uncomment to replace the default light processing function with this one.
//}
"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_mynnq"]
resource_local_to_scene = true
shader = SubResource("Shader_u26n3")
shader_parameter/threshold = 0.5
shader_parameter/strength = 0.10300002864250002
[sub_resource type="ShaderMaterial" id="ShaderMaterial_lrxh4"]
shader = ExtResource("13_4qe4i")
shader_parameter/chars = ExtResource("14_p07av")
shader_parameter/noise_tex = ExtResource("15_khjys")
shader_parameter/offset = 0.0
[node name="Control" type="Control" groups=["scenes"]]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_e54dn")
[node name="TextureRect2" type="TextureRect" parent="."]
modulate = Color(1, 1, 1, 0.7921569)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_ig5kc")
expand_mode = 1
[node name="TextureRect" type="TextureRect" parent="."]
visible = false
material = SubResource("ShaderMaterial_tpml5")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_ig5kc")
expand_mode = 1
[node name="TextureRect8" type="TextureRect" parent="."]
texture_repeat = 2
material = SubResource("ShaderMaterial_khjys")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_ig5kc")
expand_mode = 1
[node name="TextureRect11" type="TextureRect" parent="."]
modulate = Color(1, 1, 1, 0.5568628)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_ig5kc")
expand_mode = 1
[node name="TextureRect9" type="TextureRect" parent="."]
texture_repeat = 2
material = SubResource("ShaderMaterial_174rq")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_ig5kc")
expand_mode = 1
[node name="TextureRect12" type="TextureRect" parent="."]
modulate = Color(1, 1, 1, 0.3254902)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_ig5kc")
expand_mode = 1
[node name="TextureRect10" type="TextureRect" parent="."]
modulate = Color(1, 1, 1, 0.09411765)
texture_repeat = 2
material = SubResource("ShaderMaterial_neciy")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_ig5kc")
expand_mode = 1
[node name="Target" type="TextureRect" parent="."]
unique_name_in_owner = true
texture_filter = 4
material = SubResource("CanvasItemMaterial_ib7db")
layout_mode = 0
offset_left = -41.5
offset_top = -65.0
offset_right = 1749.7963
offset_bottom = 1073.0
pivot_offset = Vector2(595, 585)
texture = ExtResource("4_tklts")
[node name="TextureRect5" type="TextureRect" parent="."]
modulate = Color(0.23392546, 0.23392546, 0.2339254, 0.59607846)
texture_filter = 2
texture_repeat = 2
material = ExtResource("5_ib7db")
layout_mode = 0
offset_left = -18.5
offset_top = -65.0
offset_right = 1772.7963
offset_bottom = 1073.0
texture = ExtResource("5_u26n3")
[node name="TextureRect3" type="TextureRect" parent="."]
texture_filter = 4
material = SubResource("CanvasItemMaterial_frs5l")
layout_mode = 0
offset_left = -45.5
offset_top = -65.0
offset_right = 1745.7963
offset_bottom = 1073.0
texture = ExtResource("6_ib7db")
[node name="TextureRect7" type="TextureRect" parent="."]
texture_filter = 4
material = SubResource("ShaderMaterial_mynnq")
layout_mode = 0
offset_left = -41.5
offset_top = -65.0
offset_right = 1749.7963
offset_bottom = 1073.0
texture = ExtResource("4_cs5ya")
[node name="Panel2" type="Panel" parent="."]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -192.0
offset_top = -311.0
offset_right = 208.0
offset_bottom = -161.0
grow_horizontal = 2
grow_vertical = 0
[node name="START" type="Label" parent="Panel2"]
unique_name_in_owner = true
modulate = Color(0.08549138, 0.3231256, 1, 1)
material = ExtResource("12_ib7db")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 60
text = "PUSH START"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Menu" type="Control" parent="Panel2"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="STORY" type="Label" parent="Panel2/Menu"]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 80
text = "STORY"
horizontal_alignment = 1
vertical_alignment = 1
[node name="VS-COM" type="Label" parent="Panel2/Menu"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 80
text = "VS COM"
horizontal_alignment = 1
vertical_alignment = 1
[node name="VS-MAN" type="Label" parent="Panel2/Menu"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 80
text = "VS MAN"
horizontal_alignment = 1
vertical_alignment = 1
[node name="RECORD" type="Label" parent="Panel2/Menu"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 80
text = "RECORD"
horizontal_alignment = 1
vertical_alignment = 1
[node name="OPTION" type="Label" parent="Panel2/Menu"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 80
text = "OPTION"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Panel" type="Panel" parent="."]
visible = false
layout_mode = 0
offset_right = 1152.0
offset_bottom = 648.0
[node name="Music" type="AudioStreamPlayer" parent="."]
stream = ExtResource("4_mykxm")
volume_db = -18.606
autoplay = true
bus = &"Music"
[node name="SelectSound" type="AudioStreamPlayer" parent="."]
unique_name_in_owner = true
stream = ExtResource("6_3yumr")
bus = &"UI"
[node name="SwitchSound" type="AudioStreamPlayer" parent="."]
unique_name_in_owner = true
stream = ExtResource("7_cs5ya")
bus = &"UI"
[node name="TextureRect6" type="TextureRect" parent="."]
layout_mode = 0
offset_right = 1920.0
offset_bottom = 1080.0
texture = ExtResource("11_u26n3")
[node name="Label2" type="Label" parent="."]
modulate = Color(0, 1, 0, 1)
texture_repeat = 2
material = ExtResource("12_ib7db")
layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -202.25
offset_top = 34.0
offset_right = 202.25
offset_bottom = 89.0
grow_horizontal = 2
theme_override_font_sizes/font_size = 40
text = "TRAP & GUN ACTION"
clip_text = true
text_overrun_behavior = 1
[node name="TextureRect4" type="TextureRect" parent="."]
visible = false
material = SubResource("ShaderMaterial_lrxh4")
layout_mode = 0
offset_right = 1920.0
offset_bottom = 1080.0
texture = ExtResource("16_174rq")