들어가는 글: 한동안 글쓰기를 쉬었었네요 / 오랜만에 새로운 기획으로 돌아왔습니다 :-)
게임을 만드는 것은 아니구요,
간단한 자바 코딩을 활용하여
삼국지 게임의 다양한 요소들을 실행해보려고 합니다.
> 장수도 정의해보고
> 훈련도 해보고
> 내정 (상업 개발, 개간, 치수, 군량사기, 군마사기, 군마 팔기 등)
> 장수 이동도 해보고
> 전쟁(?? 이건 얼마나 구현할 수 있을지 모르겠네요 ㅎ) 등등
앞으로 생각나는데로 코딩할 것이며 정리되면 깃헙에도 올릴 예정입니다.
순전히 흥미로(just for fun) 하는 것입니다.
깃헙 경로: https://github.com/yudong80/coding-samguk
저는 요즘 핫한 vs code로 자바 코딩을 합니다.
vs code는 자바 뿐만 아니라 C++ , python, JS 등 다양한 환경에서 실무 개발자들이 활용하고 있습니다.
vs code는 이미 설치되어 있다고 가정하며 (윈도우 환경)을 기본으로 합니다.
vscode java로 검색을 하면 다음 페이지로 이동할 수 있습니다.
https://code.visualstudio.com/docs/languages/java
저는 JDK가 설치되어 있지 않은 PC에서 세팅했으며
Coding Pack for Java - Windows 를 설치했습니다. 알아서 JDK가 설치됩니다.
vs code를 실행한 후에
단축키 (Ctrl + Shift + P) 를 눌러 명령창을 실행합니다.
여기에서 Create Java Project를 누르고 프로젝트 이름을 입력합니다.
저는 편의상 V0 (version 0)로 명명했습니다.
다음과 같이 프로젝트 창이 생성됩니다.
저는 이미 오늘 보여드릴 App.java 와 General.java를 만들어놓은 상태라 이 파일들이 보이네요.
오늘은 장수에 대해서 코딩을 해봅니다. 정말 간단한 내용입니다.
결과는 https://github.com/yudong80/coding-samguk/commit/a83173d2cbd4384a9a68a06a0e76333e39bfe435 에 올려놓았습니다.
먼저 장수를 정의해봅니다. 저는 편의상 조홍과 제갈량을 코딩해봤어요.
이것을 자바로 코딩하면 어떻게 될까요? (크게 고민하지 않고 그대로 멤버 변수로 만들었습니다)
장수니까 General(장군)으로 명명하였습니다.
파일: coding.samguk.General.java
깃헙 링크: https://github.com/yudong80/coding-samguk/blob/main/V0/src/coding/samguk/General.java
각 멤버 변수는 wiki 문서를 참고하였습니다. [1]
>> 맞습니다. 연령은 아직 표시하지 않았고 year 멤버 변수에 태어난 해를 기록합니다.
연령은 그 시대에 따라 변하게 되니까요. 즉, 계산되어야 하는 값입니다.
toString() 메서드는 @Override 하였으며 각 장수의 정보를 출력하고 있습니다. 앞으로 얼마든지 변경될 수 있습니다.
앞서 생성한 General 클래스를 간단한 List에 넣어보고 그 내용을 출력합니다.
파일: coding.samguk.App.java
깃헙 링크: https://github.com/yudong80/coding-samguk/blob/main/V0/src/coding/samguk/App.java
이 파일을 실행하면 다음과 같이 나옵니다. 단축키 (Ctrl + F5) 누르면 됩니다.
vs code도 정말 편리해졌네요.
좀 썰렁하지만 무언가 결과가 나오네요.
이렇게 흥미 위주로 앞으로 몇 개를 더 작성해볼 생각입니다.
> 다음은 각 땅(Province)를 코딩해보려고 합니다.
즐거운 코딩하세요 :-)
2021.8.16
ps. 앞으로 코딩하면 좋을 것들 댓글 남겨주시면 참고해서 더 만들어볼께요.
링크
[1] https://en.wikipedia.org/wiki/Romance_of_the_Three_Kingdoms_III:_Dragon_of_Destiny