Skip to content

Commit f9dfd8e

Browse files
committed
fix: fix logic to check level up
1 parent faa89ff commit f9dfd8e

File tree

3 files changed

+8
-7
lines changed

3 files changed

+8
-7
lines changed

src/main/java/com/dinosaur/dinosaurexploder/controller/DinosaurController.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -250,8 +250,7 @@ public void initPhysics() {
250250
}
251251
projectile.removeFromWorld();
252252
greenDino.removeFromWorld();
253-
collisionHandler.onProjectileHitDino(score.getComponent(ScoreComponent.class));
254-
if (levelManager.shouldAdvanceLevel()) {
253+
if (collisionHandler.isLevelUpAfterHitDino(score.getComponent(ScoreComponent.class))) {
255254
showLevelMessage();
256255
System.out.println("Level up!");
257256
}

src/main/java/com/dinosaur/dinosaurexploder/model/CollisionHandler.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ public CollisionHandler(LevelManager levelManager) {
1515
this.levelManager = levelManager;
1616
}
1717

18-
public void onProjectileHitDino(ScoreComponent scoreComponent) {
18+
public boolean isLevelUpAfterHitDino(ScoreComponent scoreComponent) {
1919
scoreComponent.incrementScore(1);
2020
levelManager.incrementDefeatedEnemies();
2121

22-
adjustLevel();
22+
return adjustLevel();
2323
}
2424

2525
public void handleHitBoss(RedDinoComponent redDinoComponent) {
@@ -53,9 +53,11 @@ public void onPlayerGetHeart(LifeComponent lifeComponent) {
5353
lifeComponent.increaseLife(1);
5454
}
5555

56-
private void adjustLevel() {
56+
private boolean adjustLevel() {
5757
if (levelManager.shouldAdvanceLevel()) {
5858
levelManager.nextLevel();
59+
return true;
5960
}
61+
return false;
6062
}
6163
}

src/test/java/com/dinosaur/dinosaurexploder/model/CollisionHandlerTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ void setUp() {
3535
void projectileHitDino_thenLevelUp() {
3636
ScoreComponent scoreComponent = new ScoreComponent();
3737

38-
for (int i = 0; i < LEVEL_UP_COUNT; i++) collisionHandler.onProjectileHitDino(scoreComponent);
38+
for (int i = 0; i < LEVEL_UP_COUNT; i++) collisionHandler.isLevelUpAfterHitDino(scoreComponent);
3939

4040
assertEquals(2, levelManager.getCurrentLevel());
4141
}
@@ -44,7 +44,7 @@ void projectileHitDino_thenLevelUp() {
4444
void projectileHitDino_thenScoreIncrease() {
4545
ScoreComponent scoreComponent = new ScoreComponent();
4646

47-
collisionHandler.onProjectileHitDino(scoreComponent);
47+
collisionHandler.isLevelUpAfterHitDino(scoreComponent);
4848

4949
assertEquals(1, scoreComponent.getScore());
5050
}

0 commit comments

Comments
 (0)