diff --git a/cutscenes/ending_future.tscn b/cutscenes/ending_future.tscn index 9483c77..27220e4 100644 --- a/cutscenes/ending_future.tscn +++ b/cutscenes/ending_future.tscn @@ -1,68 +1,148 @@ -[gd_scene load_steps=15 format=2] +[gd_scene load_steps=16 format=2] -[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=1] +[ext_resource path="res://ui/theme.tres" type="Theme" id=1] [ext_resource path="res://tilesets/t_grass.tres" type="TileSet" id=2] -[ext_resource path="res://graphics/pong/pong.png" type="Texture" id=3] -[ext_resource path="res://maps/boss/boss2_arena.gd" type="Script" id=4] +[ext_resource path="res://shaders/ska_plane.gdshader" type="Shader" id=3] +[ext_resource path="res://audio/sounds/intro_voiceover.ogg" type="AudioStream" id=4] [ext_resource path="res://graphics/backgrounds/hills.png" type="Texture" id=5] [ext_resource path="res://graphics/npc/msx_future.png" type="Texture" id=6] [ext_resource path="res://graphics/npc/speccy_future.png" type="Texture" id=7] [ext_resource path="res://graphics/npc/sg_future.png" type="Texture" id=8] [ext_resource path="res://graphics/ending/picnic_table.png" type="Texture" id=9] [ext_resource path="res://graphics/npc/sms.png" type="Texture" id=10] -[ext_resource path="res://objects/lore/boss/2600.tscn" type="PackedScene" id=11] -[ext_resource path="res://objects/lore/boss/dr_intelli.tscn" type="PackedScene" id=12] -[ext_resource path="res://audio/music/klystron_vip.ogg" type="AudioStream" id=13] +[ext_resource path="res://ui/2ndpuberty_outline.tres" type="Material" id=11] +[ext_resource path="res://cutscenes/intro_story.gd" type="Script" id=12] [sub_resource type="ShaderMaterial" id=1] -shader = ExtResource( 1 ) -shader_param/border_color = Color( 0, 0, 0, 1 ) -shader_param/border_corners = true +shader = ExtResource( 3 ) +shader_param/color_1 = Color( 0, 0, 0, 1 ) +shader_param/color_2 = Color( 0.486275, 0, 0, 1 ) +shader_param/checker_size = Vector2( 16, 16 ) +shader_param/pan_speed = Vector2( 16, 0 ) +shader_param/cycle_speed = Vector2( 4, 4 ) +shader_param/cycle_alternation = Vector2( 4, 4 ) +shader_param/uv_transform = Transform2D( 0, 1, 1, 0, 0, 0 ) -[node name="Map" type="Node2D" groups=["map"]] -pause_mode = 1 -script = ExtResource( 4 ) -music = ExtResource( 13 ) -lore_entries = [ ExtResource( 11 ), ExtResource( 12 ) ] +[sub_resource type="Animation" id=2] +length = 0.001 +tracks/0/type = "value" +tracks/0/path = NodePath("Label:rect_position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 8, 192 ) ] +} -[node name="Sprite" type="Sprite" parent="."] +[sub_resource type="Animation" id=3] +resource_name = "scroll" +length = 80.0 +tracks/0/type = "value" +tracks/0/path = NodePath("Label:rect_position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 80 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ Vector2( 8, 182 ), Vector2( 8, -528 ) ] +} + +[node name="IntroStory" type="Node2D"] +script = ExtResource( 12 ) + +[node name="ColorRect" type="ColorRect" parent="."] +material = SubResource( 1 ) +margin_right = 256.0 +margin_bottom = 192.0 + +[node name="Label" type="Label" parent="."] +material = ExtResource( 11 ) +margin_left = 8.0 +margin_top = 192.0 +margin_right = 248.0 +margin_bottom = 1086.0 +theme = ExtResource( 1 ) +text = "And so with Fami and all the other corruptive forces of the world taken out, a new future is born. + +The Shards had +turned Fami into Famira, one of the most powerful beings in the entire universe, a monster only bested by SG's +heroic courage. + +SG and the other freedom fighters realized that kind of power should not be able to rest in the hands of anyone, +and so a year later, the heroes collected the shards again and sent them to planet x, never to be found again. + +a few years after that, SG and their friends created a utopia where everyone shares resources and works together to support each other, +a future without coercive hierarchies or money. + +It took the work of many people to establish this utopia, and it +takes everyone's contributions to keep it alive. + +It's thanks to everyone that the world is saved, not only SG, but their friends as well, and you, the player! + + + +10 years after Fami died, SG and the other freedom fighters meet up for a picnic in celebration of his defeat. + +Many things have changed since 2083, Ms. X realizing that drugs did not help her feel better, is now 3 years sober. +Speccy is now a brilliant inventor, who has worked on top notch computers and game consoles. + +Lastly, SG adopted a kid named SMS, who is +taken care of by SG as well as other friends they've made from their village. SMS looks up to SG and wishes to be a hero one day. + +Of course, keeping the utopia alive is still important and there are still smaller problems to fix, but hopefully everyone will continue +to live in a world without the need for heroes to defeat great evils." +align = 1 +autowrap = true + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "scroll" +anims/RESET = SubResource( 2 ) +anims/scroll = SubResource( 3 ) + +[node name="VoiceOver" type="AudioStreamPlayer" parent="."] +stream = ExtResource( 4 ) + +[node name="TimeskipScene" type="Node2D" parent="."] +z_index = -1 + +[node name="Sprite" type="Sprite" parent="TimeskipScene"] position = Vector2( 128, 96 ) z_index = -2 texture = ExtResource( 5 ) -__meta__ = { -"_edit_lock_": true -} -[node name="TileMap" type="TileMap" parent="."] +[node name="TileMap" type="TileMap" parent="TimeskipScene"] tile_set = ExtResource( 2 ) cell_size = Vector2( 8, 8 ) format = 1 tile_data = PoolIntArray( 1507327, 3, 1, 1441792, 3, 2, 1441793, 3, 2, 1441794, 3, 2, 1441795, 3, 2, 1441796, 3, 2, 1441797, 3, 2, 1441798, 3, 2, 1441799, 3, 2, 1441800, 3, 2, 1441801, 3, 2, 1441802, 3, 2, 1441803, 3, 2, 1441804, 3, 2, 1441805, 3, 2, 1441806, 3, 2, 1441807, 3, 2, 1441808, 3, 2, 1441809, 3, 2, 1441810, 3, 2, 1441811, 3, 2, 1441812, 3, 2, 1441813, 3, 2, 1441814, 3, 2, 1441815, 3, 2, 1441816, 3, 2, 1441817, 3, 2, 1441818, 3, 2, 1441819, 3, 2, 1441820, 3, 2, 1441821, 3, 2, 1441822, 3, 2, 1441823, 3, 2, 1441824, 3, 3, 1572863, 3, 65537, 1507328, 3, 65538, 1507329, 3, 65538, 1507330, 3, 65538, 1507331, 3, 65538, 1507332, 3, 65538, 1507333, 3, 65538, 1507334, 3, 65538, 1507335, 3, 65538, 1507336, 3, 65538, 1507337, 3, 65538, 1507338, 3, 65538, 1507339, 3, 65538, 1507340, 3, 65538, 1507341, 3, 65538, 1507342, 3, 65538, 1507343, 3, 65538, 1507344, 3, 65538, 1507345, 3, 65538, 1507346, 3, 65538, 1507347, 3, 65538, 1507348, 3, 65538, 1507349, 3, 65538, 1507350, 3, 65538, 1507351, 3, 65538, 1507352, 3, 65538, 1507353, 3, 65538, 1507354, 3, 65538, 1507355, 3, 65538, 1507356, 3, 65538, 1507357, 3, 65538, 1507358, 3, 65538, 1507359, 3, 65538, 1507360, 3, 65539, 1638399, 3, 131073, 1572864, 3, 131074, 1572865, 3, 131074, 1572866, 3, 131074, 1572867, 3, 131074, 1572868, 3, 131074, 1572869, 3, 131074, 1572870, 3, 131074, 1572871, 3, 131074, 1572872, 3, 131074, 1572873, 3, 131074, 1572874, 3, 131074, 1572875, 3, 131074, 1572876, 3, 131074, 1572877, 3, 131074, 1572878, 3, 131074, 1572879, 3, 131074, 1572880, 3, 131074, 1572881, 3, 131074, 1572882, 3, 131074, 1572883, 3, 131074, 1572884, 3, 131074, 1572885, 3, 131074, 1572886, 3, 131074, 1572887, 3, 131074, 1572888, 3, 131074, 1572889, 3, 131074, 1572890, 3, 131074, 1572891, 3, 131074, 1572892, 3, 131074, 1572893, 3, 131074, 1572894, 3, 131074, 1572895, 3, 131074, 1572896, 3, 131075 ) -[node name="SgFuture" type="Sprite" parent="."] +[node name="SgFuture" type="Sprite" parent="TimeskipScene"] position = Vector2( 96, 166 ) texture = ExtResource( 8 ) -[node name="MsxFuture" type="Sprite" parent="."] +[node name="MsxFuture" type="Sprite" parent="TimeskipScene"] position = Vector2( 161, 166 ) scale = Vector2( -1, 1 ) texture = ExtResource( 6 ) -[node name="SpeccyFuture" type="Sprite" parent="."] +[node name="SpeccyFuture" type="Sprite" parent="TimeskipScene"] position = Vector2( 176, 164 ) scale = Vector2( -1, 1 ) texture = ExtResource( 7 ) -[node name="Sms" type="Sprite" parent="."] +[node name="Sms" type="Sprite" parent="TimeskipScene"] position = Vector2( 80, 164 ) texture = ExtResource( 10 ) -[node name="Pong" type="Sprite" parent="."] -material = SubResource( 1 ) -position = Vector2( 64, 170 ) -scale = Vector2( -1, 1 ) -texture = ExtResource( 3 ) - -[node name="PicnicTable" type="Sprite" parent="."] +[node name="PicnicTable" type="Sprite" parent="TimeskipScene"] position = Vector2( 128, 167 ) texture = ExtResource( 9 ) + +[connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_AnimationPlayer_animation_finished"] diff --git a/cutscenes/ending_future1.tscn b/cutscenes/ending_future1.tscn new file mode 100644 index 0000000..9483c77 --- /dev/null +++ b/cutscenes/ending_future1.tscn @@ -0,0 +1,68 @@ +[gd_scene load_steps=15 format=2] + +[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=1] +[ext_resource path="res://tilesets/t_grass.tres" type="TileSet" id=2] +[ext_resource path="res://graphics/pong/pong.png" type="Texture" id=3] +[ext_resource path="res://maps/boss/boss2_arena.gd" type="Script" id=4] +[ext_resource path="res://graphics/backgrounds/hills.png" type="Texture" id=5] +[ext_resource path="res://graphics/npc/msx_future.png" type="Texture" id=6] +[ext_resource path="res://graphics/npc/speccy_future.png" type="Texture" id=7] +[ext_resource path="res://graphics/npc/sg_future.png" type="Texture" id=8] +[ext_resource path="res://graphics/ending/picnic_table.png" type="Texture" id=9] +[ext_resource path="res://graphics/npc/sms.png" type="Texture" id=10] +[ext_resource path="res://objects/lore/boss/2600.tscn" type="PackedScene" id=11] +[ext_resource path="res://objects/lore/boss/dr_intelli.tscn" type="PackedScene" id=12] +[ext_resource path="res://audio/music/klystron_vip.ogg" type="AudioStream" id=13] + +[sub_resource type="ShaderMaterial" id=1] +shader = ExtResource( 1 ) +shader_param/border_color = Color( 0, 0, 0, 1 ) +shader_param/border_corners = true + +[node name="Map" type="Node2D" groups=["map"]] +pause_mode = 1 +script = ExtResource( 4 ) +music = ExtResource( 13 ) +lore_entries = [ ExtResource( 11 ), ExtResource( 12 ) ] + +[node name="Sprite" type="Sprite" parent="."] +position = Vector2( 128, 96 ) +z_index = -2 +texture = ExtResource( 5 ) +__meta__ = { +"_edit_lock_": true +} + +[node name="TileMap" type="TileMap" parent="."] +tile_set = ExtResource( 2 ) +cell_size = Vector2( 8, 8 ) +format = 1 +tile_data = PoolIntArray( 1507327, 3, 1, 1441792, 3, 2, 1441793, 3, 2, 1441794, 3, 2, 1441795, 3, 2, 1441796, 3, 2, 1441797, 3, 2, 1441798, 3, 2, 1441799, 3, 2, 1441800, 3, 2, 1441801, 3, 2, 1441802, 3, 2, 1441803, 3, 2, 1441804, 3, 2, 1441805, 3, 2, 1441806, 3, 2, 1441807, 3, 2, 1441808, 3, 2, 1441809, 3, 2, 1441810, 3, 2, 1441811, 3, 2, 1441812, 3, 2, 1441813, 3, 2, 1441814, 3, 2, 1441815, 3, 2, 1441816, 3, 2, 1441817, 3, 2, 1441818, 3, 2, 1441819, 3, 2, 1441820, 3, 2, 1441821, 3, 2, 1441822, 3, 2, 1441823, 3, 2, 1441824, 3, 3, 1572863, 3, 65537, 1507328, 3, 65538, 1507329, 3, 65538, 1507330, 3, 65538, 1507331, 3, 65538, 1507332, 3, 65538, 1507333, 3, 65538, 1507334, 3, 65538, 1507335, 3, 65538, 1507336, 3, 65538, 1507337, 3, 65538, 1507338, 3, 65538, 1507339, 3, 65538, 1507340, 3, 65538, 1507341, 3, 65538, 1507342, 3, 65538, 1507343, 3, 65538, 1507344, 3, 65538, 1507345, 3, 65538, 1507346, 3, 65538, 1507347, 3, 65538, 1507348, 3, 65538, 1507349, 3, 65538, 1507350, 3, 65538, 1507351, 3, 65538, 1507352, 3, 65538, 1507353, 3, 65538, 1507354, 3, 65538, 1507355, 3, 65538, 1507356, 3, 65538, 1507357, 3, 65538, 1507358, 3, 65538, 1507359, 3, 65538, 1507360, 3, 65539, 1638399, 3, 131073, 1572864, 3, 131074, 1572865, 3, 131074, 1572866, 3, 131074, 1572867, 3, 131074, 1572868, 3, 131074, 1572869, 3, 131074, 1572870, 3, 131074, 1572871, 3, 131074, 1572872, 3, 131074, 1572873, 3, 131074, 1572874, 3, 131074, 1572875, 3, 131074, 1572876, 3, 131074, 1572877, 3, 131074, 1572878, 3, 131074, 1572879, 3, 131074, 1572880, 3, 131074, 1572881, 3, 131074, 1572882, 3, 131074, 1572883, 3, 131074, 1572884, 3, 131074, 1572885, 3, 131074, 1572886, 3, 131074, 1572887, 3, 131074, 1572888, 3, 131074, 1572889, 3, 131074, 1572890, 3, 131074, 1572891, 3, 131074, 1572892, 3, 131074, 1572893, 3, 131074, 1572894, 3, 131074, 1572895, 3, 131074, 1572896, 3, 131075 ) + +[node name="SgFuture" type="Sprite" parent="."] +position = Vector2( 96, 166 ) +texture = ExtResource( 8 ) + +[node name="MsxFuture" type="Sprite" parent="."] +position = Vector2( 161, 166 ) +scale = Vector2( -1, 1 ) +texture = ExtResource( 6 ) + +[node name="SpeccyFuture" type="Sprite" parent="."] +position = Vector2( 176, 164 ) +scale = Vector2( -1, 1 ) +texture = ExtResource( 7 ) + +[node name="Sms" type="Sprite" parent="."] +position = Vector2( 80, 164 ) +texture = ExtResource( 10 ) + +[node name="Pong" type="Sprite" parent="."] +material = SubResource( 1 ) +position = Vector2( 64, 170 ) +scale = Vector2( -1, 1 ) +texture = ExtResource( 3 ) + +[node name="PicnicTable" type="Sprite" parent="."] +position = Vector2( 128, 167 ) +texture = ExtResource( 9 ) diff --git a/cutscenes/ending_present.tscn b/cutscenes/ending_present.tscn new file mode 100644 index 0000000..f980956 --- /dev/null +++ b/cutscenes/ending_present.tscn @@ -0,0 +1,92 @@ +[gd_scene load_steps=9 format=2] + +[ext_resource path="res://ui/theme.tres" type="Theme" id=1] +[ext_resource path="res://ui/2ndpuberty_outline.tres" type="Material" id=2] +[ext_resource path="res://shaders/ska_plane.gdshader" type="Shader" id=3] +[ext_resource path="res://audio/sounds/intro_voiceover.ogg" type="AudioStream" id=4] +[ext_resource path="res://cutscenes/intro_story.gd" type="Script" id=5] + +[sub_resource type="ShaderMaterial" id=1] +shader = ExtResource( 3 ) +shader_param/color_1 = Color( 0, 0, 0, 1 ) +shader_param/color_2 = Color( 0.486275, 0, 0, 1 ) +shader_param/checker_size = Vector2( 16, 16 ) +shader_param/pan_speed = Vector2( 16, 0 ) +shader_param/cycle_speed = Vector2( 4, 4 ) +shader_param/cycle_alternation = Vector2( 4, 4 ) +shader_param/uv_transform = Transform2D( 0, 1, 1, 0, 0, 0 ) + +[sub_resource type="Animation" id=2] +length = 0.001 +tracks/0/type = "value" +tracks/0/path = NodePath("Label:rect_position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 8, 192 ) ] +} + +[sub_resource type="Animation" id=3] +resource_name = "scroll" +length = 80.0 +tracks/0/type = "value" +tracks/0/path = NodePath("Label:rect_position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 80 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ Vector2( 8, 182 ), Vector2( 8, -528 ) ] +} + +[node name="IntroStory" type="Node2D"] +script = ExtResource( 5 ) + +[node name="ColorRect" type="ColorRect" parent="."] +material = SubResource( 1 ) +margin_right = 256.0 +margin_bottom = 192.0 + +[node name="Label" type="Label" parent="."] +material = ExtResource( 2 ) +margin_left = 8.0 +margin_top = 192.0 +margin_right = 248.0 +margin_bottom = 722.0 +theme = ExtResource( 1 ) +text = "And so with Fami and all the other corruptive forces of the world taken out, a new future is born. + +The Shards had +turned Fami into Famira, one of the most powerful beings in the entire universe, a monster only bested by SG's +heroic courage. + +SG and the other freedom fighters realized that kind of power should not be able to rest in the hands of anyone, +and so a year later, the heroes collected the shards again and sent them to planet x, never to be found again. + +SG and their friends plan to create a utopia where everyone shares resources and works together to support each other, a future without +coercive hierarchies or money. + + It will take a lot of work for this plan to come to fruition but it's easier now but with +the capitalist order dismantled. It'll take the work of many people not only to establish this utopia, but to keep it alive. + +It's thanks to everyone that the world is saved, not only SG, but their friends as well, and you, the player!" +align = 1 +autowrap = true + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "scroll" +anims/RESET = SubResource( 2 ) +anims/scroll = SubResource( 3 ) + +[node name="VoiceOver" type="AudioStreamPlayer" parent="."] +stream = ExtResource( 4 ) + +[connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_AnimationPlayer_animation_finished"]