반성
오랜만입니다. 찡찡이아빠, 게임개발맨 세상속으로입니다.
이렇게 드문드문 개발 하면 안되는데... 체력의 한계인지 미루다 간만에 작업을 했습니다.
캐릭터 이동입니다.
우선은
1. AStar 알고리즘을 이용해서 캐릭터 이동 가능한 기반을 만들구요.
( AStar는 벽, 바닥없는 구멍 등을 피해서 이동하는 걸 도와줍니다 - 길찾기 기능이죠 )
2. 플레이어 턴일때 화면 클릭( 사용자 입력 ) 을 하면 해당 경로를 남은 액션에 넣어줍니다.
액션은 플레이어나 몬스터가 행동하는 행동 1개를 뜻합니다.
마법 캐스팅, 우측의 적공격, 물약 마시기, 템 줍기와 같죠.
인벤토리 열기, 닫기등은 액션에 포함되지 않습니다. 입출력 단에서 해결합니다.
3. 액션이 있는 경우 해당 액션의 내용에 따라 데이터를 변경하고 화면에 그려줍니다. ( 액션 체크 상태 )
( 위치가 이동되었다면 이동된 위치에 캐릭터를 그려줍니다 )
4. 몬스터 턴이 다 지나고, 플레이어 턴으로 돌아왔을때
액션 리스트가 비어있지 않는 경우 ( 3칸 이동을 했는데 이전턴에 1칸 이동만 한 경우 2칸 이동 경로가 남아있을 겁니다 )
플레이어는 입력을 하지 못하고 남은 것 중 첫번째 액션을 따라 자동으로 이동합니다 ( 액션이 비어있는 경우는 키보드, 마우스, 터치 입력을 받습니다 )
제가 좋아하는 로그라이크인 돌죽에서는 이렇게 액션이 남은 경우라도 적으로부터 피격 당하거나
새로운 몬스터가 시야에 들어오면 남은 행동을 하지 않고 ( 액션리스트를 비우고 )
사용자에게 입력가능한 턴을 돌려주는데 이것은 나중에 작업하기로 하죠.
결과물 - 움짤
다음 목표
이제 이동이 가능하게 되었으니
몬스터 AI도 넣어야 될 상황입니다.
다음은 잠자기 상태에서 플레이어를 인식하고 깨어나는 몬스터를 만들어보도록 하겠습니다.
잠자기 상태를 기록할 ( 버프/디버프 ), 와 몬스터 턴에 사용될 몬스터별 AI가 필요하겠네요
우선은 잠에서 깨는 것 뿐이지만요 ㅎㅎ
저도 게임 한번만들고싶네요
어렵나요?
팔로 꾸욱~❤
ㅎㅎ 저도 공부하면서 하는거라 쉽지는 않은거 같아요. 근데 재미있어요 ㅋㅋ
게임 만드는 건 참 잼나지요 ^^ 응원 합니다.
ㅎㅎ 응원 감사합니다! 힘낼게요!
오오 몬스터 AI 부분은 좀 자세히 설명 부탁할게요! 차후 크립토게임 만들려고 하는 1인으로 흥미로운 연재네요ㅎㅎ
AI는 사실 저도 하는데 인터넷에 있던 좋은 자료 보고 하는거라 자료 공유하도록 할게요. ㅎㅎㅎ 근데 완성이 되야 포스팅도 하는데 시간이 좀 걸릴거 같아요 ㅋㅋㅋ
앗 '좋은 자료' 매우 궁금하군요ㅎㅎ 기다릴게요!!
hi @sesangsokuro, nice to see you again.
thank you for making me grow in steemit
Congratulations @sesangsokuro! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Vote for @Steemitboard as a witness to get one more award and increased upvotes!