Skip to content

Commit f2a04e2

Browse files
committed
Refactor HP Bars
Enforced signal up call down. Removed signals from BattleDirector to HP bars.
1 parent 2f03e1d commit f2a04e2

3 files changed

Lines changed: 14 additions & 28 deletions

File tree

scenes/ChartViewport/BattleDirector.cs

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ public partial class BattleDirector : Node2D
1616
[Export]
1717
public NoteManager NM;
1818

19+
private Player Player;
20+
private Enemy Enemy;
21+
1922
private double _timingInterval = .1; //secs
2023

2124
[Signal]
@@ -44,8 +47,11 @@ public struct SongData
4447
public override void _Ready()
4548
{
4649
AddExampleNote();
47-
4850
CM.PrepChart(_curSong, _notes);
51+
52+
Player = GetNode<Player>("PlayerObject");
53+
Enemy = GetNode<Enemy>("EnemyObject");
54+
4955
//TODO: Hook up signals
5056
CM.Connect(nameof(NoteManager.NotePressed), new Callable(this, nameof(OnNotePressed)));
5157
CM.Connect(nameof(NoteManager.NoteReleased), new Callable(this, nameof(OnNoteReleased)));
@@ -67,6 +73,7 @@ public override void _Process(double delta)
6773
//Cycle note queue
6874
_laneNotes[i].First().Beat += CM._beatsPerLoop;
6975
_laneNotes[i] = _laneNotes[i].Skip(1).Concat(_laneNotes[i].Take(1)).ToArray(); //TODO: No stackoverflow code
76+
Player.PlayerTakeDamage(10);
7077
CM.HandleNote((NoteArrow.ArrowType)i);
7178
}
7279
}
@@ -134,22 +141,22 @@ private void CheckNoteTiming(NoteArrow.ArrowType type)
134141
if (beatDif < _timingInterval * 2)
135142
{
136143
GD.Print("Perfect");
137-
EmitSignal(nameof(EnemyDamage), 10);
144+
Enemy.EnemyTakeDamage(10);
138145
}
139146
else if (beatDif < _timingInterval * 4)
140147
{
141148
GD.Print("Good");
142-
EmitSignal(nameof(EnemyDamage), 5);
149+
Enemy.EnemyTakeDamage(5);
143150
}
144151
else if (beatDif < _timingInterval * 6)
145152
{
146153
GD.Print("Okay");
147-
EmitSignal(nameof(EnemyDamage), 1);
154+
Enemy.EnemyTakeDamage(1);
148155
}
149156
else
150157
{
151158
GD.Print("Miss");
152-
EmitSignal(nameof(PlayerDamage), 10);
159+
Player.PlayerTakeDamage(10);
153160
}
154161
}
155162
}

scenes/ChartViewport/Enemy.cs

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@ public partial class Enemy : Node2D
66
[Export]
77
public HealthBar EnemyHealthBar;
88

9-
[Export]
10-
public BattleDirector BattleDirectorInstance;
11-
129
private int _enemyMaxHealth = 100;
1310

1411
public override void _Ready()
@@ -17,17 +14,9 @@ public override void _Ready()
1714
{
1815
EnemyHealthBar.SetHealth(_enemyMaxHealth, _enemyMaxHealth);
1916
}
20-
21-
if (BattleDirectorInstance != null)
22-
{
23-
BattleDirectorInstance.Connect(
24-
(nameof(BattleDirectorInstance.EnemyDamage)),
25-
new Callable(this, nameof(EnemyTakeDamage))
26-
);
27-
}
2817
}
2918

30-
private void EnemyTakeDamage(int damage)
19+
public void EnemyTakeDamage(int damage)
3120
{
3221
EnemyHealthBar.TakeDamage(damage);
3322
GD.Print("Enemy takes damage:" + damage);

scenes/ChartViewport/Player.cs

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@ public partial class Player : Node2D
66
[Export]
77
public HealthBar PlayerHealthBar;
88

9-
[Export]
10-
public BattleDirector BattleDirectorInstance;
119
private int _playerHealthMax = 100;
1210
private int _playerHealth = 100;
1311

@@ -17,17 +15,9 @@ public override void _Ready()
1715
{
1816
PlayerHealthBar.SetHealth(_playerHealthMax, _playerHealth);
1917
}
20-
21-
if (BattleDirectorInstance != null)
22-
{
23-
BattleDirectorInstance.Connect(
24-
(nameof(BattleDirectorInstance.PlayerDamage)),
25-
new Callable(this, nameof(PlayerTakeDamage))
26-
);
27-
}
2818
}
2919

30-
private void PlayerTakeDamage(int damage)
20+
public void PlayerTakeDamage(int damage)
3121
{
3222
GD.Print("Player taking damage: " + damage);
3323
PlayerHealthBar.TakeDamage(damage);

0 commit comments

Comments
 (0)