Skip to content
Home » 자바 슈팅 게임 | 자바(Java)로 슈팅 게임 만들기 (1.화면 구성) 26245 투표 이 답변

자바 슈팅 게임 | 자바(Java)로 슈팅 게임 만들기 (1.화면 구성) 26245 투표 이 답변

당신은 주제를 찾고 있습니까 “자바 슈팅 게임 – 자바(Java)로 슈팅 게임 만들기 (1.화면 구성)“? 다음 카테고리의 웹사이트 kk.taphoamini.com 에서 귀하의 모든 질문에 답변해 드립니다: kk.taphoamini.com/wiki. 바로 아래에서 답을 찾을 수 있습니다. 작성자 동현 이(가) 작성한 기사에는 조회수 8,298회 및 좋아요 49개 개의 좋아요가 있습니다.

자바 슈팅 게임 주제에 대한 동영상 보기

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

d여기에서 자바(Java)로 슈팅 게임 만들기 (1.화면 구성) – 자바 슈팅 게임 주제에 대한 세부정보를 참조하세요

[자바(Java)] 슈팅 게임 만들기 (1.화면 구성)
Intellij 설치법 : https://jwprogramming.tistory.com/99
소스 코드 : https://github.com/DongChyeon/Java-Mini-Projects/tree/master/ShootingGame
이미지 폴더 : https://github.com/DongChyeon/Java-Mini-Projects/tree/master/ShootingGame/src/images

자바 슈팅 게임 주제에 대한 자세한 내용은 여기를 참조하세요.

자바 비행기 게임 만들어보기 #1 – 빙허의 개발일기

오늘 자바의 Swing ( JFrame )에 대해 익숙해지기 위해서 GUI화면 상에 … 2D 슈팅 비행기 게임인 만큼 비행기를 움직이면서 미사일도 발사하고 스킬 …

+ 여기에 더 보기

Source: binghedev.tistory.com

Date Published: 2/9/2022

View: 3395

HurabonoProject/자바 슈팅게임 프로그램 at master – GitHub

HurabonoProject/자바 슈팅게임 프로그램 … import java.awt.event.KeyEvent; … 게임과 직접적인 상관은 없이 게임 실행을 위한 창을 준비하는 과정.

+ 여기에 표시

Source: github.com

Date Published: 1/27/2021

View: 8450

조승현-기말-프로젝트-슈팅게임 – Home – IT GIT

import java.awt.event.KeyEvent; import java.util.Timer; import java.util.TimerTask;. public ShootingGame extends JFrame {

+ 여기에 자세히 보기

Source: itgit.cu.ac.kr

Date Published: 7/18/2021

View: 2395

자바 슈팅 게임 | 자바(Java)로 슈팅 게임 만들기 (1.화면 구성 …

HurabonoProject/자바 슈팅게임 프로그램 … import java.awt.event.KeyEvent; … 게임과 직접적인 상관은 없이 게임 실행을 위한 창을 준비하는 과정. + …

+ 여기를 클릭

Source: you.1111.com.vn

Date Published: 1/25/2021

View: 8322

JButton으로 슈팅게임 1-1 시작 패널 – MintPearl

그래픽에 두려움을 가진 사람으로서, 버튼으로 슈팅게임 만들기에 도전하기로 했어요! 이제 막 자바 공부 한 달 차로, 알고있는 선에서 만드는 …

+ 자세한 내용은 여기를 클릭하십시오

Source: mintpearl-story.tistory.com

Date Published: 3/23/2021

View: 5531

마이크로비트 : 2인용 슈팅 게임(안정화 버전) – 자바실험실

마이크로비트 2인용 슈팅 게임(Shooting Game)을 만들었습니다. 구글링을 하면 찾을 수 있는 몇 년 전 게임들은 자잘한 버그들이 발생합니다.

+ 자세한 내용은 여기를 클릭하십시오

Source: javalab.org

Date Published: 1/25/2021

View: 6628

[자바게임] 비행기 슈팅게임-paperplane 레포트 – 해피캠퍼스

[자바게임] 비행기 슈팅게임-paperplane · 소개글. 01. 개발 관련 게임 동향 및 게임 제작 동기 1.1 관련 게임 동향 1.2 게임 제작 동기 · 컴파일 실행환경. JAVA · 참고 자료.

+ 여기를 클릭

Source: www.happycampus.com

Date Published: 7/13/2021

View: 9103

주제와 관련된 이미지 자바 슈팅 게임

주제와 관련된 더 많은 사진을 참조하십시오 자바(Java)로 슈팅 게임 만들기 (1.화면 구성). 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

자바(Java)로 슈팅 게임 만들기 (1.화면 구성)
자바(Java)로 슈팅 게임 만들기 (1.화면 구성)

주제에 대한 기사 평가 자바 슈팅 게임

  • Author: 동현
  • Views: 조회수 8,298회
  • Likes: 좋아요 49개
  • Date Published: 2020. 9. 28.
  • Video Url link: https://www.youtube.com/watch?v=HJtS3VcChPY

자바 비행기 게임 만들어보기 #1

자바를 배우고, 한번도 나만의 프로젝트를 해본 적이 없다.

즉, 처음부터 내가 모든 것을 설계하고, 코드를 짜본적이 없다는 것이다.

자바 공부를 하고는 있는데, 문득 뭔가 정체되있다는 기분이 들었다.

여러 개발 블로그에 동기부여를 받아, 나의 첫번째 사이드 프로젝트를 시작해보려고 한다.

‘시작이 반이다’라는 말이 있지 않은가?? 오늘부터 꾸준히 집중해서 만들어 보려고 한다.

모든 코드는 Github에 공유 할 생각이다.

틀린 개념이나 비효율적인 부분이 많을 것입니다.

여러 문제점에 대한 댓글 환영합니다~

주제

1945같은 2D로 된 비행기 게임을 구현할 예정이다.

Unity를 쓰지않고, 자바의 GUI를 사용할 예정이다.

이루고자 하는 목표

자바 익숙해지기 ( 클래스, 스레드 등등 )

객체지향 설계해보기

순서

오늘 자바의 Swing ( JFrame )에 대해 익숙해지기 위해서 GUI화면 상에 비행기를 띄워서 움직이는 것 까지 구현 해볼 예정이다.

자바 GUI로 비행기 출력

비행기 움직이기

자바 GUI로 비행기 출력

import javax.swing.*; import java.awt.*; // Main public class Main { public static void main(String[] args){ new Game_View(); } } public class Game_View extends JFrame { Toolkit imageTool = Toolkit.getDefaultToolkit(); Image flight = imageTool.getImage(“res/img/F4K.png”); public Game_View(){ // 프레임의 대한 설정. setTitle(“JFrame 테스트”); // 프레임 제목 설정. setSize(854,480); // 프레임의 크기 설정. setResizable(false); // 프레임의 크기 변경 못하게 설정. setVisible(true); // 프레임 보이기; setDefaultCloseOperation(DISPOSE_ON_CLOSE); // 프레임의 x버튼 누르면 종료; } @Override public void paint(Graphics g) { g.drawImage(flight, 100,100,this); // 비행기 이미지 출력. } }

비행기 출력 성공!

JFrame과 paint를 사용해서 비행기를 그려보았다. 이제 비행기의 움직임을 구현해보겠다.

비행기 움직이기

2D 슈팅 비행기 게임인 만큼 비행기를 움직이면서 미사일도 발사하고 스킬도 사용하고 해야한다.

이번엔 비행기를 움직이는 것까지 구현을 해 볼 예정이다.

import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Game_View extends JFrame implements Runnable{ // 이미지 파일 불러오는 툴킷. Toolkit imageTool = Toolkit.getDefaultToolkit(); Image flight = imageTool.getImage(“res/img/F4K.png”); // 플레이어 비행기의 위치값. int xpos = 100; int ypos = 100; public Game_View(){ // 프레임의 대한 설정. setTitle(“JFrame 테스트”); // 프레임 제목 설정. setSize(854,480); // 프레임의 크기 설정. setResizable(false); // 프레임의 크기 변경 못하게 설정. setVisible(true); // 프레임 보이기; // setDefaultCloseOperation(DISPOSE_ON_CLOSE); // 프레임의 x버튼 누르면 프레임스레드 종료. setDefaultCloseOperation(EXIT_ON_CLOSE); // 프레임의 x버튼 누르면 프로세스 종료. // 키 어댑터 ( 키 처리용 ) addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { switch(e.getKeyCode()) { case KeyEvent.VK_UP: ypos-=5; break; case KeyEvent.VK_DOWN: ypos+=5; break; case KeyEvent.VK_LEFT: xpos-=5; break; case KeyEvent.VK_RIGHT: xpos+=5; break; } } }); } // 움직임에 따른 그림 그리기. @Override public void paint(Graphics g) { System.out.println(“paint called”); g.clearRect(0,0,854, 480); g.drawImage(flight, xpos,ypos,this); } // repaint 스레드. @Override public void run() { try{ while(true) { repaint(); Thread.sleep(15); } } catch (Exception e){ e.printStackTrace(); } } } public class Main { public static void main(String[] args){ Game_View game_view = new Game_View(); new Thread(game_view).start(); } }

움직임 성공.

키 어댑터를 사용하여 키를 누를때마다 이벤트가 발생시키게 하였으며, repaint()를 지속적으로 해야해서 스레드를 하나 생성하여 새로운 흐름을 만들게 하였다. ( 뒤 포스터에서 수정 되었다. )

지속적으로 전체 화면을 지웠다가 다시 그리는거라 자주 깜빡거린다. 하지만 그래도 키 리스너를 연결시켜서 입력값에 따른 비행기의 움직임을 구현해보았다.

HurabonoProject/자바 슈팅게임 프로그램 at master · th6366/HurabonoProject

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

import javax.swing.;

import java.awt.;

import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import java.util.Timer;

import java.util.TimerTask;

public class ShootingGame extends JFrame {

private Image bufferImage; //버퍼이미지선언

private Graphics screenGraphic;

private Image mainScreen = new ImageIcon(“src/images/Main_F.png”).getImage();//Main화면불러오기 private Image loadingScreen = new ImageIcon(“src/images/Gameloading_F.png”).getImage();//로딩화면 불러오기 private Image gameScreen = new ImageIcon(“src/images/Gamebackground.png”).getImage();//게임할때 배경화면 불러오기 private boolean isMainScreen, isLoadingScreen, isGameScreen; public static Game game = new Game(); public ShootingGame() { setTitle(“Shooting Game”); //제목설정 setUndecorated(true);//테두리가 없는 창을 구현 setSize(Main.SCREEN_WIDTH, Main.SCREEN_HEIGHT);//창의 크기 설정 setResizable(false); //창크기 조절안되게 설정 setLocationRelativeTo(null); //윈도우창을 화면의 가운데에 띄움 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //프레임 윈도우를 닫으면 프로그램을 종료하도록 설정 setVisible(true); //화면에 프레임 출력 setLayout(null); //배치관리자없음 init(); } private void init() { //초기화를 해줄 메소드 isMainScreen = true; //메인화면 출력 isLoadingScreen = false; //로딩화면은 출력하지 않음 isGameScreen = false; //게임화면 출력하지 않음 addKeyListener(new KeyListener()); //enter키누르면 다음 화면으로 넘어가기 위해 } private void gameStart() { //로딩할때의 화면 메소드 isMainScreen = false; isLoadingScreen = true; Timer loadingTimer = new Timer(); //Timer를 이용하여 로딩화면이 뜨고 2초후 게임화면이 뜨도록 설정 TimerTask loadingTask = new TimerTask() { @Override public void run() { isLoadingScreen = false; //시간이 지나면 로딩화면은 나오지않음 isGameScreen = true; //시간이 지나면 게임화면이 나옴 game.start(); } }; loadingTimer.schedule(loadingTask, 2000); //2초지나면 게임화면으로 넘어감 } public void paint(Graphics g) { bufferImage = createImage(Main.SCREEN_WIDTH, Main.SCREEN_HEIGHT); screenGraphic = bufferImage.getGraphics(); screenDraw(screenGraphic); g.drawImage(bufferImage, 0, 0, null); //버퍼 이미지를 만들어 화면에 뿌려 깜빡임을 최소화함 } public void screenDraw(Graphics g) { //graphic클래스를 이용하여 배경화면 구현 if (isMainScreen) { //메인화면 g.drawImage(mainScreen, 0, 0, null); } if (isLoadingScreen) { //로딩화면 g.drawImage(loadingScreen, 0, 0, null); } if (isGameScreen) { //게임화면 g.drawImage(gameScreen, 0, 0, null); game.gameDraw(g); } this.repaint(); } class KeyListener extends KeyAdapter { @Override public void keyPressed(KeyEvent e) { //버튼을 눌렀을 때 switch(e.getKeyCode()) { case KeyEvent.VK_W: //W버튼을 누르면 기체가 위로 올라감 game.setUp(true); break; case KeyEvent.VK_S: //S버튼을 누르면 기체가 아래로 내려감 game.setDown(true); break; case KeyEvent.VK_A: //A버튼을 누르면 기체가 왼쪽으로 이동함 game.setLeft(true); break; case KeyEvent.VK_D: //D버튼을 누르면 기체가 오른쪽으로 이동함 game.setRight(true); break; case KeyEvent.VK_SPACE: //스페이스바를 누르면 미사일이 나옴 game.setShooting(true); break; case KeyEvent.VK_ENTER: //엔터키를 누르면 로딩화면이 뜨고 게임이 시작됨 if (isMainScreen) { gameStart(); } break; case KeyEvent.VK_ESCAPE: //ESC버튼을 누르면 게임이 종료됨 System.exit(0); break; } } public void keyReleased(KeyEvent e) { //키를 떼었을때 switch(e.getKeyCode()) { case KeyEvent.VK_W: //키를 누르지 않을 때는 위로 올라가지않음(멈춤) game.setUp(false); break; case KeyEvent.VK_S://키를 누르지 않을 때는 아래로 내려가지않음(멈춤) game.setDown(false); break; case KeyEvent.VK_A://키를 누르지 않을 때는 왼쪽로 이동하지않음(멈춤) game.setLeft(false); break; case KeyEvent.VK_D://키를 누르지 않을 때는 오른쪽으로 이동하지않음(멈춤) game.setRight(false); break; case KeyEvent.VK_SPACE://키를 누르지 않을 때 미사일이 나가지 않음 game.setShooting(false); break; } } }

}

import javax.swing.;

import java.awt.;

import java.util.ArrayList;

public class Game extends Thread {

private int delay = 20; //딜레이시간 변수 지정

private long pretime; //현재시간변수

private int cnt; //이벤트 발생주기 설정을 위해 변수 지정

private int score;

private Image player = new ImageIcon(“src/images/player.png”).getImage(); private int playerX, playerY; //사용자 위치 변수 private int playerWidth = player.getWidth(null);//사용자그림의 넓이 private int playerHeight = player.getHeight(null); private int playerSpeed = 10; //키입력이 한번 인식되었을 때 플레이어가 이동할 거리 private int playerHp = 30; // 사용자 HP private boolean up, down, left, right, shooting; //플레이어와 공격을 제어할 변수 private boolean isOver; //플레이어의 공격, 적, 적공격을 담을 ArrayList private ArrayList playerAttackList = new ArrayList(); private ArrayList enemyList = new ArrayList(); private ArrayList enemyAttackList = new ArrayList(); private PlayerAttack playerAttack; private Enemy enemy; private EnemyAttack enemyAttack; @Override public void run() { reset(); //쓰레드가 시작할 때 reset 메소드도 실행 while(true) { while (!isOver) { pretime = System.currentTimeMillis(); if (System.currentTimeMillis() – pretime < delay) { //현재시간 - (cnt가 증가하가지너 시간)< delay일 경우 그차이만큼 Thread에 delay해줌 try { Thread.sleep(delay - System.currentTimeMillis() + pretime); keyProcess(); playerAttackProcess(); enemyAppearProcess(); enemyMoveProcess(); enemyAttackProcess(); cnt++; } catch (InterruptedException e) { e.printStackTrace(); } } } try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } } } public void reset() { isOver = false; cnt = 0; //이벤트 초기화 score = 0; //점수초기화 playerX = 10;//처음 플레이어의 위치 playerY = (Main.SCREEN_HEIGHT- playerHeight) /2; //처음 플레이어의 위치 playerAttackList.clear(); enemyList.clear(); enemyAttackList.clear(); } private void keyProcess() { //게임화면에서 나가지 않도록 player와 의 x값과 y를 지정해준다 if (up && playerY - playerSpeed > 0) playerY -= playerSpeed; if (down && playerY + playerHeight + playerSpeed < Main.SCREEN_HEIGHT) playerY += playerSpeed; if (left && playerX - playerSpeed >0) playerX -= playerSpeed; if (right && playerX + playerWidth + playerSpeed < Main.SCREEN_WIDTH) playerX += playerSpeed; if (shooting && cnt % 15==0) { playerAttack = new PlayerAttack(playerX + 222, playerY +25); playerAttackList.add(playerAttack); } } private void playerAttackProcess() { //공격처리해주는 메소드 for(int i = 0; i enemy.x && playerAttack.x enemy.y && playerAttack.y < enemy.y + enemy.height) { enemy.hp -= playerAttack.attack; playerAttackList.remove(playerAttack); } if (enemy.hp <= 0) { enemyList.remove(enemy); score += 50; //적을 격추했을 때 점수가 오름 } } } } private void enemyAppearProcess() { //주기적으로 적을 출현시키는 메소드 if(cnt % 80 == 0) { enemy = new Enemy(1120, (int)(Math.random()*621)); //새로운 적이 랜덤으로 생성 enemyList.add(enemy); } } private void enemyMoveProcess() { //적의 움직임 구현 for (int i = 0; i playerX & enemyAttack.x < playerX + playerWidth && enemyAttack.y > playerY && enemyAttack.y < playerY + playerHeight) { playerHp -= enemyAttack.attack; enemyAttackList.remove(enemyAttack); if (playerHp <= 0) isOver = true; //적에게 공격당했을 때 HP가 0이하면 isOver 실행 } } } public void gameDraw(Graphics g) { //게임이미지의 그래픽 구현 playerDraw(g); enemyDraw(g); infoDraw(g); } public void infoDraw(Graphics g) { //게임 종료되었을때의 그래픽 구현 g.setColor(Color.WHITE); g.setFont(new Font("Arial", Font.BOLD, 40)); g.drawString("SCORE : "+ score, 40, 80); if (isOver) { //게임이 종료되었을 때 g.setColor(Color.RED); //글자색을 빨간색으로 설정 g.setFont(new Font("Arial", Font.BOLD, 80)); //글씨체는 Arial, 글자굵게하고, 크기는 80으로 설정 g.drawString("GAME OVER", 400, 360);//GAME OVer가 나오는 위치 } } public void playerDraw(Graphics g) { //플레이어관련 그래픽 구현 g.drawImage(player, playerX, playerY, null); g.setColor(Color.GREEN); //플레이어 HP바 색깔 g.fillRect(playerX - 1, playerY - 40, playerHp * 6, 20); for(int i = 0; i

자바 슈팅 게임 | 자바(Java)로 슈팅 게임 만들기 (1.화면 구성) 모든 답변

We are using cookies to give you the best experience on our website.

You can find out more about which cookies we are using or switch them off in settings.

JButton으로 슈팅게임 1-1 시작 패널

그래픽에 두려움을 가진 사람으로서, 버튼으로 슈팅게임 만들기에 도전하기로 했어요!

이제 막 자바 공부 한 달 차로, 알고있는 선에서 만드는 것이므로, 수정이 필요한 부분은 조언 부탁드립니다.

– 전제 : 프레임 하나에 패널을 바꿔가며 화면을 바꾸는 형식을 취함

게임을 선택하는 프레임에 이 게임을 패널로 붙이는 방식

그러므로, 기본적으로 클래스는 패널이고, 기능은 패널에 추가로 붙임

public class Main_StartHere extends JFrame { Main_FirstPage firstPage; //게임 선택 패널 public Main_StartHere(){ this.setSize(500,800); //프레임 사이즈 설정 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //엑스 누르면 프로그램을 종료하도록 this.setResizable(false); //사이즈 변경 못하게 고정 this.setLocationRelativeTo(null); //스크린의 중앙에 뜨게 함 firstPage = new Main_FirstPage(this); this.add(firstPage); this.setVisible(true); //화면에 보이게 } public static void main(String[] args) { new Main_StartHere(); } }

– ‘Main_FirstPage’ 패널을 붙여줌

-엑션리스너로 버튼을 클릭하면 메인 프레임에 있는 메소드를 불러옴

package miniGame_Main_ChooseGame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JPanel; public class Main_FirstPage extends JPanel implements ActionListener{ Main_StartHere main; private JButton btnGame1, btnGame2, btnGame3 ; //게임1, 게임2, 게임3 public Main_FirstPage(Main_StartHere main){ this.main = main; makeBtn(); } private void makeBtn() { //미니 게임 버튼 btnGame1 = new JButton(“Game1”); //버튼 생성 btnGame2 = new JButton(“Game2”); btnGame3 = new JButton(“Game3”); btnGame1.addActionListener(this); //엑션리스너 등록 btnGame2.addActionListener(this); btnGame3.addActionListener(this); this.add(btnGame1); //패널에 버튼 추가 this.add(btnGame2); this.add(btnGame3); } @Override public void actionPerformed(ActionEvent e) { if (e.getSource() == btnGame1) { main.Main_FiratPageToNext(1); } else if (e.getSource() == btnGame2) { main.Main_FiratPageToNext(2); } else if (e.getSource() == btnGame3) { main.Main_FiratPageToNext(3); } } }

– 메인페이지(Main_StartHere)에 해당 메소드를 넣어줌

– ‘Main_FirstPage’에서 입력한 번호에 따라 붙일 게임 패널을 결정하는 메소드

-‘Main_FirstPage’를 지우고, 이프문으로 해당 패널을 붙인 뒤 프레임 화면을 갱신한다.

– (중요) this.repaint();

this.revalidate();

void Main_FiratPageToNext(int i) { this.remove(firstPage); if (i == 1) { yunGame = new GameYun_MainPnl(this); this.add(yunGame); } else if (i ==2) { anGame = new Game2_MainPnl(this); this.add(Game2); } else if (i ==3) { parkGame = new Game3_MainPnl(this); this.add(Game3); } this.repaint(); this.revalidate(); }

-‘GameYun_MainPnl’

– 이미지는 저작권 무료사이트에서 가져왔고, 글과 화살표는 포토샵으로 넣음

– JLabel로 표현하는데는 한계가 있기도 하고, 비효율적이라 생략

– 다음페이지 가는 버튼 부분에 미리 이미지를 넣고, 비슷한 크기로 버튼을 놓은 뒤 투명하게 처리함

-엑션리스너로 버튼을 클릭하면 메인 프레임에 있는 메소드를 불러옴

– (중요) 아래와 같이 배경화면을 입력하지 않고 이미지 아이콘을 생성해서 배경을 삽입하게되면

버튼이 패널의 뒤로 숨는 오류가 발생하므로, 되도록이면 아래와 같이 처리

+ 다른 해결 방법이 있다면 조언 부탁

import java.awt.Graphics; import java.awt.Image; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.JButton; import javax.swing.JPanel; import miniGame_Main_ChooseGame.Main_StartHere; //타 폴더 public class GameYun_MainPnl extends JPanel implements ActionListener{ Main_StartHere main; private Image backgroundImage; //배경 이미지 private JButton btnNext; public GameYun_MainPnl(Main_StartHere main){ this.main = main;//프레임을 가지고 온다 this.setSize(500,800); this.setLayout(null); try {//배경 이미지 삽입 backgroundImage = ImageIO.read(new File(“오프닝1.jpg”)); } catch (IOException e) { e.printStackTrace(); } btnNext = new JButton(); // 다음 페이지로 가는 버튼 btnNext.setBounds(290, 705, 150, 50); btnNext.setBorderPainted(false); btnNext.setFocusPainted(false); btnNext.setContentAreaFilled(false); btnNext.addActionListener(this); this.add(btnNext); } @Override protected void paintComponent(Graphics g) { //이미지 작업 super.paintComponent(g); g.drawImage(backgroundImage,0,0,500,800,null); } @Override public void actionPerformed(ActionEvent e) { main.GameYun_MainPnlToNext(); } }

-Main_StartHere의 아래에 다음 패널을 연결하는 메소드를 추가한다.

– 이 방법의 단점은 페이지가 많을수록 메소드 수가 계속 늘어난다는 것

public void GameYun_MainPnlToNext() { //1번 패널에서 2번 메인 패널로 이동 this.remove(yunGame); main2 = new MainPnl2(this); this.add(main2); this.repaint(); this.revalidate(); }

-오늘은 졸리니까 여기 까지 :<

마이크로비트 : 2인용 슈팅 게임(안정화 버전)

마이크로비트 : 2인용 슈팅 게임(안정화 버전)

마이크로비트 2인용 슈팅 게임(Shooting Game)을 만들었습니다.

구글링을 하면 찾을 수 있는 몇 년 전 게임들은 자잘한 버그들이 발생합니다.

그래서 좀 더 안정화된 버전을 새로 만들어 봤습니다.

게임 시작 전

전원을 넣으면 라디오 채널을 설정하는 숫자가 보입니다.

A 또는 B 키를 눌러서 원하는 채널로 바꾼 다음, A+B 키를 동시에 눌러서 게임을 시작합니다.

(게임을 할 파트너와 같은 채널을 사용해야 합니다.)

게임 방법

화면 아래쪽에 유저가 있고, 상대방은 반대쪽 기기에 있습니다.

A 또는 B 키로 유저를 이동시키고, A+B 키로 발사합니다.

상대방이 맞으면 내가 득점하며, 2 초간 각자의 점수가 화면에 표시됩니다.

소스 코드

[자바게임] 비행기 슈팅게임-paperplane 레포트

파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우

다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함)

인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우

자료의 설명과 실제 자료의 내용이 일치하지 않는 경우

키워드에 대한 정보 자바 슈팅 게임

다음은 Bing에서 자바 슈팅 게임 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.

이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!

사람들이 주제에 대해 자주 검색하는 키워드 자바(Java)로 슈팅 게임 만들기 (1.화면 구성)

  • 자바
  • JAVA
  • 슈팅게임
  • 프로그래밍
  • 코딩

자바(Java)로 #슈팅 #게임 #만들기 #(1.화면 #구성)


YouTube에서 자바 슈팅 게임 주제의 다른 동영상 보기

주제에 대한 기사를 시청해 주셔서 감사합니다 자바(Java)로 슈팅 게임 만들기 (1.화면 구성) | 자바 슈팅 게임, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.

See also  장애인 주차대 수 | 다세대,다가구주택,근생 주차설치규정은? 서울시 주차장설치기준 건축사 이관용 32 개의 정답

Leave a Reply

Your email address will not be published. Required fields are marked *