diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/BattleService.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/BattleService.java index 7f78e21fa..153539a56 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/BattleService.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/BattleService.java @@ -42,7 +42,7 @@ public List findMovesByPokemon(Integer pokedexNumber) { .toList(); return battleMoves.stream() - .map(this::toMoveResponseWithLogo) + .map(MoveResponse::from) .toList(); } @@ -51,15 +51,6 @@ private BattleMove findMoveById(String id) { .orElseThrow(() -> new GlobalCustomException(ErrorMessage.MOVE_NOT_FOUND)); } - private MoveResponse toMoveResponseWithLogo(BattleMove battleMove) { - Type moveType = battleMove.type(); - String typeLogo = moveType.getImage(); - MoveCategory moveCategory = battleMove.category(); - String categoryLogo = moveCategory.getImage(); - - return MoveResponse.of(battleMove, typeLogo, categoryLogo); - } - public BattleResultResponse calculateBattleResult( String weatherId, String myPokemonId, diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/MoveCategory.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/MoveCategory.java index e1c4f6aa7..41e47f2bf 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/MoveCategory.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/MoveCategory.java @@ -7,11 +7,11 @@ @Getter public enum MoveCategory { - STATUS("변화", "status", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/move-category/status.png"), + STATUS("변화", "status", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/move-category/status"), SPECIAL("특수", "special", - "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/move-category/special.png"), + "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/move-category/special"), PHYSICAL("물리", "physical", - "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/move-category/physical.png"), + "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/move-category/physical"), ; private final String name; @@ -33,4 +33,8 @@ public static Optional findByEngName(String name) { private boolean hasSameEngName(String name) { return this.engName.equals(name); } + + public String getImage() { + return image + ".png"; + } } diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/MoveResponse.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/MoveResponse.java index 161965384..8573d971e 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/MoveResponse.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/MoveResponse.java @@ -3,19 +3,26 @@ public record MoveResponse( String id, String name, + String typeEngName, String typeLogo, + String categoryEngName, String categoryLogo, Integer power, Integer accuracy, String effect ) { - public static MoveResponse of(BattleMove battleMove, String typeLogo, String categoryLogo) { + public static MoveResponse from(BattleMove battleMove) { + Type type = battleMove.type(); + MoveCategory moveCategory = battleMove.category(); + return new MoveResponse( battleMove.id(), battleMove.name(), - typeLogo, - categoryLogo, + type.getEngName(), + type.getImage(), + moveCategory.getEngName(), + moveCategory.getImage(), battleMove.power(), battleMove.accuracy(), battleMove.effect() diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/Type.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/Type.java index 9686ee162..122554782 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/Type.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/battle/Type.java @@ -1,32 +1,32 @@ package com.pokerogue.helper.battle; -import com.pokerogue.helper.global.exception.ErrorMessage; -import com.pokerogue.helper.global.exception.GlobalCustomException; import java.util.Arrays; import java.util.Optional; +import lombok.Getter; +@Getter public enum Type { - GRASS("grass", "풀", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/grass-1"), - POISON("poison", "독", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/poison-1"), - FIRE("fire", "불꽃", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/fire-1"), - WATER("water", "물", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/water-1"), - ELECTRIC("electric", "전기", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/electric-1"), - NORMAL("normal", "노말", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/normal-1"), - FAIRY("fairy", "페어리", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/fairy-1"), - BUG("bug", "벌레", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/bug-1"), - DARK("dark", "악", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/dark-1"), - DRAGON("dragon", "드래곤", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/dragon-1"), - FIGHTING("fighting", "격투", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/fighting-1"), - FLYING("flying", "비행", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/flying-1"), - GHOST("ghost", "고스트", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/ghost-1"), - GROUND("ground", "땅", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/ground-1"), - ICE("ice", "얼음", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/ice-1"), - ROCK("rock", "바위", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/rock-1"), - PSYCHIC("psychic", "에스퍼", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/psychic-1"), - STEEL("steel", "강철", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/steel-1"), - STELLAR("stellar", "스텔라", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/stellar-1"), - UNKNOWN("unknown", "언노운", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/unknown-1"), + GRASS("grass", "풀", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/grass"), + POISON("poison", "독", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/poison"), + FIRE("fire", "불꽃", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/fire"), + WATER("water", "물", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/water"), + ELECTRIC("electric", "전기", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/electric"), + NORMAL("normal", "노말", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/normal"), + FAIRY("fairy", "페어리", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/fairy"), + BUG("bug", "벌레", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/bug"), + DARK("dark", "악", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/dark"), + DRAGON("dragon", "드래곤", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/dragon"), + FIGHTING("fighting", "격투", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/fighting"), + FLYING("flying", "비행", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/flying"), + GHOST("ghost", "고스트", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/ghost"), + GROUND("ground", "땅", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/ground"), + ICE("ice", "얼음", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/ice"), + ROCK("rock", "바위", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/rock"), + PSYCHIC("psychic", "에스퍼", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/psychic"), + STEEL("steel", "강철", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/steel"), + STELLAR("stellar", "스텔라", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/stellar"), + UNKNOWN("unknown", "언노운", "https://dl70s9ccojnge.cloudfront.net/pokerogue-helper/pokerogue/type/unknown"), ; private final String engName; @@ -50,16 +50,4 @@ public static Optional findByEngName(String engName) { .filter(type -> type.engName.equals(engName)) .findAny(); } - - public String getImage() { - return image + ".png"; - } - - public String getName() { - return name; - } - - public String getEngName() { - return engName; - } }