디시인사이드 갤러리

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

갤러리 본문 영역

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

Partyup갤로그로 이동합니다. 2011.12.04 23:03:29
조회 523 추천 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 - -
292959 오 무료로 괜찮은 일러스트 구할수 있는 사이트! [1] 쿄스케갤로그로 이동합니다. 11.12.07 251 0
292958 악 ㅋㅋ 이미지 사는거 엄청 비싸네 ㅋㅋㅋ [10] 쿄스케갤로그로 이동합니다. 11.12.07 160 0
292957 으어 술이 안깬다 -ㅁ- 외계달팽갤로그로 이동합니다. 11.12.07 56 0
292954 Objective C 다루는게 목표라면 C열강만 보고 바로 넘어가도 될까 [1] 컴싸(118.176) 11.12.07 73 0
292953 뭐가 문제지..... [2] 슈우과학갤로그로 이동합니다. 11.12.07 58 0
292952 묵직한 돌직구 [3] 샘숭(125.138) 11.12.07 148 0
292951 아버지가_프로그래머.jpg [3] Aven갤로그로 이동합니다. 11.12.07 335 0
292950 과메기의 계절임.. 이문동쮸쮸바갤로그로 이동합니다. 11.12.07 77 0
292949 형들 도와주세요... 컴퓨터공학 전공 관련 글을 A4 5장 써야 합니다. [6] 형들...(59.23) 11.12.07 118 0
292948 비주얼베이직 쌩기초질문.. 도와줘흉들아ㅠㅜ [1] (122.254) 11.12.07 57 0
292946 그젛게 밤새서 어제 저녁 7시에 잣는데 좋은아버지갤로그로 이동합니다. 11.12.07 69 0
292945 아 자야하는데 하고 싶은 건 많고 시간은 벌써 두 시고 ㅁㄴㄻㄹ갤로그로 이동합니다. 11.12.07 47 0
292944 우분투 11.10 이 11.04보다 더 느리다면서? [2] 구루구루(119.64) 11.12.07 153 0
292941 횽들 이거 하루종일 뒤졌는데 도저히 모르겠어 ㅠㅠ 제발좀 알려줘.. 사학년(222.107) 11.12.07 46 0
292939 형들 앞으로 휴대용게임기 어떻다고봄? [5] ㅎㅎ(61.106) 11.12.07 82 0
292938 시발 타이핑하기 귀찮다... [2] ㅈㅂㄷㅂㄷ(220.78) 11.12.07 53 0
292937 emacs aborted?? 관련 질문입니다. 잉여잉간 (110.76) 11.12.07 45 0
292934 오빠들도와주세융 비쥬얼베이직 [4] 쉭키갤로그로 이동합니다. 11.12.07 119 0
292933 존나 개초보적인 질문인데 이해가 잘안되서요 완전이진트리랑 이진트리랑 차이 [14] Rapidly갤로그로 이동합니다. 11.12.07 175 0
292932 c++ 파일처리,, ofstream 으로 파일 생성 후 cin 작동문제ㅠ [2] 흑갈흑갈(1.224) 11.12.07 121 0
292931 DC DB바꾼거임? [1] 박구갤로그로 이동합니다. 11.12.07 75 0
292929 혹시 자료구조론쪽 질문해도 답변 해주시나요? 트리문젠뎅;; Rapidly갤로그로 이동합니다. 11.12.07 43 0
292925 디시가 아픈듯 이모군(175.114) 11.12.06 32 0
292924 안드로이드 개발 쪽 배울려는 책좀 추천좀요 ㅁㄴㅇㄹ(222.108) 11.12.06 51 0
292922 밑에 질문을 잘못올렸네요ㅕ ㅠ fopen이 아니고 fgets [2] 잉여잉간(110.76) 11.12.06 49 0
292921 fopen 함수 질문입니다 [1] 잉여잉간(110.76) 11.12.06 43 0
292919 요새 개발자 단가 왜이러냐;; 시발 [3] 허허벌판갤로그로 이동합니다. 11.12.06 215 0
292918 혹시 여기애들중 파일 복구아는분들 있음? 야짤내놔라갤로그로 이동합니다. 11.12.06 30 0
292914 자바-오라클 연동 어렵냐? [13] ㅈㅂㄷㅂㄷ(220.78) 11.12.06 160 0
292913 저녁타임은 숙제 타임인가요? [1] 알탱o갤로그로 이동합니다. 11.12.06 42 0
292912 아오 시발 유입,유동새1끼들아 여기 질문하로 쳐왔냐? [2] ㅡㅡ(180.224) 11.12.06 43 0
292911 부산에서 가~~~~~장 큰 서점은? [3] 부산여자(121.174) 11.12.06 200 0
292910 이얍 브레인 시작했다 막장갤신학생갤로그로 이동합니다. 11.12.06 29 0
292909 형들 갑자기 C 포인터에 급격한 혼동이와요;; [2] +어게인갤로그로 이동합니다. 11.12.06 99 0
292908 와....현아 패왕색쩌넼ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ ㅡㅡ(180.224) 11.12.06 96 0
292906 모바일 앱도 임베디드 소프트웨어에 해당이 될까여? 허접(125.139) 11.12.06 58 0
292905 형들 메인보드가 samsung electronic 이렇게되있는데 이거머임 [1] 복실이(121.174) 11.12.06 58 0
292903 간단한 java stack 질문요 [1] 케이갤로그로 이동합니다. 11.12.06 60 0
292902 프갤선생님들 저좀 살려주세요 aspx dropdownlist 질문여 ㅜㅜ 호구甲갤로그로 이동합니다. 11.12.06 68 0
292901 여기 망갤인가효? [2] 불곰개객흐흨....갤로그로 이동합니다. 11.12.06 76 0
292899 C에 Sleep 말고 프로그램에 딜레이 주는방법없나? [5] Arian갤로그로 이동합니다. 11.12.06 81 0
292897 VB Bubble sort 질문좀요 ㅜㅜ [1] 비쥬얼베이직(121.175) 11.12.06 61 0
292895 나 지잡대 다니다 대기업들어왔는뎅 확실히 학벌이 좋으면 똑똑한듯 ㅇㅇㅇㅇ(203.244) 11.12.06 1009 1
292894 형님들 자바좀 도와주세요 전격라이츄(203.250) 11.12.06 43 0
292893 html태그 질문 ㅠㅠ [3] LASTOR갤로그로 이동합니다. 11.12.06 56 0
292892 형들 ArrayList에 있는 객체들을 메모장으로 출력 시킬려면 어떻게 [5] 막장갤신학생갤로그로 이동합니다. 11.12.06 62 0
292891 고치고 말씀드리기 vs 닥치고 있기 [5] 허접(125.139) 11.12.06 97 0
292890 프로그래밍 잘하시는 분들! 도와주세요 사례금有 [3] 힘들...(218.151) 11.12.06 97 0
292889 아이폰을 잃어버렸을 때 대처 방법 알탱o갤로그로 이동합니다. 11.12.06 77 0
292888 형들 조금만 도와줘요(수정) [16] 슈우과학갤로그로 이동합니다. 11.12.06 116 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2