Skip to content

Commit

Permalink
✨ feat: 게임 결과 저장 및 테스트
Browse files Browse the repository at this point in the history
  • Loading branch information
dlrjs2360 committed Sep 14, 2023
1 parent 5505c0d commit 2d12d93
Show file tree
Hide file tree
Showing 8 changed files with 14 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -275,7 +275,7 @@ public ResponseEntity<ResResult> isExistsProfile(
.build()
);
}

/*
// 레벨업
@PatchMapping("/levelup")
public ResponseEntity<ResResult> levelUp(
Expand All @@ -292,7 +292,7 @@ public ResponseEntity<ResResult> levelUp(
.data(memberService.levelUp(memberId))
.build()
);
}
}*/


// 멤버 게임 기록 조회
Expand Down
5 changes: 5 additions & 0 deletions src/main/java/com/springles/domain/entity/Member.java
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,9 @@ public String toString() {
+ ", role : " + role
+ ", isDeleted : " + isDeleted;
}

public void addGameRecord(GameRecord gameRecord) {
gameRecordList.add(gameRecord);
}

}
2 changes: 1 addition & 1 deletion src/main/java/com/springles/game/DayDiscussionManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ public void sendMessage(DayDiscussionMessage message) {
log.info("변론 후 최종 투표를 시작합니다.");
messageManager.sendMessage(
"/sub/chat/" + roomId,
"변론 시간이 종료되었습니다. 최종 투표를 진행합니다. 투표 시간은 30초 입니다.",
"변론 시간이 종료되었습니다. 최종 투표를 진행합니다. 투표 시간은 20초 입니다.",
roomId, "admin"
);
};
Expand Down
2 changes: 0 additions & 2 deletions src/main/java/com/springles/game/DayEliminationManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,6 @@ private void setDayToNight(GameSession gameSession, Long deadPlayerId) {
// 죽어서 관찰만 하는 사람들
List<Player> players = playerRedisRepository.findByRoomId(gameSession.getRoomId());



for (Player player : players) {
// 살아 있으면 패스
if (player.isAlive()) {
Expand Down
1 change: 0 additions & 1 deletion src/main/java/com/springles/game/DayToNightManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,6 @@ else if (gameSessionManager.mafiaWin(gameSession) == 0) {
);
}


log.info("game end");
gameSessionManager.endGame(gameSession.getRoomId());
messageManager.sendMessage(
Expand Down
3 changes: 2 additions & 1 deletion src/main/java/com/springles/game/GameSessionManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,8 @@ public void endGame(Long roomId) {
}
for (Member member : memberList) {
gameRecord.addMember(member);
memberService.levelUp(member.getId());
member.addGameRecord(gameRecord);
memberService.levelUp(member.getId(),gameRecord);
}

gameRecordJpaRepository.save(gameRecord);
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/springles/service/MemberService.java
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ public interface MemberService {
* */
Long existsUserProfile(String accessToken);

MemberProfileResponse levelUp(Long memberId);
MemberProfileResponse levelUp(Long memberId,GameRecord gameRecord);

Level nextLevel(Level rawLevel);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -607,16 +607,16 @@ public MemberProfileRead readProfile(String accessToken) {
* 레벨(경험치) 업데이트
*/
@Override
public MemberProfileResponse levelUp(Long memberId) {
public MemberProfileResponse levelUp(Long memberId, GameRecord gameRecord) {

// 해당 회원의 게임정보 호출
Optional<MemberGameInfo> optionalMemberGameInfo = memberGameInfoJpaRepository.findByMemberId(memberId);
if (optionalMemberGameInfo.isEmpty()) {
throw new CustomException(ErrorCode.NOT_FOUND_GAME_INFO);
}

// 가장 최근 게임기록
GameRecord gameRecord = gameRecordJpaRepository.findTOP1MemberIdOrderByIdDesc(memberId);
/* // 가장 최근 게임기록
GameRecord gameRecord = gameRecordJpaRepository.findTOP1MemberIdOrderByIdDesc(memberId);*/

// 현재 레벨
Level level = optionalMemberGameInfo.get().getLevel();
Expand Down

0 comments on commit 2d12d93

Please sign in to comment.