코로나로 방구석 갇혀서 심심풀이로 텍스트게임 만들고 있는데
갑자기 머리가 꼬였어용...
예를 들어 어떤 칼이 장착하면 캐릭터의 힘을 +3 해준다고 쳐볼게요
근데 캐릭터가 하나가 아니라서
character 클래스를 만들어서 그 클래스 배열에 여러 캐릭터들을 저장해야 해요
물론 무기아이템도 여러종류라서 클래스 상속시켜서 만들거고..
그러니까
class item
string name
int attack
특수효과 <-요게 문제
class character
string name
int 힘,민첩,체력
item equip
대충 요런 두개의 클래스가 있을때
item sword = new item(칼,10,힘+3)
character 주인공 = new character(이름,10,10,10,sword)
요렇게 했단 말이죠
이걸 가지고 전투나 상태창을 띄울때 표시하고 싶은데
어떤식으로 해야 안꼬이고 깔끔할까요?
그러니까 저 character 객체가 가지고 있는 item이라는 클래스 내의 요소를 가지고 character의 값을 바꿀 깔쌈한 방법이 생각이 안나요
상태창 함수 실행할때 item 까봐서 if문 줄줄이 붙여서 경우마다 다 만들어놓으면 되긴 할텐데
너무 더러븐것 같아서
아이템 교체할때 효과가 바뀌는 것도 준비해야되는데
지금 맥주 한잔해서 그런가 머리가 돌됐음...
그냥 아이템마다 아이템넘버를 붙여놓고 상태창이나 전투때마다 아이템번호 보고 값에 가중치주는식으로 할까요? 너무 하드코딩 같은데
스텟을 인터페이스로 만들면 안됨?
스탯을 인터페이스로 만들라는게 캐릭터의 스탯을 말하는거임 아님 칼에 붙어있는 스탯을 말하는거임? 그렇게 하더라도 일단 캐릭터쪽 밸류를 건드릴 방법이 생각이 안남... 몬가... 몬가 있을텐데
굳이 칼스텟 캐릭터스텟을 왜구분함. 그냥 더해주면 되는데