Fixed teleporters

This commit is contained in:
Maddo 2025-03-05 12:27:15 +01:00
commit 49cfb52d20
15 changed files with 102 additions and 84 deletions

View file

@ -1,5 +1,6 @@
[gd_scene load_steps=41 format=3 uid="uid://c4pr2707hbeph"]
[gd_scene load_steps=42 format=3 uid="uid://c4pr2707hbeph"]
[ext_resource type="Script" uid="uid://d2ubk5gucny6s" path="res://Scripts/Components/FSM/PlayerFSMProxy.cs" id="1_g3wua"]
[ext_resource type="Script" uid="uid://bw2hakslndaxm" path="res://Scripts/Components/FSM/PlayerStateMachine.cs" id="1_mpmil"]
[ext_resource type="Script" uid="uid://chwqogny2v8t1" path="res://Scripts/Components/FSM/Player/Init.cs" id="2_i6wc8"]
[ext_resource type="Script" uid="uid://bl0o35xt8wxtg" path="res://Scripts/Components/FSM/Player/Active.cs" id="3_3tuio"]
@ -109,56 +110,56 @@ radius = 17.2627
[sub_resource type="CircleShape2D" id="CircleShape2D_g3wua"]
radius = 9.0
[node name="FSMPlayer" type="CharacterBody2D"]
[node name="FSMPlayer" type="CharacterBody2D" node_paths=PackedStringArray("PlayerFSM", "InteractionController")]
process_mode = 1
collision_layer = 2
collision_mask = 97
platform_wall_layers = 97
script = ExtResource("1_mpmil")
script = ExtResource("1_g3wua")
PlayerFSM = NodePath("StateMachine")
InteractionController = NodePath("InteractionController")
metadata/_edit_group_ = true
[node name="Init" type="Node2D" parent="." node_paths=PackedStringArray("_animationProvider")]
[node name="StateMachine" type="Node2D" parent="."]
script = ExtResource("1_mpmil")
[node name="Init" type="Node2D" parent="StateMachine" node_paths=PackedStringArray("_animationProvider")]
script = ExtResource("2_i6wc8")
_animationProvider = NodePath("../AnimationProvider")
_animationProvider = NodePath("../../AnimationProvider")
[node name="Active" type="Node2D" parent="." node_paths=PackedStringArray("_weaponProvider", "_animationProvider", "_crosshairProvider", "_hitboxSpriteProvider", "_inputProvider", "_damageReceiver", "_activationProvider", "_interactionController")]
[node name="Active" type="Node2D" parent="StateMachine" node_paths=PackedStringArray("_weaponProvider", "_animationProvider", "_crosshairProvider", "_hitboxSpriteProvider", "_inputProvider", "_damageReceiver", "_activationProvider", "_interactionController", "_moduleNodes")]
script = ExtResource("3_3tuio")
_weaponProvider = NodePath("../WeaponProvider")
_animationProvider = NodePath("../AnimationProvider")
_crosshairProvider = NodePath("../CrosshairProvider")
_hitboxSpriteProvider = NodePath("../StrafeSpriteProvider")
_inputProvider = NodePath("../InputProvider")
_damageReceiver = NodePath("../DamageReceiver")
_activationProvider = NodePath("../InteractionProvider")
_interactionController = NodePath("../InteractionController")
State = 1
_weaponProvider = NodePath("../../WeaponProvider")
_animationProvider = NodePath("../../AnimationProvider")
_crosshairProvider = NodePath("../../CrosshairProvider")
_hitboxSpriteProvider = NodePath("../../StrafeSpriteProvider")
_inputProvider = NodePath("../../InputProvider")
_damageReceiver = NodePath("../../DamageReceiver")
_activationProvider = NodePath("../../InteractionProvider")
_interactionController = NodePath("../../InteractionController")
_moduleNodes = [NodePath("../../InteractionController")]
[node name="Cutscene" type="Node2D" parent="." node_paths=PackedStringArray("_animationProvider")]
[node name="Cutscene" type="Node2D" parent="StateMachine" node_paths=PackedStringArray("_animationProvider")]
script = ExtResource("4_22ff8")
_animationProvider = NodePath("../AnimationProvider")
State = 2
_animationProvider = NodePath("../../AnimationProvider")
[node name="Teleporting" type="Node2D" parent="." node_paths=PackedStringArray("_animationProvider")]
[node name="Teleporting" type="Node2D" parent="StateMachine" node_paths=PackedStringArray("_animationProvider")]
script = ExtResource("5_yifvs")
_animationProvider = NodePath("../AnimationProvider")
State = 3
_animationProvider = NodePath("../../AnimationProvider")
[node name="UnTeleporting" type="Node2D" parent="." node_paths=PackedStringArray("_animationProvider")]
[node name="UnTeleporting" type="Node2D" parent="StateMachine" node_paths=PackedStringArray("_animationProvider")]
script = ExtResource("6_7n10g")
_animationProvider = NodePath("../AnimationProvider")
State = 4
_animationProvider = NodePath("../../AnimationProvider")
[node name="Controlling" type="Node2D" parent="." node_paths=PackedStringArray("_animationProvider")]
[node name="Controlling" type="Node2D" parent="StateMachine" node_paths=PackedStringArray("_animationProvider")]
script = ExtResource("6_82vrk")
_animationProvider = NodePath("../AnimationProvider")
State = 5
_animationProvider = NodePath("../../AnimationProvider")
[node name="Dead" type="Node2D" parent="." node_paths=PackedStringArray("_animationProvider", "_inputProvider", "_healthProvider")]
[node name="Dead" type="Node2D" parent="StateMachine" node_paths=PackedStringArray("_animationProvider", "_inputProvider", "_healthProvider")]
script = ExtResource("4_0pqs8")
_animationProvider = NodePath("../AnimationProvider")
_inputProvider = NodePath("../InputProvider")
_healthProvider = NodePath("../DamageReceiver/HealthProvider")
State = 6
_animationProvider = NodePath("../../AnimationProvider")
_inputProvider = NodePath("../../InputProvider")
_healthProvider = NodePath("../../DamageReceiver/HealthProvider")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_b3hxm")

View file

@ -53,4 +53,4 @@ process_mode = 3
stream = ExtResource("4_ildd2")
max_distance = 100.0
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
[connection signal="area_entered" from="." to="." method="_on_area_entered"]

View file

@ -7,7 +7,7 @@ public partial class InteractionController : PlayerArea2DModule
{
[Export] public ActorResourceProvider Health { get; private set; }
[Export] public ActorResourceProvider Shield { get; private set; }
private bool _enabled = false;
public bool Enabled
@ -23,7 +23,7 @@ public partial class InteractionController : PlayerArea2DModule
}
}
}
[Signal]
public delegate void InteractionStartedEventHandler();
@ -39,16 +39,16 @@ public partial class InteractionController : PlayerArea2DModule
public override void Init(IStateMachine<PlayerState, CharacterBody2D> machine)
{
base.Init(machine);
}
public override void Process(double delta)
{
}
public override void PhysicsProcess(double delta)
{
}
}

View file

@ -1,7 +1,8 @@
[gd_scene load_steps=7 format=3 uid="uid://cvctgw8eo2f7e"]
[gd_scene load_steps=8 format=3 uid="uid://cvctgw8eo2f7e"]
[ext_resource type="Script" uid="uid://b3h7b30kerf60" path="res://Scripts/Interactables/ItemPickup.cs" id="1_bdsed"]
[ext_resource type="Resource" uid="uid://dhbltvgsa3g88" path="res://Resources/Items/Spider_Bomb_Pickup.tres" id="2_bdsed"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_fyf8h"]
[ext_resource type="Texture2D" uid="uid://huo14jdekj6n" path="res://Sprites/Bullets/spiderbomb.png" id="3_bdsed"]
[sub_resource type="CircleShape2D" id="CircleShape2D_6vv2s"]
@ -25,7 +26,7 @@ animations = [{
collision_layer = 4
collision_mask = 2
script = ExtResource("1_bdsed")
LootTable = [ExtResource("2_bdsed")]
LootTable = Array[ExtResource("2_fyf8h")]([ExtResource("2_bdsed")])
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_6vv2s")

View file

@ -62,7 +62,7 @@ PlayerTemplate = ExtResource("8_c3v4x")
SpawnMarkers = Dictionary[int, NodePath]({
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")
[node name="Tilemaps" type="Node2D" parent="."]
@ -189,7 +189,7 @@ position = Vector2(124, 338)
script = ExtResource("12_8to53")
[node name="PlayerStartPosition" type="Marker2D" parent="."]
position = Vector2(371, 180)
position = Vector2(149, 367)
[node name="AlarmManager" type="Node2D" parent="."]
process_mode = 1

View file

@ -214,7 +214,7 @@ SpawnMarkers = Dictionary[int, NodePath]({
2: NodePath("Factory Tilemaps/LevelProps/BossDebugTeleporterDestination"),
255: NodePath("Factory Tilemaps/Debug Room/DebugRoomStartPosition")
})
StartingEquipment = [ExtResource("4_swym2"), ExtResource("5_nqier")]
StartingEquipment = Array[ExtResource("6_8tdlb")]([ExtResource("4_swym2"), ExtResource("5_nqier")])
MapStartData = SubResource("Resource_6sau4")
metadata/_edit_lock_ = true
@ -984,7 +984,7 @@ position = Vector2(-2000, -736)
[node name="ControlPad8" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("12_hfkf1")]
position = Vector2(-2027, -735)
Targets = [NodePath("../HorizontalForceField")]
Requirements = [ExtResource("84_ma1ta")]
Requirements = Array[ExtResource("6_8tdlb")]([ExtResource("84_ma1ta")])
[node name="IcicleRepeater2" parent="Factory Tilemaps/LevelProps" instance=ExtResource("32_xof4a")]
position = Vector2(-923, 69)