sum fixes
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://dqv03pua4j8ga"]
|
||||
[gd_scene load_steps=6 format=3 uid="uid://dqv03pua4j8ga"]
|
||||
|
||||
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_owv8t"]
|
||||
[ext_resource type="PackedScene" uid="uid://bt5rolsyjmx55" path="res://Scenes/MeleeEnemyOrb.tscn" id="5_dqbra"]
|
||||
[ext_resource type="PackedScene" uid="uid://bnn68u04ktmas" path="res://Levels/Final Levels/Stage1/Stage1Fix.tscn" id="6_60jd6"]
|
||||
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="6_gegi6"]
|
||||
[ext_resource type="PackedScene" uid="uid://dahp73fwld24h" path="res://Scenes/RangedEnemy.tscn" id="6_jck5a"]
|
||||
@@ -24,11 +23,9 @@ transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
|
||||
shape = SubResource("CylinderShape3D_kv6vl")
|
||||
|
||||
[node name="MeleeEnemyOrb" parent="." instance=ExtResource("5_dqbra")]
|
||||
|
||||
[node name="Node3D" parent="." instance=ExtResource("6_jck5a")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, 0)
|
||||
|
||||
[node name="STAGE 1" parent="." instance=ExtResource("6_60jd6")]
|
||||
|
||||
[node name="RangedEnemy" parent="." instance=ExtResource("6_jck5a")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 0, 0)
|
||||
|
||||
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]
|
||||
|
||||
@@ -9,13 +9,12 @@ size = Vector3(0.470892, 0.604331, 0.423598)
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_i1yvp"]
|
||||
size = Vector3(0.470892, 0.604331, 0.423598)
|
||||
|
||||
[node name="MeleeEnemyOrb" type="Node3D"]
|
||||
[node name="MeleeEnemyOrb" type="Node3D" groups=["Enemy"]]
|
||||
|
||||
[node name="CharacterBody3D" type="CharacterBody3D" parent="."]
|
||||
collision_layer = 4096
|
||||
collision_mask = 0
|
||||
script = ExtResource("1_50och")
|
||||
_speed = 0.5
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="CharacterBody3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0840461, 0.475385, 0.143401)
|
||||
@@ -31,4 +30,4 @@ collision_mask = 2
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0840461, 0.475385, 0.143401)
|
||||
shape = SubResource("BoxShape3D_i1yvp")
|
||||
|
||||
[connection signal="body_entered" from="CharacterBody3D/Area3D" to="CharacterBody3D" method="OnHit"]
|
||||
[connection signal="body_entered" from="CharacterBody3D/Area3D" to="CharacterBody3D" method="OnEnemyHit"]
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_dm3u7"]
|
||||
size = Vector3(0.849075, 2.18529, 0.924281)
|
||||
|
||||
[node name="RangedEnemy" type="Node3D"]
|
||||
[node name="RangedEnemy" type="Node3D" groups=["Enemy"]]
|
||||
script = ExtResource("1_01lvj")
|
||||
|
||||
[node name="Area3D" type="Area3D" parent="."]
|
||||
@@ -29,5 +29,5 @@ script = ExtResource("3_qt2md")
|
||||
_enemy = NodePath("../Area3D")
|
||||
_fireProjectile = ExtResource("3_qenx3")
|
||||
|
||||
[connection signal="body_entered" from="Area3D" to="." method="OnHit"]
|
||||
[connection signal="body_entered" from="Area3D" to="." method="OnEnemyHit"]
|
||||
[connection signal="timeout" from="Timer" to="Timer" method="OnFireAtPlayer"]
|
||||
|
||||
@@ -115,22 +115,3 @@ grow_vertical = 2
|
||||
scale = Vector2(0.3, 0.3)
|
||||
texture = ExtResource("1_id5nf")
|
||||
expand_mode = 1
|
||||
|
||||
[node name="Button" type="Button" parent="CharacterSelect"]
|
||||
layout_mode = 0
|
||||
offset_left = 64.0
|
||||
offset_top = 774.0
|
||||
offset_right = 336.0
|
||||
offset_bottom = 889.0
|
||||
text = "Character select"
|
||||
|
||||
[node name="Button2" type="Button" parent="CharacterSelect"]
|
||||
layout_mode = 0
|
||||
offset_left = 1589.0
|
||||
offset_top = 785.0
|
||||
offset_right = 1861.0
|
||||
offset_bottom = 900.0
|
||||
text = "Character select"
|
||||
|
||||
[connection signal="pressed" from="CharacterSelect/Button" to="." method="OnFirstPlayerCharacterSelect"]
|
||||
[connection signal="pressed" from="CharacterSelect/Button2" to="." method="OnSecondPlayerCharacterSelect"]
|
||||
|
||||
@@ -41,3 +41,8 @@ transform = Transform3D(0.08, 0, 0, 0, 0.08, 0, 0, 0, 0.08, -0.379318, 1.02602,
|
||||
centered = false
|
||||
axis = 1
|
||||
texture = ExtResource("2_6l2aj")
|
||||
|
||||
[node name="TTL" type="Timer" parent="."]
|
||||
process_callback = 0
|
||||
wait_time = 0.8
|
||||
autostart = true
|
||||
|
||||
@@ -29,3 +29,10 @@ transform = Transform3D(0.07, 0, 0, 0, 0.07, 0, 0, 0, 0.07, -0.244938, 1.29552,
|
||||
centered = false
|
||||
axis = 1
|
||||
texture = ExtResource("1_nmsa0")
|
||||
|
||||
[node name="TTL" type="Timer" parent="."]
|
||||
process_callback = 0
|
||||
wait_time = 0.8
|
||||
autostart = true
|
||||
|
||||
[connection signal="timeout" from="TTL" to="." method="OnTimeToLiveTimeout"]
|
||||
|
||||
@@ -32,6 +32,7 @@ texture = ExtResource("2_1dg7p")
|
||||
|
||||
[node name="TTL" type="Timer" parent="."]
|
||||
process_callback = 0
|
||||
wait_time = 0.2
|
||||
autostart = true
|
||||
|
||||
[connection signal="timeout" from="TTL" to="." method="OnTimeToLiveTimeout"]
|
||||
|
||||
20
Scripts/BasicEnemy.cs
Normal file
20
Scripts/BasicEnemy.cs
Normal file
@@ -0,0 +1,20 @@
|
||||
using Godot;
|
||||
|
||||
public partial class BasicEnemy : Node3D
|
||||
{
|
||||
protected GameManager _gameManager;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
_gameManager = GetTree().Root.GetNode<GameManager>("Main/GameManager");
|
||||
}
|
||||
|
||||
public void OnEnemyHit(Node3D node)
|
||||
{
|
||||
QueueFree();
|
||||
if (_gameManager.CheckAllEnemiesDefeated())
|
||||
{
|
||||
_gameManager.OnAllEnemiesDefeated();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -20,7 +20,6 @@ public partial class GameManager : Node
|
||||
|
||||
public IEnumerable<Player> Players = new List<Player>();
|
||||
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
foreach (var playerScene in PlayerScenes)
|
||||
@@ -31,6 +30,19 @@ public partial class GameManager : Node
|
||||
}
|
||||
}
|
||||
|
||||
public void OnAllEnemiesDefeated()
|
||||
{
|
||||
GD.Print("All enemies defeated");
|
||||
P1CharactersOut.AddRange(Players.ElementAt(0).CharactersLeftOnStage);
|
||||
P2CharactersOut.AddRange(Players.ElementAt(1).CharactersLeftOnStage);
|
||||
OnLevelClear();
|
||||
}
|
||||
|
||||
public bool CheckAllEnemiesDefeated()
|
||||
{
|
||||
return !GetTree().GetNodesInGroup("Enemy").Any();
|
||||
}
|
||||
|
||||
public void OnHandleCharacterSelectUI(Player player)
|
||||
{
|
||||
EmitSignal(SignalName.ReselectCharacter, player);
|
||||
|
||||
6
Scripts/Level.cs
Normal file
6
Scripts/Level.cs
Normal file
@@ -0,0 +1,6 @@
|
||||
using Godot;
|
||||
|
||||
public partial class Level : Node3D
|
||||
{
|
||||
|
||||
}
|
||||
@@ -17,18 +17,4 @@ public partial class MeleeEnemy : BasicEnemy
|
||||
LookAt(-target.Position, Vector3.Up);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public partial class BasicEnemy : Node3D
|
||||
{
|
||||
public void OnHit(Node3D node)
|
||||
{
|
||||
QueueFree();
|
||||
}
|
||||
|
||||
private void DebugOnHit()
|
||||
{
|
||||
var node = new Node3D();
|
||||
OnHit(node);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -14,9 +14,4 @@ public partial class RangedEnemy : BasicEnemy
|
||||
area.LookAt(target.Position, Vector3.Up);
|
||||
}
|
||||
}
|
||||
public void OnHit(Node node)
|
||||
{
|
||||
GD.Print("Hit detected");
|
||||
QueueFree();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user