디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[AWT] 자바로 과녁 맞추기 게임 만드는 중인데 조언좀..

Partyup갤로그로 이동합니다. 2011.12.04 23:03:29
조회 524 추천 0 댓글 2






코드 설명
AWT를 이용하여 프레임을 띄우고
거기다가 타겟이미지랑 총 이미지를 박아둠
쓰레드 돌려서 타겟이 움직이게 해놓고
버튼 하나 만들어서 버튼 눌르면 총알 이미지가 타겟이 있는 방향으로 움직이게 해놨음..

거의 다 됐고 이제 목표물 맞췃을때 라벨이 있는 숫자가 증가해서 화면에 뿌려주면 될것 같은데..
생각하고 있는 알고리즘이
타겟 이미지랑 총알 이미지말 겹쳤을때 카운트가 증가해서 라벨에 표시되게 하는 거거든?
이미지 위치값 받아오는거랑 그 검사하는 소스를 어디다가 넣어야 될지 모르겠네...

package java_1202;

import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Label;
import java.awt.Panel;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

class MyShootingGame extends MyFrame implements Runnable, ActionListener {
 private Image target, gun, ammo;
 private Toolkit kit = Toolkit.getDefaultToolkit();
 private int x1, y1, width1, height1;
 private int x2, y2, width2, height2;
 private int x3, y3, width3, height3;
 private Button b_fire;
 private Thread t_target, t_fire;
 private Label l_cnt;
 private int cnt = 0;
 private Panel p_cnt, p_fire;
 
 public MyShootingGame() {
  super("ShootingGame", 650, 650);
  target = kit.getImage(getClass().getResource("target.jpg"));
  gun = kit.getImage(getClass().getResource("gun.jpg"));
  ammo = kit.getImage(getClass().getResource("ammo.jpg"));
  
  x1 = 5; //적당한 위치
  y1 = 65; //적당한 위치
  width1 = 120; //실제 사진값
  height1 = 120; //실제 사진값
  
  x2 = 450;
  y2 = 310;
  width2 = 175;
  height2 = 28;
  
  x3 = 450;
  y3 = 313;
  width3 = 30;
  height3 = 5;
  
  b_fire = new Button("fire");
  l_cnt = new Label("맞춘횟수 : " + cnt);
  p_fire = new Panel(new FlowLayout());
  p_cnt = new Panel(new FlowLayout());
  p_cnt.add(l_cnt);
  p_fire.add(b_fire);
  setLayout(new BorderLayout());
  add("South", p_fire);
  add("North", p_cnt);
  
  b_fire.addActionListener(this);
  
  t_target = new Thread(this);
  t_target.start();
 }

 @Override
 public void run() {
  int targerSpeed = 50;

  while (true) {
   try {
    Thread.sleep(200);
   } catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
   y1 += targerSpeed;
   if (y1 >= 460 || y1 <= 65) {
    targerSpeed *= -1;
   }
   update(getGraphics());
  }
 }
 
 @Override
 public void paint(Graphics g) {
  g.drawImage(target, x1, y1, width1, height1, this);
  g.drawImage(ammo, x3, y3, width3, height3, this);
  g.drawImage(gun, x2, y2, width2, height2, this);
//  if (x1 == x3) {
//   cnt++;
//   System.out.println(cnt);
//  }
 }

 @Override
 public void actionPerformed(ActionEvent event) {
  if(event.getSource().equals(b_fire)) {
   int ammoSpeed = 50;
   x3 = 450;

   while (x3 >= -25) {
    try {
     Thread.sleep(100);
    } catch (InterruptedException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
    x3 -= ammoSpeed;
    update(getGraphics());
   }
  }
 }
}

public class ShootingGame {
 public static void main(String[] args) {
  try {
   new MyShootingGame().setVisible(true);
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 뛰어난 운동 신경으로 남자와 싸워도 이길 것 같은 여자 스타는? 운영자 25/11/24 - -
이슈 [디시人터뷰] 충무로가 주목하는 신예, '세계의 주인' 서수빈 운영자 25/11/24 - -
AD 대학생 필수템! What's in my Bag 운영자 25/11/21 - -
공지 프로그래밍 갤러리 이용 안내 [97] 운영자 20.09.28 48769 65
2904885 인지과학조져라 손발이시립디다갤로그로 이동합니다. 11:01 7 0
2904883 진짜 오늘 딸라 쎄일하네 [2] chironpractor갤로그로 이동합니다. 09:54 38 0
2904881 가치를 인정해주지 않는 사람에겐 그만큼만 해주면 된다. [6] 프갤러(221.149) 09:17 51 0
2904880 프로그래머는 티 나는 쪽 아닌가? ㅇㅅㅇ [3] 헤르 미온느갤로그로 이동합니다. 09:09 48 0
2904877 뱀 가족 ㅇㅅㅇ [1] 헤르 미온느갤로그로 이동합니다. 08:58 18 0
2904876 태연 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 08:52 15 0
2904875 하루 한 번 헤르미온느 찬양 헤르 미온느갤로그로 이동합니다. 08:51 21 0
2904874 프로그래머는 뭐를 해도 티가 안나. [1] 프갤러(59.16) 08:38 53 0
2904871 스타크래프트와 같은 RTS 게임에서 가장 치명적인 문제는 책사풍후갤로그로 이동합니다. 07:06 28 0
2904868 나님 달러 추가매수중 재명이 때문에 국가부도사태 터질듯 [2] ♥냥덩이의우웅한하룽♥갤로그로 이동합니다. 06:42 59 0
2904867 계산이랑 증명이란것도 결국 원숭이를 위해서 존재함 [2] RyuDOG갤로그로 이동합니다. 06:29 37 0
2904865 음기 충전 발명도둑잡기(118.216) 05:59 37 0
2904864 영국 산업혁명 때 빈곤층은 아동착취 찬성 발명도둑잡기(118.216) 05:45 19 0
2904863 X 계정 국적표기 업뎃 됐었구나 ㅇㅅㅇ [1] ㅇㅇ(112.157) 05:06 45 0
2904860 유튜브 타고 퍼지는 '1020 조폭' 실태 살펴보니 발명도둑잡기(118.216) 03:35 28 0
2904858 요즘 연애 발명도둑잡기(118.216) 03:23 44 0
2904857 진지하게 지금 이재명정부 잘하고 있냐? [1] ㅇㅇ(125.129) 03:23 50 0
2904856 당신이 아는 빅뱅은 틀렸다 발명도둑잡기(118.216) 03:19 22 0
2904849 위시캣이란 만화가 있나보네 발명도둑잡기(118.216) 02:58 16 0
2904847 X윈도우 프로그래밍 갤러리 개설 [2] FreePascal갤로그로 이동합니다. 02:55 49 0
2904846 "SM 이수만 파워 통했다" 이달의 소녀, '해시' 아이튠즈 발명도둑잡기(118.216) 02:27 18 0
2904844 레스토랑 메뉴판에 숨은 꼼수들 발명도둑잡기(118.216) 02:16 23 0
2904843 전처리 친구들을 그려봤어요 [2] ㅇㅇ(1.247) 02:13 70 1
2904842 환율 진짜 개 에바다. Move갤로그로 이동합니다. 02:11 41 0
2904840 const는 상수 아니냐? [3] ㅇㅇ갤로그로 이동합니다. 01:49 59 0
2904839 아 걍 취업하지 말고 농사나 지을까 [4] 프갤러(121.152) 01:45 47 0
2904838 퇴직하고 나니까 드는 생각인데 주 3일제 해야한다. [5] 프갤러(110.8) 01:45 54 0
2904837 진보당 뽑으면 주4일제 된다 발명도둑잡기(118.216) 01:35 22 0
2904836 크레마 루팅 검색하다가 이 블로그가 나왔는데 [1] 발명도둑잡기(118.216) 01:34 31 0
2904835 출근하기싫다 [4] 노력갤로그로 이동합니다. 01:27 39 0
2904834 책사풍후 난중일기 책사풍후갤로그로 이동합니다. 01:26 19 0
2904833 백수라 가난 때문에 고민이 많다 발명도둑잡기(118.216) 01:23 25 0
2904831 나는 8년쯤전 영화 '슈퍼사이즈미' 보고 햄버거 끊었다 발명도둑잡기(118.216) 01:21 20 0
2904828 크레마 전자책 단종됐는데 발명도둑잡기(118.216) 01:16 25 0
2904827 내일부터 버거킹 대신 라면 먹어야겠다. 프갤러(110.8) 01:12 26 0
2904826 이제 슬슬 대가리 깨지지? RyuDOG갤로그로 이동합니다. 01:11 69 0
2904824 결국 내 말중 틀린게 없잖아 [5] RyuDOG갤로그로 이동합니다. 01:09 77 1
2904823 광장시장 바가지를 욕하지만 엔비디아 지피유 독과점 바가지는 침묵 발명도둑잡기(118.216) 01:08 19 0
2904819 법원행정처, '법정 모욕' 극우 변호사들 고발‥"법치주의 훼손" 발명도둑잡기(118.216) 00:59 19 0
2904818 후 남의 돈 날로 처먹고 싶다. [5] 프갤러(110.8) 00:56 52 0
2904817 Hello world도 모르는 컴맹인데 이거 ai가 앰뒤진거임? 라그네파갤로그로 이동합니다. 00:54 37 0
2904816 "대만 문제 이해한다고"…트럼프가? 일본 난처해진 상황 발명도둑잡기(118.216) 00:54 31 0
2904814 냥덩이도 발명도둑잡기(118.216) 00:44 25 0
2904813 그 세글자 닉 우울증갤러리 출신이잖아 [4] 프갤러(106.101) 00:40 57 2
2904810 계속 진화하는 고급 아파트 커뮤니티 시설 발명도둑잡기(118.216) 00:31 18 0
2904808 ‘범죄도시 마동석’ 실제 모델 경찰관, 음주운전 적발 발명도둑잡기(118.216) 00:18 18 0
2904807 취업이 막히던 날, 릴스 하나가 길이 됐다… 종구형님의 인생 2막 발명도둑잡기(118.216) 00:15 38 0
2904805 Elite: "The game that couldn't be writte 발명도둑잡기(118.216) 11.25 21 0
2904804 싱클레어 ZX81 게임 발명도둑잡기(118.216) 11.25 21 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2