mirror of
https://gitlab.com/MaddoScientisto/cirnogodot.git
synced 2026-06-19 07:43:47 +00:00
Fix tween movement
This commit is contained in:
parent
2205f9db91
commit
3019bbb88e
6 changed files with 90 additions and 24 deletions
|
|
@ -3,6 +3,7 @@
|
||||||
[ext_resource type="FontFile" uid="uid://coek1e2q257pq" path="res://fonts/at01.ttf" id="1_foybo"]
|
[ext_resource type="FontFile" uid="uid://coek1e2q257pq" path="res://fonts/at01.ttf" id="1_foybo"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
|
line_spacing = 1.0
|
||||||
font = ExtResource("1_foybo")
|
font = ExtResource("1_foybo")
|
||||||
font_size = 12
|
font_size = 12
|
||||||
outline_size = 3
|
outline_size = 3
|
||||||
|
|
|
||||||
|
|
@ -135,7 +135,7 @@ script = ExtResource("15_17yce")
|
||||||
|
|
||||||
[node name="LootDrops" type="Node2D" parent="."]
|
[node name="LootDrops" type="Node2D" parent="."]
|
||||||
script = ExtResource("16_76vwd")
|
script = ExtResource("16_76vwd")
|
||||||
LootDrops = Array[ExtResource("17_gsthm")]([SubResource("Resource_lh4qp"), SubResource("Resource_fmqd5"), SubResource("Resource_gry1a"), SubResource("Resource_6b6qx")])
|
LootDrops = [SubResource("Resource_lh4qp"), SubResource("Resource_fmqd5"), SubResource("Resource_gry1a"), SubResource("Resource_6b6qx")]
|
||||||
|
|
||||||
[connection signal="area_entered" from="PlayerDetection" to="PlayerDetection" method="_on_area_entered"]
|
[connection signal="area_entered" from="PlayerDetection" to="PlayerDetection" method="_on_area_entered"]
|
||||||
[connection signal="area_exited" from="PlayerDetection" to="PlayerDetection" method="_on_area_exited"]
|
[connection signal="area_exited" from="PlayerDetection" to="PlayerDetection" method="_on_area_exited"]
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=42 format=4 uid="uid://dqyfnby0t7gu1"]
|
[gd_scene load_steps=43 format=4 uid="uid://dqyfnby0t7gu1"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_c3v4x"]
|
[ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_c3v4x"]
|
||||||
[ext_resource type="Resource" uid="uid://cs3ihltcn2166" path="res://Resources/Items/IcicleGun.tres" id="3_6314l"]
|
[ext_resource type="Resource" uid="uid://cs3ihltcn2166" path="res://Resources/Items/IcicleGun.tres" id="3_6314l"]
|
||||||
|
|
@ -32,6 +32,7 @@
|
||||||
[ext_resource type="Resource" uid="uid://dau0s8ob7qnpc" path="res://Resources/Items/IceShotgun.tres" id="22_4gtx8"]
|
[ext_resource type="Resource" uid="uid://dau0s8ob7qnpc" path="res://Resources/Items/IceShotgun.tres" id="22_4gtx8"]
|
||||||
[ext_resource type="Resource" uid="uid://ct1fa2huvy34n" path="res://Resources/Items/Ammo1.tres" id="23_1ajuh"]
|
[ext_resource type="Resource" uid="uid://ct1fa2huvy34n" path="res://Resources/Items/Ammo1.tres" id="23_1ajuh"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bjskkeb3ppcs8" path="res://Scenes/Actors/Turret360.tscn" id="24_rff8l"]
|
[ext_resource type="PackedScene" uid="uid://bjskkeb3ppcs8" path="res://Scenes/Actors/Turret360.tscn" id="24_rff8l"]
|
||||||
|
[ext_resource type="LabelSettings" uid="uid://buk3e7bbwmnv1" path="res://Resources/Styles/Hud_Text_Style.tres" id="27_4rfvg"]
|
||||||
[ext_resource type="Script" uid="uid://bgertv72tq1dt" path="res://Scripts/Components/FSM/NewPlayerStateMachine.cs" id="34_2vu2h"]
|
[ext_resource type="Script" uid="uid://bgertv72tq1dt" path="res://Scripts/Components/FSM/NewPlayerStateMachine.cs" id="34_2vu2h"]
|
||||||
[ext_resource type="Script" uid="uid://btwuahxvreivs" path="res://Scripts/Components/FSM/Player/NewInit.cs" id="35_mpb62"]
|
[ext_resource type="Script" uid="uid://btwuahxvreivs" path="res://Scripts/Components/FSM/Player/NewInit.cs" id="35_mpb62"]
|
||||||
[ext_resource type="Script" uid="uid://dl50bcl8dx3k8" path="res://Scripts/Components/FSM/TestModule.cs" id="36_4rfvg"]
|
[ext_resource type="Script" uid="uid://dl50bcl8dx3k8" path="res://Scripts/Components/FSM/TestModule.cs" id="36_4rfvg"]
|
||||||
|
|
@ -39,7 +40,7 @@
|
||||||
[sub_resource type="Resource" id="Resource_6wo78"]
|
[sub_resource type="Resource" id="Resource_6wo78"]
|
||||||
script = ExtResource("4_u1i8n")
|
script = ExtResource("4_u1i8n")
|
||||||
EggIndex = 0
|
EggIndex = 0
|
||||||
StartingEquipment = Array[ExtResource("5_u1i8n")]([])
|
StartingEquipment = []
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_rff8l"]
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_rff8l"]
|
||||||
size = Vector2(30, 52.5)
|
size = Vector2(30, 52.5)
|
||||||
|
|
@ -62,7 +63,7 @@ PlayerTemplate = ExtResource("8_c3v4x")
|
||||||
SpawnMarkers = Dictionary[int, NodePath]({
|
SpawnMarkers = Dictionary[int, NodePath]({
|
||||||
0: NodePath("PlayerStartPosition")
|
0: NodePath("PlayerStartPosition")
|
||||||
})
|
})
|
||||||
StartingEquipment = Array[ExtResource("5_u1i8n")]([ExtResource("3_6314l"), ExtResource("4_yyg8m")])
|
StartingEquipment = [ExtResource("3_6314l"), ExtResource("4_yyg8m")]
|
||||||
MapStartData = SubResource("Resource_6wo78")
|
MapStartData = SubResource("Resource_6wo78")
|
||||||
|
|
||||||
[node name="Tilemaps" type="Node2D" parent="."]
|
[node name="Tilemaps" type="Node2D" parent="."]
|
||||||
|
|
@ -148,10 +149,20 @@ Targets = [NodePath("../../AcidHitboxes/LightBridge2")]
|
||||||
position = Vector2(154, 339)
|
position = Vector2(154, 339)
|
||||||
|
|
||||||
[node name="Teleporter2" parent="Tilemaps/Actors" node_paths=PackedStringArray("Target") instance=ExtResource("16_qmakk")]
|
[node name="Teleporter2" parent="Tilemaps/Actors" node_paths=PackedStringArray("Target") instance=ExtResource("16_qmakk")]
|
||||||
position = Vector2(119, 391)
|
position = Vector2(144, 392)
|
||||||
IsEnabled = true
|
IsEnabled = true
|
||||||
Target = NodePath("../Teleporter4")
|
Target = NodePath("../Teleporter4")
|
||||||
|
|
||||||
|
[node name="Teleporter3" parent="Tilemaps/Actors" node_paths=PackedStringArray("Target") instance=ExtResource("16_qmakk")]
|
||||||
|
position = Vector2(87, 392)
|
||||||
|
IsEnabled = true
|
||||||
|
Target = NodePath("../Teleporter5")
|
||||||
|
|
||||||
|
[node name="Teleporter5" parent="Tilemaps/Actors" node_paths=PackedStringArray("Target") instance=ExtResource("16_qmakk")]
|
||||||
|
position = Vector2(418, 196)
|
||||||
|
IsEnabled = true
|
||||||
|
Target = NodePath("../Teleporter3")
|
||||||
|
|
||||||
[node name="Teleporter4" parent="Tilemaps/Actors" node_paths=PackedStringArray("Target") instance=ExtResource("16_qmakk")]
|
[node name="Teleporter4" parent="Tilemaps/Actors" node_paths=PackedStringArray("Target") instance=ExtResource("16_qmakk")]
|
||||||
position = Vector2(183, 391)
|
position = Vector2(183, 391)
|
||||||
IsEnabled = true
|
IsEnabled = true
|
||||||
|
|
@ -167,6 +178,25 @@ LootTable = Array[ExtResource("5_u1i8n")]([ExtResource("19_1ajuh"), ExtResource(
|
||||||
[node name="Turret360" parent="Tilemaps/Actors" instance=ExtResource("24_rff8l")]
|
[node name="Turret360" parent="Tilemaps/Actors" instance=ExtResource("24_rff8l")]
|
||||||
position = Vector2(374, 503)
|
position = Vector2(374, 503)
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="Tilemaps/Actors"]
|
||||||
|
z_index = 1
|
||||||
|
offset_left = 142.0
|
||||||
|
offset_top = 400.0
|
||||||
|
offset_right = 189.0
|
||||||
|
offset_bottom = 423.0
|
||||||
|
text = "Teleportation
|
||||||
|
Test"
|
||||||
|
label_settings = ExtResource("27_4rfvg")
|
||||||
|
|
||||||
|
[node name="Label2" type="Label" parent="Tilemaps/Actors"]
|
||||||
|
z_index = 1
|
||||||
|
offset_left = 79.0
|
||||||
|
offset_top = 402.0
|
||||||
|
offset_right = 126.0
|
||||||
|
offset_bottom = 425.0
|
||||||
|
text = "Pools"
|
||||||
|
label_settings = ExtResource("27_4rfvg")
|
||||||
|
|
||||||
[node name="CameraController" type="Camera2D" parent="."]
|
[node name="CameraController" type="Camera2D" parent="."]
|
||||||
process_mode = 1
|
process_mode = 1
|
||||||
script = ExtResource("9_dj0ui")
|
script = ExtResource("9_dj0ui")
|
||||||
|
|
|
||||||
|
|
@ -177,6 +177,7 @@ RelativeTargetPosition = Vector2(0, -64)
|
||||||
MovementTime = 1.0
|
MovementTime = 1.0
|
||||||
EaseType = 2
|
EaseType = 2
|
||||||
TransitionType = 0
|
TransitionType = 0
|
||||||
|
GTweenEasing = 0
|
||||||
WaitForCompletion = true
|
WaitForCompletion = true
|
||||||
|
|
||||||
[sub_resource type="Resource" id="Resource_s2o7m"]
|
[sub_resource type="Resource" id="Resource_s2o7m"]
|
||||||
|
|
@ -214,7 +215,7 @@ SpawnMarkers = Dictionary[int, NodePath]({
|
||||||
2: NodePath("Factory Tilemaps/LevelProps/BossDebugTeleporterDestination"),
|
2: NodePath("Factory Tilemaps/LevelProps/BossDebugTeleporterDestination"),
|
||||||
255: NodePath("Factory Tilemaps/Debug Room/DebugRoomStartPosition")
|
255: NodePath("Factory Tilemaps/Debug Room/DebugRoomStartPosition")
|
||||||
})
|
})
|
||||||
StartingEquipment = Array[ExtResource("6_8tdlb")]([ExtResource("4_swym2"), ExtResource("5_nqier")])
|
StartingEquipment = [ExtResource("4_swym2"), ExtResource("5_nqier")]
|
||||||
MapStartData = SubResource("Resource_6sau4")
|
MapStartData = SubResource("Resource_6sau4")
|
||||||
metadata/_edit_lock_ = true
|
metadata/_edit_lock_ = true
|
||||||
|
|
||||||
|
|
@ -984,7 +985,7 @@ position = Vector2(-2000, -736)
|
||||||
[node name="ControlPad8" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("12_hfkf1")]
|
[node name="ControlPad8" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("12_hfkf1")]
|
||||||
position = Vector2(-2027, -735)
|
position = Vector2(-2027, -735)
|
||||||
Targets = [NodePath("../HorizontalForceField")]
|
Targets = [NodePath("../HorizontalForceField")]
|
||||||
Requirements = Array[ExtResource("6_8tdlb")]([ExtResource("84_ma1ta")])
|
Requirements = [ExtResource("84_ma1ta")]
|
||||||
|
|
||||||
[node name="IcicleRepeater2" parent="Factory Tilemaps/LevelProps" instance=ExtResource("32_xof4a")]
|
[node name="IcicleRepeater2" parent="Factory Tilemaps/LevelProps" instance=ExtResource("32_xof4a")]
|
||||||
position = Vector2(-923, 69)
|
position = Vector2(-923, 69)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,10 @@
|
||||||
using System.Threading.Tasks;
|
using System.Threading;
|
||||||
|
using System.Threading.Tasks;
|
||||||
using Godot;
|
using Godot;
|
||||||
|
using GTweens.Builders;
|
||||||
|
using GTweens.Easings;
|
||||||
|
using GTweens.Tweens;
|
||||||
|
using GTweensGodot.Extensions;
|
||||||
|
|
||||||
namespace Cirno.Scripts.Activables;
|
namespace Cirno.Scripts.Activables;
|
||||||
|
|
||||||
|
|
@ -18,7 +23,9 @@ public partial class PlayerMover : ChainActivable
|
||||||
public Tween.EaseType EaseType = Tween.EaseType.InOut;
|
public Tween.EaseType EaseType = Tween.EaseType.InOut;
|
||||||
|
|
||||||
[Export]
|
[Export]
|
||||||
public Tween.TransitionType TransitionType = Tween.TransitionType.Linear;
|
public Tween.TransitionType TransitionType { get; private set; } = Tween.TransitionType.Linear;
|
||||||
|
|
||||||
|
[Export] public GTweens.Easings.Easing GTweenEasing { get; private set; } = Easing.Linear;
|
||||||
|
|
||||||
public override void _Ready()
|
public override void _Ready()
|
||||||
{
|
{
|
||||||
|
|
@ -39,13 +46,24 @@ public partial class PlayerMover : ChainActivable
|
||||||
//_gameManager.Player.RequestMovementDisable(true);
|
//_gameManager.Player.RequestMovementDisable(true);
|
||||||
_gameManager.Player.SetState(PlayerState.Cutscene);
|
_gameManager.Player.SetState(PlayerState.Cutscene);
|
||||||
|
|
||||||
Tween tween = GetTree().CreateTween();
|
var gtween = GTweenSequenceBuilder.New()
|
||||||
tween.SetEase(EaseType);
|
.Append(_gameManager.Player.MainObject.TweenGlobalPosition(
|
||||||
tween.SetTrans(TransitionType);
|
_gameManager.Player.MainObject.GlobalPosition + RelativeTargetPosition, MovementTime)
|
||||||
tween.TweenProperty(_gameManager.Player, "global_position", _gameManager.Player.GlobalPosition + RelativeTargetPosition, MovementTime);
|
.SetEasing(GTweenEasing)
|
||||||
|
//.
|
||||||
|
)
|
||||||
|
.Build();
|
||||||
|
|
||||||
// Wait for the tween to finish
|
await gtween.PlayAsync(CancellationToken.None);
|
||||||
await ToSignal(tween, "finished");
|
|
||||||
|
|
||||||
|
// Tween tween = GetTree().CreateTween();
|
||||||
|
// tween.SetEase(EaseType);
|
||||||
|
// tween.SetTrans(TransitionType);
|
||||||
|
// tween.TweenProperty(_gameManager.Player, "global_position", _gameManager.Player.GlobalPosition + RelativeTargetPosition, MovementTime);
|
||||||
|
//
|
||||||
|
// // Wait for the tween to finish
|
||||||
|
// await ToSignal(tween, "finished");
|
||||||
|
|
||||||
//_gameManager.Player.RequestMovementDisable(false);
|
//_gameManager.Player.RequestMovementDisable(false);
|
||||||
_gameManager.Player.SetState(PlayerState.Cutscene);
|
_gameManager.Player.SetState(PlayerState.Cutscene);
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
using System.Threading.Tasks;
|
using System.Threading;
|
||||||
|
using System.Threading.Tasks;
|
||||||
using Godot;
|
using Godot;
|
||||||
|
using GTweens.Builders;
|
||||||
|
using GTweens.Easings;
|
||||||
|
using GTweensGodot.Extensions;
|
||||||
|
|
||||||
namespace Cirno.Scripts.Resources.Events;
|
namespace Cirno.Scripts.Resources.Events;
|
||||||
|
|
||||||
|
|
@ -18,6 +22,8 @@ public partial class MovePlayerEvent : EventResource
|
||||||
[Export]
|
[Export]
|
||||||
public Tween.TransitionType TransitionType = Tween.TransitionType.Linear;
|
public Tween.TransitionType TransitionType = Tween.TransitionType.Linear;
|
||||||
|
|
||||||
|
[Export] public GTweens.Easings.Easing GTweenEasing { get; private set; } = Easing.Linear;
|
||||||
|
|
||||||
private bool _isComplete = false;
|
private bool _isComplete = false;
|
||||||
|
|
||||||
private GameManager _gameManager;
|
private GameManager _gameManager;
|
||||||
|
|
@ -38,13 +44,23 @@ public partial class MovePlayerEvent : EventResource
|
||||||
GameManager.Instance.Player.SetState(PlayerState.Cutscene);
|
GameManager.Instance.Player.SetState(PlayerState.Cutscene);
|
||||||
//_gameManager.Player.RequestMovementDisable(true);
|
//_gameManager.Player.RequestMovementDisable(true);
|
||||||
|
|
||||||
Tween tween = _gameManager.GetTree().CreateTween();
|
var gtween = GTweenSequenceBuilder.New()
|
||||||
tween.SetEase(EaseType);
|
.Append(_gameManager.Player.MainObject.TweenGlobalPosition(
|
||||||
tween.SetTrans(TransitionType);
|
_gameManager.Player.MainObject.GlobalPosition + RelativeTargetPosition, MovementTime)
|
||||||
tween.TweenProperty(_gameManager.Player, "global_position", _gameManager.Player.GlobalPosition + RelativeTargetPosition, MovementTime);
|
.SetEasing(GTweenEasing)
|
||||||
|
//.
|
||||||
|
)
|
||||||
|
.Build();
|
||||||
|
|
||||||
// Wait for the tween to finish
|
await gtween.PlayAsync(CancellationToken.None);
|
||||||
await ToSignal(tween, "finished");
|
|
||||||
|
// Tween tween = _gameManager.GetTree().CreateTween();
|
||||||
|
// tween.SetEase(EaseType);
|
||||||
|
// tween.SetTrans(TransitionType);
|
||||||
|
// tween.TweenProperty(_gameManager.Player, "global_position", _gameManager.Player.GlobalPosition + RelativeTargetPosition, MovementTime);
|
||||||
|
//
|
||||||
|
// // Wait for the tween to finish
|
||||||
|
// await ToSignal(tween, "finished");
|
||||||
|
|
||||||
GameManager.Instance.Player.SetState(PlayerState.Active);
|
GameManager.Instance.Player.SetState(PlayerState.Active);
|
||||||
//_gameManager.Player.RequestMovementDisable(false);
|
//_gameManager.Player.RequestMovementDisable(false);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue