본문 바로가기

Coding_Study

css : 가운데 정렬 텍스트(text)가운데 정렬 text-align: center; div가운데 정렬 left: 0; margin: 0 auto; absolute 전용 무적의 가운데 정렬 left: 50%; transform: translateX(-50%); 더보기
JButton으로 슈팅게임 _ 전체 코드 보호되어 있는 글입니다. 더보기
JButton으로 슈팅게임 _ 마무리 중간중간 설계오류도 있었고, 분명 돌리다 보면 문제가 생길 것 같지만 여기서 마무리합니다. 새로운 걸 배우면서 또 새로운 걸 만들어보고 싶기 때문이죠... 저는 전체적인 이미지는 저작권 무료 사이트에서 @cdd20이라는 분의 사진을 사용했습니다. 너무 제 취향이었기도 했고, 이미지 톤을 맞추기에는 같은 작가 거를 사용하는 게 좋기도 했죠. 전체적인 짧은 스토리를 보여드릴게요. - 별을 따달라는 여자의 말에 별을 따러 떠나는 게임 - 여기서 포인트는 '악당'을 해치우고 달을 따다 달라는 부탁 - 간단한 룰과 조작법 안내 - Phase1의 장면은 따뜻하고 낮의 희망찬 느낌 - 설정상 악당이 멀리서 던지는 별 공격을 피하거나, 아니면 공격해서 맞추는 게임 - 특정 몹을 7번(조정함) 이상 공격하면 선택할 수 .. 더보기
JButton으로 슈팅게임 4-1 Phase2 보스 Phase 1의 내용과 많이 겹치기 때문에 Phase 2는 혼자 빠르게 하고 한꺼번에 가지고 왔습니다. 전제 : Phase1과 Phase 2는 다른 JPanel이다. Phase1이 끝나고 짧은 스토리가 나온 뒤 Phase 2가 시작된다. 스토리 내의 선택에 따라 보스까지 가지 않고 게임이 끝날 수 있다. Phase2가 시작되면 Boss와 함께 Phase 1에서 썼던 Monster2와 같은 경로의 몹을 등장시킨다. Boss의 에너지는 1,000이고, energy bar로 표시된다. Boss는 JPanel의 끝과 끝으로 한바퀴 돈다. Boss가 내려가면 에너지가 차도록 한다. Boss의 에너지가 0이 되면 엔딩화면으로 넘어간다. 오늘 할 일 : 이전에 했던 작업 + 에너지 바 추가 하기 - 메인(Play_P.. 더보기
JButton으로 슈팅게임 3-4 Phase1 종료 드디어 Phase1의 종료를 앞두고 있습니다. 설계(?)상 Phase1에서는 여러 종류의 몹이 나오고, 주인공은 그 중에 특정몹을 몇 회 이상 잡으면 Phase2로 넘어가게 되어있습니다. 저는 그 몹을 Monster3으로 정했고, 현재는 테스트를 해야하기 때문에 난이도를 낮춰서 3회 잡으면 넘어가는 것으로 설정했습니다. 오늘 마무리하고 쉽시다! 전제 : Monster3를 3회 잡으면 Phase2로 넘어간다. (사실 중간에 스토리를 넣어서 바로 넘어가진 않고, 스토리 패널로 넘어가게 됩니다.) 오늘 할 일 : 메인(Play_Phase1)에 3회 잡으면 넘어가는 Method넣기 JFrame(Main_StartHere)에 JPanel 교체 Method넣기 Monster3 class에 횟수 카운트 하는 신호 넣.. 더보기
JButton으로 슈팅게임 3-3 (충돌) 주인공 죽이기_Game Over 너무 극단적인 느낌의 제목이긴 하지만, 드디어 충돌의 마지막 주인공 죽이기입니다. 생각보다 조금 간단하게 갑니다. 이전의 몬스터나 총알 없애는 작업에 비하면요..... 전제 : 몬스터 class에서 Game Over 사인을 메인(Play_Phase1)으로 보낸다. 메인(Play_Phase1)에서는 주인공이 죽으면 버튼을 없애고 Thread를 정지한다. 주인공이 죽으면 showConfirmDialog으로 게임을 다시 할 지, 아니면 처음으로 갈 지 선택할 수 있도록 한다. 오늘 할 일 : JFrame class(Main_StartHere)에서 패널 교체 메소드를 추가한다. 메인(Play_Phase1)에서 사망 메소드 추가한다. 각 몬스터 class(Monster1, Monster2, Monster3)의 r.. 더보기
JButton으로 슈팅게임 3- 2 (충돌) 총알 몬스터와 총알의 위치가 겹칠 때, 2020/12/12 - [Java_Study/Code_Memo] - JButton으로 슈팅게임 3-1 (충돌) 몬스터 죽이기 JButton으로 슈팅게임 3-1 (충돌) 몬스터 죽이기 충돌을 하기에 앞서 각 버튼의 위치를 받아서 비교하는 알고리즘을 공부해야 했어요. 처음에는 하나하나 계산을 해서, 총알의 크기가 20,20이니까 19만큼의 여유를 양쪽으로 더 줘야겠다 해서 mintpearl-story.tistory.com 지난 번에는 몬스터를 지우는 것 까지 했었습니다. 이 번에는 몬스터와 충돌한 총알도 함께 사라지도록 만들겠습니다. 또 한 번, 전체적으로 코드를 수정해야 했어요. 전제 : 몬스터는 총알, 주인공 모두와 충돌하는 이벤트가 있으므로, 몬스터를 기준으로 충돌 이.. 더보기
JButton으로 슈팅게임 3-1 (충돌) 몬스터 죽이기 충돌을 하기에 앞서 각 버튼의 위치를 받아서 비교하는 알고리즘을 공부해야 했어요. 처음에는 하나하나 계산을 해서, 총알의 크기가 20,20이니까 19만큼의 여유를 양쪽으로 더 줘야겠다 해서 충돌 범위를 x축에 19, 69를 더해 그 안에 들어왔을 때 충돌로 인정한다, 라는 if문과 전쟁을 했습니다. 그런데 하다보니, 각 객체의 크기에 따라 제가 다 계산해서 붙이면 게임 회사 이미 문 닫았겠다는 생각이 확 들더라고요. 비효율적이라서. 그래서 찾아보니 역시 갓 개발자님들 사각형 충돌 올려놓으셨더라고요! (사실 강사님이 공수해주심 ㅎㅎ) 그걸 긁어다가 붙여도 되긴 하지만, 이해를 하지 않고 붙이면 나중에 조립만 하는 개발자가 될 수 있다는 말이 생각나서 한참을 씨름했습니다. 너무 힘들어서 구구절절 서론이 길었.. 더보기