2D 팀프로젝트 시작
오늘부터 팀 프로젝트가 다시 시작된다. 우리 팀은 Fire&Water을 기반으로 조금 각색하여 구현하기로 하였다.
불과 물이 아닌 불과 얼음! 고유 능력도 부여해서 여러 장애물을 헤쳐나갈 수 있도록 할 것이다.
내가 맡은 역할은 점수 구현하기(물론 나중에 도전 기능에서도 뭔갈 맡게 되겠지만 일단은 그렇다). 불, 얼음 플레이어가 다르게 획득할 코인, 공통으로 획득할 코인으로 나누고 코인별 점수가 달라 스테이지 클리어 후 등급을 매길 때 영향이 가도록 할 것이다. 오늘은 기획이랑 이것저것 회의하느라 많은걸 구현하진 않았지만 그래도 기록하고 싶은 것이 있어 기록해보겠다.
코인종류와 점수 등급을 정하기 위해 enum을 정의했다.
public enum GRADE
{
A,
B,
C
}
public enum COINTYPE
{
GOLD,
SILVER,
BRONZE,
FIRESTAR,
ICESTAR
}
ScoreConfig 스크립트는 ScriptableObject 를 상속받아 각 코인의 타입과 고정 점수를 설정할 수 있다. fileName 과 menuName 속성으로 기본 파일명과 메뉴 위치를 지정할 수 있다.
[CreateAssetMenu(fileName = "Score", menuName = "Coin")]
public class ScoreConfig : ScriptableObject
{
//각자 타입
[Header("타입")]
public COINTYPE coinType;
//각자 점수
[Header("고유 점수")]
public float coinScore;
}
[CreateAssetMenu]팀 프로젝트를 시작할땐 꼭 팀원들끼리 코드컨벤션과 깃 컨벤션을 잘 정하는 것이다. 그리고 다른 팀원의 스크립트에 접근해야 할때나 머지하기 전엔 꼭 팀원들과 소통하기!
내일은... ScoreUI를 만들어서 점수를 화면에 보여주는걸 해볼까 한다. 이 과정에서 ScoreCalculator이랑 ScoreManager까지 제작할 수 있을 것 같다.