feature/shader-animation (#83)
Co-authored-by: Vaillant Jeremy <vaillant.jeremy@dev-crea.com> Co-authored-by: VAILLANT Jeremy <vaillant.jeremy@dev-crea.com> Reviewed-on: Athena/game-source#83 Co-authored-by: darknight <vaillant.jeremy@dev-crea.com> Co-committed-by: darknight <vaillant.jeremy@dev-crea.com>
This commit is contained in:
@@ -50,6 +50,9 @@ func set_lock(value):
|
|||||||
func mesh():
|
func mesh():
|
||||||
return m_mesh
|
return m_mesh
|
||||||
|
|
||||||
|
func tween():
|
||||||
|
return m_mesh + "/Tween"
|
||||||
|
|
||||||
func set_mesh(value):
|
func set_mesh(value):
|
||||||
m_mesh = value
|
m_mesh = value
|
||||||
|
|
||||||
|
|||||||
@@ -219,6 +219,7 @@ gddb_types="*res://addons/godot_db_manager/core/GDDBTypes.gd"
|
|||||||
gddb_globals="*res://addons/godot_db_manager/core/GDDBGlobals.gd"
|
gddb_globals="*res://addons/godot_db_manager/core/GDDBGlobals.gd"
|
||||||
Setting="*res://scripts/Setting.gd"
|
Setting="*res://scripts/Setting.gd"
|
||||||
Event="*res://scripts/Event.gd"
|
Event="*res://scripts/Event.gd"
|
||||||
|
GlobalAnimation="*res://scripts/Animation.gd"
|
||||||
|
|
||||||
[display]
|
[display]
|
||||||
|
|
||||||
|
|||||||
+25
-35
@@ -41,6 +41,7 @@ func _load_meshes():
|
|||||||
|
|
||||||
if scene_detail.key() != null:
|
if scene_detail.key() != null:
|
||||||
meshes[scene_detail.key()] = scene_detail
|
meshes[scene_detail.key()] = scene_detail
|
||||||
|
create_dissolve_mesh(scene_detail.key())
|
||||||
|
|
||||||
func _load_back_button():
|
func _load_back_button():
|
||||||
var _back = $Quit/TextureButton.connect("pressed", Event, "_on_main_scene_pressed")
|
var _back = $Quit/TextureButton.connect("pressed", Event, "_on_main_scene_pressed")
|
||||||
@@ -101,36 +102,19 @@ func _configure_button_object(button, scene, label):
|
|||||||
button.set_meta("counted", 0)
|
button.set_meta("counted", 0)
|
||||||
|
|
||||||
func _create_animation_slide(node, name):
|
func _create_animation_slide(node, name):
|
||||||
var animation = Animation.new()
|
$ListObjects/AnimationPlayer.add_animation(name, GlobalAnimation.level_hud_slide(node))
|
||||||
var track_index = animation.add_track(Animation.TYPE_BEZIER)
|
|
||||||
var node_element = String(node.get_path()) + ":rect_position:x"
|
|
||||||
|
|
||||||
animation.track_set_path(track_index, node_element)
|
|
||||||
animation.bezier_track_insert_key(track_index, 0.0, 0.0, Vector2(-0.25, 0), Vector2(0.031, 190.492))
|
|
||||||
animation.bezier_track_insert_key(track_index, 1.0, 170, Vector2(-0.349, 2.576), Vector2(0.25, 0))
|
|
||||||
|
|
||||||
$ListObjects/AnimationPlayer.add_animation(name, animation)
|
|
||||||
|
|
||||||
func _create_animation_warning(node, name):
|
func _create_animation_warning(node, name):
|
||||||
var animation = Animation.new()
|
$ListObjects/AnimationPlayer.add_animation(name, GlobalAnimation.level_hud_warning(node))
|
||||||
var track_index = animation.add_track(Animation.TYPE_BEZIER)
|
|
||||||
var node_element = String(node.get_path()) + ":rect_position:x"
|
|
||||||
|
|
||||||
animation.track_set_path(track_index, node_element)
|
|
||||||
animation.bezier_track_insert_key(track_index, 0.0, 0.0, Vector2(-0.25, 0), Vector2(0, 78.1))
|
|
||||||
animation.bezier_track_insert_key(track_index, 0.2, 34.9, Vector2(-0.25, 0), Vector2(0, -66))
|
|
||||||
animation.bezier_track_insert_key(track_index, 0.4, 12.1, Vector2(0, 73.2), Vector2(0, -124.8))
|
|
||||||
animation.bezier_track_insert_key(track_index, 0.6, -41.9, Vector2(-0.095, 109.2), Vector2(0.062, -58.8))
|
|
||||||
animation.bezier_track_insert_key(track_index, 0.8, 13.3, Vector2(-0.188, 93.6), Vector2(0.196, 104.4))
|
|
||||||
animation.bezier_track_insert_key(track_index, 1.0, 0.0, Vector2(-0.155, -135.5), Vector2(0.25, 0))
|
|
||||||
|
|
||||||
$ListObjects/AnimationPlayer.add_animation(name, animation)
|
|
||||||
|
|
||||||
func _process(_delta):
|
func _process(_delta):
|
||||||
_check_dissolve_mesh()
|
_check_dissolve_mesh()
|
||||||
_check_change_angle_camera()
|
_check_change_angle_camera()
|
||||||
_check_victory_condition()
|
_check_victory_condition()
|
||||||
|
|
||||||
|
func create_dissolve_mesh(key):
|
||||||
|
_node_to_mesh(key).get_surface_material(0).set_shader_param("dissolve_amount", 0.0)
|
||||||
|
|
||||||
func _check_dissolve_mesh():
|
func _check_dissolve_mesh():
|
||||||
# Event dissolve in object searched by gamer
|
# Event dissolve in object searched by gamer
|
||||||
for key in meshes:
|
for key in meshes:
|
||||||
@@ -138,10 +122,10 @@ func _check_dissolve_mesh():
|
|||||||
if meshes[key].tick_reference() == 0:
|
if meshes[key].tick_reference() == 0:
|
||||||
meshes[key].set_tick_reference(OS.get_ticks_msec())
|
meshes[key].set_tick_reference(OS.get_ticks_msec())
|
||||||
_node_object_list(key)
|
_node_object_list(key)
|
||||||
|
GlobalAnimation.start_dissolve(_node_to_tween(key), _node_to_mesh(key).get_surface_material(0))
|
||||||
|
|
||||||
if OS.get_ticks_msec() < meshes[key].tick_reference() + TIME_MAX:
|
if OS.get_ticks_msec() < meshes[key].tick_reference() + TIME_MAX:
|
||||||
meshes[key].set_value(meshes[key].value() + 0.01)
|
meshes[key].set_value(meshes[key].value() + 0.01)
|
||||||
_node_to_mesh(key).get_surface_material(0).set("shader_param/dissolve_amount", meshes[key].value())
|
|
||||||
else:
|
else:
|
||||||
_clean_mesh(key)
|
_clean_mesh(key)
|
||||||
|
|
||||||
@@ -227,27 +211,33 @@ func _check_victory_condition():
|
|||||||
func _node_to_mesh(key):
|
func _node_to_mesh(key):
|
||||||
return get_node(meshes[key].mesh())
|
return get_node(meshes[key].mesh())
|
||||||
|
|
||||||
|
func _node_to_tween(key):
|
||||||
|
return get_node(meshes[key].tween())
|
||||||
|
|
||||||
func _node_to_area(key):
|
func _node_to_area(key):
|
||||||
return get_node(meshes[key].mesh()+"/Area")
|
return get_node(meshes[key].mesh()+"/Area")
|
||||||
|
|
||||||
func _node_object_list(key):
|
func _node_object_list(key):
|
||||||
var animation_played = null
|
var animation_played = null
|
||||||
|
var name = null
|
||||||
|
|
||||||
for child in $ListObjects/ListContainer.get_children():
|
for child in $ListObjects/ListContainer.get_children():
|
||||||
if child.get_meta("name") == meshes[key].label():
|
if child.has_meta("name"):
|
||||||
child.set_meta("counted", child.get_meta("counted") + 1)
|
name = var2str(child.get_meta("name"))
|
||||||
|
if name == meshes[key].label():
|
||||||
|
child.set_meta("counted", child.get_meta("counted") + 1)
|
||||||
|
|
||||||
if child.get_meta("counter") == child.get_meta("counted"):
|
if child.get_meta("counter") == child.get_meta("counted"):
|
||||||
animation_played = child.get_meta("name")
|
animation_played = name
|
||||||
else:
|
else:
|
||||||
var diff = child.get_meta("counter") - child.get_meta("counted")
|
var diff = child.get_meta("counter") - child.get_meta("counted")
|
||||||
var txt = child.get_meta("name")
|
var txt = name
|
||||||
if diff != 1:
|
if diff != 1:
|
||||||
txt = txt + " " + String(diff)
|
txt = txt + " " + String(diff)
|
||||||
animation_played = child.get_meta("animation")
|
animation_played = child.get_meta("animation")
|
||||||
child.get_node("Label").set_text(txt)
|
child.get_node("Label").set_text(txt)
|
||||||
|
|
||||||
$ListObjects/AnimationPlayer.queue(animation_played)
|
$ListObjects/AnimationPlayer.queue(animation_played)
|
||||||
|
|
||||||
func _input(event):
|
func _input(event):
|
||||||
if event is InputEventMouseButton or event is InputEventScreenTouch:
|
if event is InputEventMouseButton or event is InputEventScreenTouch:
|
||||||
|
|||||||
Binary file not shown.
@@ -185,6 +185,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, 2.98023e-08, -4.47035e-08, -2.98023e-08, -8.9407e-08, 1, -1.19209e-07, -1, -1.49012e-07, 0, 0.0801148, -2.98023e-08 )
|
transform = Transform( 1, 2.98023e-08, -4.47035e-08, -2.98023e-08, -8.9407e-08, 1, -1.19209e-07, -1, -1.49012e-07, 0, 0.0801148, -2.98023e-08 )
|
||||||
shape = SubResource( 3 )
|
shape = SubResource( 3 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Fioles/Fiole1" index="1"]
|
||||||
|
|
||||||
[node name="Fiole2" type="MeshInstance" parent="HiddenObjectsItems/Fioles" index="1"]
|
[node name="Fiole2" type="MeshInstance" parent="HiddenObjectsItems/Fioles" index="1"]
|
||||||
transform = Transform( 0.655275, 0.636944, -0.4061, 0.670978, -0.243833, 0.700239, 0.346993, -0.731333, -0.587153, -4.19531, -0.894133, 2.66915 )
|
transform = Transform( 0.655275, 0.636944, -0.4061, 0.670978, -0.243833, 0.700239, 0.346993, -0.731333, -0.587153, -4.19531, -0.894133, 2.66915 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -199,6 +201,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, 5.96046e-08, -8.9407e-08, 2.98023e-08, -8.9407e-08, 1, -8.9407e-08, -1, 0, 2.38419e-07, 0.0823998, -1.19209e-07 )
|
transform = Transform( 1, 5.96046e-08, -8.9407e-08, 2.98023e-08, -8.9407e-08, 1, -8.9407e-08, -1, 0, 2.38419e-07, 0.0823998, -1.19209e-07 )
|
||||||
shape = SubResource( 4 )
|
shape = SubResource( 4 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Fioles/Fiole2" index="1"]
|
||||||
|
|
||||||
[node name="FioleSocle" type="MeshInstance" parent="HiddenObjectsItems/Fioles" index="2"]
|
[node name="FioleSocle" type="MeshInstance" parent="HiddenObjectsItems/Fioles" index="2"]
|
||||||
transform = Transform( 0.6773, -1.86265e-09, 0.735707, -0.0293841, 0.999202, 0.0270513, -0.73512, -0.03994, 0.67676, -2.27881, -0.11528, -1.23929 )
|
transform = Transform( 0.6773, -1.86265e-09, 0.735707, -0.0293841, 0.999202, 0.0270513, -0.73512, -0.03994, 0.67676, -2.27881, -0.11528, -1.23929 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -218,6 +222,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, 2.08616e-07, -7.45058e-08, -5.96046e-08, -1.49012e-07, 1, 5.96046e-08, -1, -1.04308e-07, -1.78814e-07, 0.0560231, 0 )
|
transform = Transform( 1, 2.08616e-07, -7.45058e-08, -5.96046e-08, -1.49012e-07, 1, 5.96046e-08, -1, -1.04308e-07, -1.78814e-07, 0.0560231, 0 )
|
||||||
shape = SubResource( 5 )
|
shape = SubResource( 5 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Fioles/FioleSocle/Fiole3" index="1"]
|
||||||
|
|
||||||
[node name="Dagger" type="MeshInstance" parent="HiddenObjectsItems" index="1"]
|
[node name="Dagger" type="MeshInstance" parent="HiddenObjectsItems" index="1"]
|
||||||
transform = Transform( -0.625025, -0.777847, 0.0655765, 0, 0.0840072, 0.996466, -0.780606, 0.622816, -0.0525065, 0.69073, -0.117415, 0.830941 )
|
transform = Transform( -0.625025, -0.777847, 0.0655765, 0, 0.0840072, 0.996466, -0.780606, 0.622816, -0.0525065, 0.69073, -0.117415, 0.830941 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -231,6 +237,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0.0802139, 0 )
|
transform = Transform( 1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0.0802139, 0 )
|
||||||
shape = SubResource( 6 )
|
shape = SubResource( 6 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Dagger" index="1"]
|
||||||
|
|
||||||
[node name="Spyglass" type="MeshInstance" parent="HiddenObjectsItems" index="2"]
|
[node name="Spyglass" type="MeshInstance" parent="HiddenObjectsItems" index="2"]
|
||||||
transform = Transform( 0.652362, 0.137749, 0.63579, -0.234678, 0.889605, 0.0480562, -0.606736, -0.195981, 0.665013, -2.884, -0.292075, -0.429783 )
|
transform = Transform( 0.652362, 0.137749, 0.63579, -0.234678, 0.889605, 0.0480562, -0.606736, -0.195981, 0.665013, -2.884, -0.292075, -0.429783 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -244,6 +252,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, 0, 2.98023e-08, 1.86265e-09, 1, 3.72529e-09, 0, 5.58794e-09, 1, 2.38419e-07, -1.19209e-07, 0.0177531 )
|
transform = Transform( 1, 0, 2.98023e-08, 1.86265e-09, 1, 3.72529e-09, 0, 5.58794e-09, 1, 2.38419e-07, -1.19209e-07, 0.0177531 )
|
||||||
shape = SubResource( 7 )
|
shape = SubResource( 7 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Spyglass" index="1"]
|
||||||
|
|
||||||
[node name="Beer" type="MeshInstance" parent="HiddenObjectsItems" index="3"]
|
[node name="Beer" type="MeshInstance" parent="HiddenObjectsItems" index="3"]
|
||||||
transform = Transform( 0.996658, -0.053142, 0.0620432, 0.0548108, 0.998171, -0.0255105, -0.060574, 0.0288258, 0.997748, -2.8842, 0.173697, 1.98168 )
|
transform = Transform( 0.996658, -0.053142, 0.0620432, 0.0548108, 0.998171, -0.0255105, -0.060574, 0.0288258, 0.997748, -2.8842, 0.173697, 1.98168 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -258,6 +268,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, 0, -1.61817e-08, 1.83936e-08, -4.28408e-08, 1, 0, -1, -4.65661e-08, 9.53674e-07, 0.0746492, 2.38419e-07 )
|
transform = Transform( 1, 0, -1.61817e-08, 1.83936e-08, -4.28408e-08, 1, 0, -1, -4.65661e-08, 9.53674e-07, 0.0746492, 2.38419e-07 )
|
||||||
shape = SubResource( 8 )
|
shape = SubResource( 8 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Beer" index="1"]
|
||||||
|
|
||||||
[node name="Weapon" type="MeshInstance" parent="HiddenObjectsItems" index="4"]
|
[node name="Weapon" type="MeshInstance" parent="HiddenObjectsItems" index="4"]
|
||||||
transform = Transform( 0.540284, -0.813497, 0.215212, -0.009216, 0.250018, 0.968198, -0.841432, -0.525085, 0.127583, -2.7508, -0.359206, 1.19589 )
|
transform = Transform( 0.540284, -0.813497, 0.215212, -0.009216, 0.250018, 0.968198, -0.841432, -0.525085, 0.127583, -2.7508, -0.359206, 1.19589 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -271,6 +283,8 @@ collision_mask = 2
|
|||||||
transform = Transform( -1.49012e-07, 0, 1, -1, -1.49012e-08, 0, 3.72529e-08, -1, -5.21541e-08, 0.0388942, 0.0484145, -8.19564e-08 )
|
transform = Transform( -1.49012e-07, 0, 1, -1, -1.49012e-08, 0, 3.72529e-08, -1, -5.21541e-08, 0.0388942, 0.0484145, -8.19564e-08 )
|
||||||
shape = SubResource( 9 )
|
shape = SubResource( 9 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Weapon" index="1"]
|
||||||
|
|
||||||
[node name="Apples" type="Spatial" parent="HiddenObjectsItems" index="5"]
|
[node name="Apples" type="Spatial" parent="HiddenObjectsItems" index="5"]
|
||||||
|
|
||||||
[node name="Apple1" type="MeshInstance" parent="HiddenObjectsItems/Apples" index="0"]
|
[node name="Apple1" type="MeshInstance" parent="HiddenObjectsItems/Apples" index="0"]
|
||||||
@@ -286,6 +300,8 @@ collision_mask = 2
|
|||||||
transform = Transform( -1.45286e-07, -2.98023e-08, 1, -1, -1.11759e-08, 0, 1.86265e-08, -1, -8.9407e-08, -1.90735e-06, 0.00575864, 0 )
|
transform = Transform( -1.45286e-07, -2.98023e-08, 1, -1, -1.11759e-08, 0, 1.86265e-08, -1, -8.9407e-08, -1.90735e-06, 0.00575864, 0 )
|
||||||
shape = SubResource( 10 )
|
shape = SubResource( 10 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Apples/Apple1" index="1"]
|
||||||
|
|
||||||
[node name="Apple2" type="MeshInstance" parent="HiddenObjectsItems/Apples" index="1"]
|
[node name="Apple2" type="MeshInstance" parent="HiddenObjectsItems/Apples" index="1"]
|
||||||
transform = Transform( -0.190449, 0, 0.981697, 0, 1, 0, -0.981697, 0, -0.190449, -1.71166, -0.0869397, -1.29534 )
|
transform = Transform( -0.190449, 0, 0.981697, 0, 1, 0, -0.981697, 0, -0.190449, -1.71166, -0.0869397, -1.29534 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -299,6 +315,8 @@ collision_mask = 2
|
|||||||
transform = Transform( -1.49012e-07, 4.47035e-08, 1, -1, -1.49012e-08, 0, 3.72529e-08, -1, -1.49012e-08, -4.76837e-07, -0.00566041, 0 )
|
transform = Transform( -1.49012e-07, 4.47035e-08, 1, -1, -1.49012e-08, 0, 3.72529e-08, -1, -1.49012e-08, -4.76837e-07, -0.00566041, 0 )
|
||||||
shape = SubResource( 11 )
|
shape = SubResource( 11 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Apples/Apple2" index="1"]
|
||||||
|
|
||||||
[node name="Apple3" type="MeshInstance" parent="HiddenObjectsItems/Apples" index="2"]
|
[node name="Apple3" type="MeshInstance" parent="HiddenObjectsItems/Apples" index="2"]
|
||||||
transform = Transform( 0.823731, 0.226496, -0.519776, -0.248954, 0.96813, 0.0273319, 0.509401, 0.106886, 0.853865, -0.718663, -0.36046, 1.92043 )
|
transform = Transform( 0.823731, 0.226496, -0.519776, -0.248954, 0.96813, 0.0273319, 0.509401, 0.106886, 0.853865, -0.718663, -0.36046, 1.92043 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -312,6 +330,8 @@ collision_mask = 2
|
|||||||
transform = Transform( -1.71363e-07, 0, 1, -1, -3.72529e-08, 1.49012e-08, 2.98023e-08, -1, -1.19209e-07, -3.57628e-07, 0.0142345, 2.38419e-07 )
|
transform = Transform( -1.71363e-07, 0, 1, -1, -3.72529e-08, 1.49012e-08, 2.98023e-08, -1, -1.19209e-07, -3.57628e-07, 0.0142345, 2.38419e-07 )
|
||||||
shape = SubResource( 12 )
|
shape = SubResource( 12 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Apples/Apple3" index="1"]
|
||||||
|
|
||||||
[node name="Apple4" type="MeshInstance" parent="HiddenObjectsItems/Apples" index="3"]
|
[node name="Apple4" type="MeshInstance" parent="HiddenObjectsItems/Apples" index="3"]
|
||||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4.38775, -0.940515, 0.233058 )
|
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4.38775, -0.940515, 0.233058 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -325,6 +345,8 @@ collision_mask = 2
|
|||||||
transform = Transform( -1.49012e-07, 0, 1, -1, -1.49012e-08, 0, 3.72529e-08, -1, -5.21541e-08, -4.76837e-07, 0.00115258, -1.17347e-07 )
|
transform = Transform( -1.49012e-07, 0, 1, -1, -1.49012e-08, 0, 3.72529e-08, -1, -5.21541e-08, -4.76837e-07, 0.00115258, -1.17347e-07 )
|
||||||
shape = SubResource( 13 )
|
shape = SubResource( 13 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Apples/Apple4" index="1"]
|
||||||
|
|
||||||
[node name="Coins" type="Spatial" parent="HiddenObjectsItems" index="6"]
|
[node name="Coins" type="Spatial" parent="HiddenObjectsItems" index="6"]
|
||||||
|
|
||||||
[node name="Coin1" type="MeshInstance" parent="HiddenObjectsItems/Coins" index="0"]
|
[node name="Coin1" type="MeshInstance" parent="HiddenObjectsItems/Coins" index="0"]
|
||||||
@@ -341,6 +363,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, -4.65661e-08, 0, -1.38185e-07, 0.999999, 3.14321e-08, 4.17233e-07, -4.19095e-09, 1, 0.0276761, 0.00212932, 0.0336302 )
|
transform = Transform( 1, -4.65661e-08, 0, -1.38185e-07, 0.999999, 3.14321e-08, 4.17233e-07, -4.19095e-09, 1, 0.0276761, 0.00212932, 0.0336302 )
|
||||||
shape = SubResource( 14 )
|
shape = SubResource( 14 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Coins/Coin1" index="1"]
|
||||||
|
|
||||||
[node name="Coin2" type="MeshInstance" parent="HiddenObjectsItems/Coins" index="1"]
|
[node name="Coin2" type="MeshInstance" parent="HiddenObjectsItems/Coins" index="1"]
|
||||||
transform = Transform( 0.250245, 2.79397e-09, -0.968183, 0.0456076, 0.99889, 0.0117882, 0.967108, -0.0471065, 0.249967, 0.752443, -0.000386238, 1.36745 )
|
transform = Transform( 0.250245, 2.79397e-09, -0.968183, 0.0456076, 0.99889, 0.0117882, 0.967108, -0.0471065, 0.249967, 0.752443, -0.000386238, 1.36745 )
|
||||||
layers = 3
|
layers = 3
|
||||||
@@ -356,6 +380,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, 0, 2.98023e-08, 7.45058e-09, 1, -9.31323e-10, 5.96046e-08, 0, 1, 0.0499306, 1.19209e-07, 0.0191208 )
|
transform = Transform( 1, 0, 2.98023e-08, 7.45058e-09, 1, -9.31323e-10, 5.96046e-08, 0, 1, 0.0499306, 1.19209e-07, 0.0191208 )
|
||||||
shape = SubResource( 15 )
|
shape = SubResource( 15 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Coins/Coin2" index="1"]
|
||||||
|
|
||||||
[node name="Coin3" type="MeshInstance" parent="HiddenObjectsItems/Coins" index="2"]
|
[node name="Coin3" type="MeshInstance" parent="HiddenObjectsItems/Coins" index="2"]
|
||||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4.74641, -0.885448, -0.198129 )
|
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -4.74641, -0.885448, -0.198129 )
|
||||||
use_in_baked_light = true
|
use_in_baked_light = true
|
||||||
@@ -370,6 +396,8 @@ collision_mask = 2
|
|||||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0358186, 0, 0.0109152 )
|
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0358186, 0, 0.0109152 )
|
||||||
shape = SubResource( 16 )
|
shape = SubResource( 16 )
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="HiddenObjectsItems/Coins/Coin3" index="1"]
|
||||||
|
|
||||||
[node name="MainSceneProps" type="Spatial" parent="." index="6"]
|
[node name="MainSceneProps" type="Spatial" parent="." index="6"]
|
||||||
|
|
||||||
[node name="sm_book" parent="MainSceneProps" index="0" instance=ExtResource( 33 )]
|
[node name="sm_book" parent="MainSceneProps" index="0" instance=ExtResource( 33 )]
|
||||||
@@ -525,7 +553,7 @@ cell_center_y = false
|
|||||||
cell_center_z = false
|
cell_center_z = false
|
||||||
baked_meshes = [ SubResource( 17 ) ]
|
baked_meshes = [ SubResource( 17 ) ]
|
||||||
data = {
|
data = {
|
||||||
"cells": PoolIntArray( 0, 0, 536870912, 65531, 0, 3, 65532, 0, 0, 65533, 0, 0, 65534, 0, 0, 65535, 0, 0, 0, 1, 0, 65531, 1, 3, 65532, 1, 536870912, 65533, 1, 0, 65534, 1, 0, 65535, 1, 0, 0, 2, 0, 65531, 2, 3, 65532, 2, 0, 65533, 2, 0, 65534, 2, 0, 65535, 2, 1073741824, 0, 65533, 0, 65532, 65533, 0, 65533, 65533, 0, 65534, 65533, 0, 65535, 65533, 536870912, 0, 65534, 536870912, 65531, 65534, 3, 65532, 65534, 0, 65533, 65534, 1610612736, 65534, 65534, 536870912, 65535, 65534, 0, 0, 65535, 0, 65531, 65535, 1073741827, 65532, 65535, 0, 65533, 65535, 0, 65534, 65535, 0, 65535, 65535, 0 )
|
"cells": PoolIntArray( 0, 0, 536870912, 65531, 0, 536870915, 65532, 0, 536870912, 65533, 0, 0, 65534, 0, 0, 65535, 0, 536870912, 0, 1, 536870912, 65531, 1, 536870915, 65532, 1, 0, 65533, 1, 0, 65534, 1, 536870912, 65535, 1, 0, 0, 2, 0, 65531, 2, 536870915, 65532, 2, 536870912, 65533, 2, 536870912, 65534, 2, 536870912, 65535, 2, 536870912, 0, 65533, 0, 65532, 65533, 0, 65533, 65533, 536870912, 65534, 65533, 536870912, 65535, 65533, 536870912, 0, 65534, 536870912, 65531, 65534, 536870915, 65532, 65534, 536870912, 65533, 65534, 536870912, 65534, 65534, 536870912, 65535, 65534, 536870912, 0, 65535, 536870912, 65531, 65535, 3, 65532, 65535, 0, 65533, 65535, 0, 65534, 65535, 0, 65535, 65535, 0 )
|
||||||
}
|
}
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_editor_clip_": 0,
|
"_editor_clip_": 0,
|
||||||
|
|||||||
@@ -0,0 +1,37 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
var current_material = null
|
||||||
|
|
||||||
|
func level_hud_slide(node):
|
||||||
|
var animation = Animation.new()
|
||||||
|
var track_index = animation.add_track(Animation.TYPE_BEZIER)
|
||||||
|
var node_element = String(node.get_path()) + ":rect_position:x"
|
||||||
|
|
||||||
|
animation.track_set_path(track_index, node_element)
|
||||||
|
animation.bezier_track_insert_key(track_index, 0.0, 0.0, Vector2(-0.25, 0), Vector2(0.031, 190.492))
|
||||||
|
animation.bezier_track_insert_key(track_index, 1.0, 170, Vector2(-0.349, 2.576), Vector2(0.25, 0))
|
||||||
|
|
||||||
|
return animation
|
||||||
|
|
||||||
|
func level_hud_warning(node):
|
||||||
|
var animation = Animation.new()
|
||||||
|
var track_index = animation.add_track(Animation.TYPE_BEZIER)
|
||||||
|
var node_element = String(node.get_path()) + ":rect_position:x"
|
||||||
|
|
||||||
|
animation.track_set_path(track_index, node_element)
|
||||||
|
animation.bezier_track_insert_key(track_index, 0.0, 0.0, Vector2(-0.25, 0), Vector2(0, 78.1))
|
||||||
|
animation.bezier_track_insert_key(track_index, 0.2, 34.9, Vector2(-0.25, 0), Vector2(0, -66))
|
||||||
|
animation.bezier_track_insert_key(track_index, 0.4, 12.1, Vector2(0, 73.2), Vector2(0, -124.8))
|
||||||
|
animation.bezier_track_insert_key(track_index, 0.6, -41.9, Vector2(-0.095, 109.2), Vector2(0.062, -58.8))
|
||||||
|
animation.bezier_track_insert_key(track_index, 0.8, 13.3, Vector2(-0.188, 93.6), Vector2(0.196, 104.4))
|
||||||
|
animation.bezier_track_insert_key(track_index, 1.0, 0.0, Vector2(-0.155, -135.5), Vector2(0.25, 0))
|
||||||
|
|
||||||
|
return animation
|
||||||
|
|
||||||
|
func start_dissolve(node, material):
|
||||||
|
current_material = material
|
||||||
|
node.interpolate_method(self, "animate_dissolve", 0, 1, 1.5, Tween.TRANS_LINEAR, Tween.EASE_IN_OUT)
|
||||||
|
node.start()
|
||||||
|
|
||||||
|
func animate_dissolve(progress: float) -> void:
|
||||||
|
current_material.set_shader_param("dissolve_amount", ease(progress, 0.4))
|
||||||
Reference in New Issue
Block a user