[gd_scene 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="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" unique_id=265897606 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="." unique_id=1172032881] 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="." unique_id=1201431075] 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="." unique_id=1614450056] 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="." unique_id=2101346114] 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="." unique_id=632192186] 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="." unique_id=438194328] 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="." unique_id=449471159] 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_id=475604841] 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="." unique_id=2006408689] 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="." unique_id=125033678] modulate = Color(1, 1, 1, 0.45490196) texture_filter = 4 material = SubResource("CanvasItemMaterial_frs5l") layout_mode = 0 offset_left = -21.5 offset_top = -39.0 offset_right = 1769.7963 offset_bottom = 1099.0 texture = ExtResource("5_u26n3") [node name="TextureRect7" type="TextureRect" parent="." unique_id=1229830978] texture_filter = 4 material = SubResource("ShaderMaterial_mynnq") layout_mode = 0 offset_left = -41.5 offset_top = -55.0 offset_right = 1749.7963 offset_bottom = 1083.0 texture = ExtResource("4_cs5ya") [node name="Panel2" type="Panel" parent="." unique_id=1206239125] 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_id=1550575617] 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_id=680935649] 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_id=1196585733] 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_id=1028441985] 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_id=1335984538] 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_id=340029097] 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_id=1676029015] 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="." unique_id=1226787454] visible = false layout_mode = 0 offset_right = 1152.0 offset_bottom = 648.0 [node name="Music" type="AudioStreamPlayer" parent="." unique_id=388799665] stream = ExtResource("4_mykxm") volume_db = -18.606 autoplay = true bus = &"Music" [node name="SelectSound" type="AudioStreamPlayer" parent="." unique_id=1709518072] unique_name_in_owner = true stream = ExtResource("6_3yumr") bus = &"UI" [node name="SwitchSound" type="AudioStreamPlayer" parent="." unique_id=1984971356] unique_name_in_owner = true stream = ExtResource("7_cs5ya") bus = &"UI" [node name="TextureRect6" type="TextureRect" parent="." unique_id=2093753614] layout_mode = 0 offset_right = 1920.0 offset_bottom = 1080.0 texture = ExtResource("11_u26n3") [node name="Label2" type="Label" parent="." unique_id=77667356] 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="." unique_id=589176934] visible = false material = SubResource("ShaderMaterial_lrxh4") layout_mode = 0 offset_right = 1920.0 offset_bottom = 1080.0 texture = ExtResource("16_174rq")