mirror of
https://github.com/Escada-Games/diver-down.git
synced 2026-01-23 03:24:02 +00:00
The new transition works, but stutters a bit it seems
This commit is contained in:
parent
0a5ed97c70
commit
0cb37f930b
8 changed files with 101 additions and 132 deletions
|
|
@ -1,6 +1,5 @@
|
|||
[gd_scene load_steps=4 format=2]
|
||||
[gd_scene load_steps=3 format=2]
|
||||
|
||||
[ext_resource path="res://Resources/Textures/lightCircle.png" type="Texture" id=1]
|
||||
[ext_resource path="res://Resources/MoreTextures/transitionTexture.png" type="Texture" id=2]
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id=1]
|
||||
|
|
@ -25,11 +24,3 @@ stretch_mode = 2
|
|||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
||||
[node name="light2D" type="Light2D" parent="."]
|
||||
position = Vector2( 185.535, 60.8528 )
|
||||
texture = ExtResource( 1 )
|
||||
mode = 2
|
||||
__meta__ = {
|
||||
"_editor_description_": ""
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
extends Node
|
||||
|
||||
const defaultResolution=Vector2(384,216)
|
||||
var player
|
||||
var lr=50 #Light radius
|
||||
var state='Stage_begin'
|
||||
|
|
@ -92,9 +92,9 @@ func next_stage(): #@ Add a delay here maybe
|
|||
|
||||
func change_stage(stage):
|
||||
var target=get_tree().current_scene
|
||||
twn.interpolate_property(target, 'modulate:a', target.modulate.a, 0, 0.4, Tween.TRANS_QUART, Tween.EASE_IN)
|
||||
twn.start()
|
||||
yield(twn, "tween_completed")
|
||||
# twn.interpolate_property(target, 'modulate:a', target.modulate.a, 0, 0.4, Tween.TRANS_QUART, Tween.EASE_IN)
|
||||
# twn.start()
|
||||
# yield(twn, "tween_completed")
|
||||
# var i=stage.instance()
|
||||
# i.add_child(stage_fadein.instance())
|
||||
if stage.instance().get_node('stage/str_stagename').text=='Stage 2: Going up':
|
||||
|
|
|
|||
|
|
@ -4,69 +4,38 @@
|
|||
[ext_resource path="res://Resources/SFX/50561__broumbroum__sf3-sfx-menu-select.wav" type="AudioStream" id=2]
|
||||
|
||||
[sub_resource type="GDScript" id=1]
|
||||
|
||||
script/source = "extends Area2D
|
||||
var transitionLayer=preload(\"res://Scenes/screenTransition/transitionLayer.tscn\")
|
||||
onready var current_level=get_tree().current_scene.get_node('stage')
|
||||
export (PackedScene) var next_level=load(\"res://Scenes/debug.tscn\")
|
||||
func _ready(): pass
|
||||
func _on_next_level_body_entered(body):
|
||||
if(body.is_in_group('Player')):
|
||||
$snd_done.play()
|
||||
global.change_stage(next_level)
|
||||
# body.active=false
|
||||
body.anim='idle'
|
||||
body.get_node('animation_player').play('idle')
|
||||
body.get_node('twn_fadeout').interpolate_property(body, 'modulate:a', body.modulate.a, 0, 0.4, Tween.TRANS_QUART, Tween.EASE_IN)
|
||||
# var i=next_level.instance()
|
||||
# i.rect_global_position=Vector2()
|
||||
#global.change_stage(next_level)
|
||||
var i=transitionLayer.instance()
|
||||
i.nextLevel=self.next_level
|
||||
get_tree().root.add_child(i)
|
||||
|
||||
## get_tree().change_scene_to(next_level)
|
||||
## get_tree().current_scene.get_node('stage').queue_free()
|
||||
#
|
||||
# var i=next_level.instance()
|
||||
# i.rect_global_position=Vector2()
|
||||
#
|
||||
## get_tree().current_scene.add_child(i)
|
||||
#
|
||||
# get_tree().current_scene.add_child_below_node(get_tree().current_scene.get_node('pause_manager'),i)
|
||||
# get_parent().go_out()"
|
||||
$snd_done.play()
|
||||
# body.anim='idle'
|
||||
# body.get_node('animation_player').play('idle')
|
||||
# body.get_node('twn_fadeout').interpolate_property(body, 'modulate:a', body.modulate.a, 0, 0.4, Tween.TRANS_QUART, Tween.EASE_IN)
|
||||
"
|
||||
|
||||
[sub_resource type="RectangleShape2D" id=2]
|
||||
|
||||
custom_solver_bias = 0.0
|
||||
extents = Vector2( 9, 10 )
|
||||
|
||||
[node name="next_level" type="Area2D"]
|
||||
|
||||
input_pickable = true
|
||||
gravity_vec = Vector2( 0, 1 )
|
||||
gravity = 98.0
|
||||
linear_damp = 0.1
|
||||
angular_damp = 1.0
|
||||
audio_bus_override = false
|
||||
audio_bus_name = "Master"
|
||||
script = SubResource( 1 )
|
||||
_sections_unfolded = [ "Transform" ]
|
||||
next_level = null
|
||||
|
||||
[node name="icon" type="Sprite" parent="." index="0"]
|
||||
|
||||
[node name="icon" type="Sprite" parent="."]
|
||||
position = Vector2( 0, -2 )
|
||||
texture = ExtResource( 1 )
|
||||
_sections_unfolded = [ "Material", "Transform" ]
|
||||
|
||||
[node name="collision_shape_2d" type="CollisionShape2D" parent="." index="1"]
|
||||
|
||||
[node name="collision_shape_2d" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource( 2 )
|
||||
|
||||
[node name="snd_done" type="AudioStreamPlayer" parent="." index="2"]
|
||||
|
||||
[node name="snd_done" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource( 2 )
|
||||
volume_db = 0.0
|
||||
autoplay = false
|
||||
mix_target = 0
|
||||
bus = "sfx"
|
||||
|
||||
[connection signal="body_entered" from="." to="." method="_on_next_level_body_entered"]
|
||||
|
||||
|
||||
|
|
|
|||
12
Scenes/screenTransition/light2DforMasking.tscn
Normal file
12
Scenes/screenTransition/light2DforMasking.tscn
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_scene load_steps=2 format=2]
|
||||
|
||||
[ext_resource path="res://Resources/Textures/lightCircle.png" type="Texture" id=1]
|
||||
|
||||
[node name="light2D" type="Light2D"]
|
||||
position = Vector2( 74.7474, 52.4499 )
|
||||
texture = ExtResource( 1 )
|
||||
mode = 2
|
||||
range_layer_max = 1
|
||||
__meta__ = {
|
||||
"_editor_description_": ""
|
||||
}
|
||||
33
Scenes/screenTransition/transitionLayer.gd
Normal file
33
Scenes/screenTransition/transitionLayer.gd
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
extends CanvasLayer
|
||||
const duration=0.5
|
||||
const delay=0.02
|
||||
const maximumLightMaskSize=0.25
|
||||
const lightMaskSpacing=32
|
||||
var lightMask=preload("res://Scenes/screenTransition/light2DforMasking.tscn")
|
||||
var deleteNext=false
|
||||
var nextLevel=PackedScene
|
||||
func _ready():
|
||||
$twnGrow.connect("tween_all_completed",self,"tweenEnded")
|
||||
for i in range(0,global.defaultResolution.x+lightMaskSpacing*0.1,lightMaskSpacing):
|
||||
for j in range(0,global.defaultResolution.y+lightMaskSpacing*0.3,lightMaskSpacing):
|
||||
createLight(i,j)
|
||||
|
||||
func createLight(x,y):
|
||||
var i=lightMask.instance()
|
||||
i.global_position=Vector2(x,y)
|
||||
i.texture_scale=0
|
||||
$twnGrow.interpolate_property(i,"texture_scale",i.texture_scale,maximumLightMaskSize,duration,Tween.TRANS_QUINT,Tween.EASE_OUT,delay*2*(x+y)/lightMaskSpacing)
|
||||
$twnGrow.start()
|
||||
$lights.add_child(i)
|
||||
|
||||
func tweenEnded():
|
||||
if not deleteNext:
|
||||
global.change_stage(nextLevel)
|
||||
deleteNext=true
|
||||
for node in $lights.get_children():
|
||||
var x=node.global_position.x
|
||||
var y=node.global_position.y
|
||||
$twnGrow.interpolate_property(node,"texture_scale",node.texture_scale,0,duration,Tween.TRANS_QUINT,Tween.EASE_OUT,delay*2*(x+y)/lightMaskSpacing)
|
||||
$twnGrow.start()
|
||||
else:
|
||||
self.queue_free()
|
||||
28
Scenes/screenTransition/transitionLayer.tscn
Normal file
28
Scenes/screenTransition/transitionLayer.tscn
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
[gd_scene load_steps=4 format=2]
|
||||
|
||||
[ext_resource path="res://Resources/MoreTextures/transitionTexture.png" type="Texture" id=1]
|
||||
[ext_resource path="res://Scenes/screenTransition/transitionLayer.gd" type="Script" id=2]
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id=1]
|
||||
light_mode = 2
|
||||
|
||||
[node name="transitionLayer" type="CanvasLayer"]
|
||||
layer = 0
|
||||
script = ExtResource( 2 )
|
||||
|
||||
[node name="twnGrow" type="Tween" parent="."]
|
||||
|
||||
[node name="lights" type="Node2D" parent="."]
|
||||
|
||||
[node name="textureRect" type="TextureRect" parent="."]
|
||||
material = SubResource( 1 )
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
texture = ExtResource( 1 )
|
||||
expand = true
|
||||
stretch_mode = 2
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=19 format=2]
|
||||
[gd_scene load_steps=16 format=2]
|
||||
|
||||
[ext_resource path="res://Scenes/bg_layer.tscn" type="PackedScene" id=1]
|
||||
[ext_resource path="res://Scenes/twn_stagefadein.tscn" type="PackedScene" id=2]
|
||||
|
|
@ -11,12 +11,7 @@
|
|||
[ext_resource path="res://Scenes/str_stagename.tscn" type="PackedScene" id=9]
|
||||
[ext_resource path="res://Scenes/grass.tscn" type="PackedScene" id=10]
|
||||
[ext_resource path="res://Scenes/vine.tscn" type="PackedScene" id=11]
|
||||
[ext_resource path="res://Resources/Textures/lightCircle.png" type="Texture" id=12]
|
||||
[ext_resource path="res://Resources/SFX/Laser_shoot 6.wav" type="AudioStream" id=13]
|
||||
[ext_resource path="res://Resources/MoreTextures/transitionTexture.png" type="Texture" id=14]
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id=1]
|
||||
light_mode = 2
|
||||
|
||||
[sub_resource type="GDScript" id=4]
|
||||
script/source = "extends TileMap
|
||||
|
|
@ -68,57 +63,7 @@ func _ready():
|
|||
|
||||
[node name="twn_stagefadein" parent="." instance=ExtResource( 2 )]
|
||||
|
||||
[node name="transitionLayer" type="CanvasLayer" parent="."]
|
||||
layer = 10
|
||||
|
||||
[node name="fgTransition" type="Control" parent="transitionLayer"]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
||||
[node name="textureRect2" type="TextureRect" parent="transitionLayer/fgTransition"]
|
||||
visible = false
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
texture = ExtResource( 14 )
|
||||
expand = true
|
||||
stretch_mode = 2
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
||||
[node name="textureRect" type="TextureRect" parent="transitionLayer/fgTransition"]
|
||||
material = SubResource( 1 )
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
texture = ExtResource( 14 )
|
||||
expand = true
|
||||
stretch_mode = 2
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
||||
[node name="sprite" type="Sprite" parent="transitionLayer/fgTransition"]
|
||||
material = SubResource( 1 )
|
||||
texture = ExtResource( 14 )
|
||||
centered = false
|
||||
|
||||
[node name="light2D" type="Light2D" parent="transitionLayer/fgTransition"]
|
||||
position = Vector2( 214.033, 136.904 )
|
||||
texture = ExtResource( 12 )
|
||||
mode = 2
|
||||
__meta__ = {
|
||||
"_editor_description_": ""
|
||||
}
|
||||
|
||||
[node name="stage" type="Control" parent="."]
|
||||
visible = false
|
||||
margin_right = 40.0
|
||||
margin_bottom = 40.0
|
||||
|
||||
|
|
|
|||
|
|
@ -1,28 +1,19 @@
|
|||
[gd_scene load_steps=2 format=2]
|
||||
|
||||
[sub_resource type="GDScript" id=1]
|
||||
|
||||
resource_name = "twn_fadein"
|
||||
script/source = "extends Tween
|
||||
|
||||
func _ready():
|
||||
print('Fadein tween: Starting alpha tween...')
|
||||
get_parent().modulate.a=0
|
||||
self.interpolate_property(get_parent(), 'modulate:a', 0, 1, 1.5, Tween.TRANS_QUART, Tween.EASE_OUT)
|
||||
self.start()
|
||||
yield(self, \"tween_completed\")
|
||||
print('Fadein tween: Alpha tween finished. Deleting self, bai!')
|
||||
self.queue_free()"
|
||||
_sections_unfolded = [ "Resource" ]
|
||||
return
|
||||
# print('Fadein tween: Starting alpha tween...')
|
||||
# get_parent().modulate.a=0
|
||||
# self.interpolate_property(get_parent(), 'modulate:a', 0, 1, 1.5, Tween.TRANS_QUART, Tween.EASE_OUT)
|
||||
# self.start()
|
||||
# yield(self, \"tween_completed\")
|
||||
# print('Fadein tween: Alpha tween finished. Deleting self, bai!')
|
||||
# self.queue_free()
|
||||
"
|
||||
|
||||
[node name="twn_stagefadein" type="Tween"]
|
||||
|
||||
repeat = false
|
||||
playback_process_mode = 1
|
||||
playback_speed = 1.0
|
||||
playback/active = false
|
||||
playback/repeat = false
|
||||
playback/speed = 1.0
|
||||
script = SubResource( 1 )
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue