프로젝트 소개
JAVA를 이용해 우주선 착륙 플래시 게임 개발을 진행하였다. 우주선 착륙게임이란 로켓을 미세한 컨트롤로 속도를 조절해 착륙게임이다. 이 프로젝트는 기존 게임에서 나만의 아이디어를 추가해 개선해 나가는 작업을 진행하였다.

프로젝트 인원 및 기간
기간 : 2021.09.01~2021.12.01
프로젝트 인원 : 1명
사용 기술
JAVA, Firebase
추가된 기능
1. 라이프 추가 및 삭제 기능
2. 로켓 스폰위치 및 시점 고정. 플레이어가 더욱 어렵도록 기존 가운데에 위치한 프레임을 프레임 가장자리로 발판을
변동하였다.
3. 고정 및 움직이는 장애물 추가
4. 배경음악 및 효과음 넣기
5. 추가 목숨 아이템 추가하기
6. Firebase 사용하여 로그인 기능 추가
7. 장애물과의 거리 조정을 위한 해상도 변경
8. 게임 종료 시 스코어 표시 및 E키를 눌러 메인메뉴로 이동하기
9. 메인메뉴에서 버튼을 통한 Level 진입 및 제작자 정보, 게임 종료하기
10. 시간이 지나면 아이템, 고정 장애물 사라지게 하기
11. 메인메뉴에서 캐릭터 선택 기능 추가
깃 허브
GitHub - rlaaudgjs2/Moon_lander
Contribute to rlaaudgjs2/Moon_lander development by creating an account on GitHub.
github.com
어떤 역할을 담당하였는가?
이 프로젝트는 기존게임에서 알고리즘을 추가해 기능을 추가해 나가 진행하였다. 그래서 게임 기능, 다이어그램 설계, Firebase를 사용하여 로그인 기능 및 스코어 기능 추가를 하였다.
설계 과정
클래스 다이어그램을 먼저 제작하였고 프로그램 개발이 끝난 후, 시스템 동작을 이해하기 위해 시퀀스 다이어그램 제작
하였다.
아래는 당시 제작했던 클래스 다이어그램과 시퀀스 다이어그램이다.
클래스 다이어그램



어려웠던 점과 기억에 남는 점은?
당시 언어를 배운 것은 있어도 직접 프로그래밍을 해서 무엇을 만든다는 것이 두려웠던 기억이 난다. 당시 팀원은
세명이였지만 휴학, 다른 과에서 수업만 들을 목적으로 온 팀원으로 인해 프로젝트에 가용 가능한 인원은 나 자신밖에
없어 밤을 새거나 기술 적용을 위해 youtube, Stack overflow 등 찾아보며 접근하였다. 기억에 나는 기술 중 firebase DB를 사용해 로그인 기능, Firepath라이브러리를 이용한 문서에 스코어를 저장하여 가져오는 기능, thread를 사용해 여러작업을 한번에 처리해 효율성을 높인 기능이 기억에 남는 것 같다.