14. 위피 게임: 가위바위보 게임 초기에 점수=0 처음 이기면 10 점 그 다음부터 이기면 점수=현재 점수*2 지면

Slides:



Advertisements
Similar presentations
Class diagram. 클래스 클래스 이름 연산 속성 2 class Transportation { private int maximumPassenger; private double speed; public void depart(); public void stop();
Advertisements

명품 JAVA Programming 제 3 장 반복문, 배열, 예외처리.
어서와 Java는 처음이지! 제3장선택과 반복.
11장. 프로토콜 핸들러 AI &HC I LAB 김 성 현.
제 7주 2015년 1학기 강원대학교 컴퓨터학부 담당교수: 정충교
명품 JAVA Essential.
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
CHAP 18. 멀티미디어.
10. 예외 처리.
컴퓨터 응용 및 실습 Part1. OOP&Java Programming data type Review
2장 닷넷 프레임워크.
객체지향 프로그래밍.
Chap05 상속 5.1 상속의 개요 5.2 멤버 변수의 상속 5.3 메소드의 상속과 오버라이딩(Overriding)
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
Java Seminar 6.
Programming for the java Virtual machine
제14장 원격 메소드 호출 김 기 환. 조 명 휘.
명품 JAVA Programming 제 13 장 스레드와 멀티태스킹.
명품 JAVA Essential.
작업 스케줄링 Lecture #8.
J2ME(Java 2 Micro Edition) 무선 장치용 UI의 핵심 컴포넌트
실전 프로젝트 2 : 숫자야구 숫자 야구를 구현해보자.
5 익셉션 처리.
4장 컴포넌트 (I) org.kwis.msp.lwc.
2주 실습강의 Java의 기본문법(1) 인공지능연구실.
Chapter 02 자바 기본구조 자바 프로그래밍의 기초적인 문법을 소개
8. 객체와 클래스 (기본).
제7장 제어구조 I – 식과 문장.
[INA470] Java Programming Youn-Hee Han
10장 객체-지향 프로그래밍 II ©창병모.
8장 자바 입출력.
JAVA 프로그래밍 6장 객체지향프로그래밍의 핵심.
객체지향 언어와 클래스, 객체 ㅎㅎ 개요 클래스의 선언, 객체의 생성 및 속성 참조 방식 멤버 변수 메소드 한빛미디어(주)
자바 5.0 프로그래밍.
고수준 사용자 인터페이스 프로그래밍 Lecture #4.
AOP 개념 및 Spring의 AOP 기능.
실전 사운드 처리 프로그래밍 Lecture #11.
명품 Java Programming.
최용술 장 Thread 최용술
명품 JAVA Essential.
10장 다중 스레드 10.1 스레드 개요 10.2 Thread 클래스 10.3 스레드 생성
Hadoop 김연왕
2장 자바환경과 자바 프로그램 2.1 자바 개발 환경 2.2 자바 통합환경 2.3 자바 응용 프로그램과 애플릿 프로그램
명품 JAVA Programming 제 15 장 애플릿과 멀티미디어.
This, static, final 지정 예약어 자바 4대 중첩 클래스
김 정 석 Web Programming 김 정 석
Android Coding Convention
주소록 프로그램.
자바 5.0 프로그래밍.
제 4주 2014년 1학기 강원대학교 컴퓨터학부 담당교수: 정충교
Java 8장. 상속 public class SumTest {
Sookmyung Women’s Univ. PSLAB Ohe, heejung
03. 안드로이드를 위한 Java 문법 제목. 03. 안드로이드를 위한 Java 문법 제목.
Ch.1 Iterator Pattern <<interface>> Aggregate +iterator
Web programming Chap 04 상속 김 정 석
제 2장 어휘구조와 자료형 토 큰 리 터 럴 주 석 자 료 형 배 열 형.
컴퓨터공학실습(I) 3주 인공지능연구실.
Chap02 객체 지향 개념 2.1 객체지향(object-oriented)과 절차지향(procedural-oriented)
프로그래머를 위한 첫걸음 JDBC Lecture 001 BY MINIO
JA A V W. 04.
CACM 구현 public class CACM { public CACM(File file)
자바 5.0 프로그래밍.
Java 3장. 자바의 기본 구조 I : 변수, 자료형, 연산자 public class SumTest {
제8장 쓰레드 프로그래밍.
자바 5.0 프로그래밍.
C# 10장. 참조형.
6장 클래스(상속).
자바 프로그래밍 Thread를 이용한 애니메이션 서울호서전문학교 게임프로그램개발과.
Java 5장. 객체지향 개념 public class SumTest {
Chapter8 : 인터페이스와 패키지 8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용
Presentation transcript:

14. 위피 게임: 가위바위보 게임 초기에 점수=0 처음 이기면 10 점 그 다음부터 이기면 점수=현재 점수*2 지면 현재점수가 10점이면 0점 아니면 점수=현재점수/2 가위 보 바위 14. 위피 게임: 바위바위보 게임

game_ex1.java import org.kwis.msp.lcdui.*; public class game_ex1 extends Jlet { protected void startApp(String[] args) { Display disp = Display.getDefaultDisplay(); disp.pushCard(new game_ex2(disp)); } protected void pauseApp() { protected void resumeApp(){ protected void destroyApp(boolean b) { 14. 위피 게임: 바위바위보 게임

game_ex2.java import org.kwis.msp.lcdui.*; import java.util.*; class game_ex2 extends Card { int jumsu = 0 ; int rand1 ; int w, h, b; private int[] a = {0,1,2} ; int g_state = 0; Display disp; Random rand_b; Image g_title, g_bg, i_com, i_user, i_back; String contents; Font f = Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.SIZE_MEDIUM); game_ex2(Display disp) { this.disp = disp; rand_b = new Random(); h = getHeight(); w = getWidth(); try g_title = Image.createImage("/g_title.gif"); g_bg = Image.createImage("/g_bg.gif"); i_back = Image.createImage("/i_back.gif"); } 14. 위피 게임: 바위바위보 게임

public void next_game() { g_state = 1 ;//초기값 설정 catch (Exception e) {} } public void next_game() { g_state = 1 ;//초기값 설정 contents = "짱..게...뽀?"; //초기값 설정 try { rand1 = Math.abs(rand_b.nextInt()) % 3; //0~2사이의 난수 i_com = Image.createImage("/" + rand1 + ".gif"); repaint(); protected void paint(Graphics g) if(g_state == 0) //초기화면이면 g.drawImage(g_title, 0, 0, 0);//메인 이미지 else g.drawImage(g_bg, 0, 0, 0); //바탕이미지 g.drawImage(i_com, 23, 70, 0);//컴퓨터가 내고 있는짱 게 뽀 이미지및위치 14. 위피 게임: 바위바위보 게임

//뒤집어진 카드 : 사용자가 고를 카드 이미지 if(g_state == 1) { //뒤집어진 카드 : 사용자가 고를 카드 이미지 g.drawImage(i_back, 23,70, 0); //물음표 이미지 이걸로 컴퓨터가 어떤것을 내었는지 가려준다 } else if(g_state == 2) g.drawImage(i_user, w-i_user.getWidth()-20, 70 , 0);//지금 내가 내고있는 이미지를 나타내줌 //현재의 점수를 나타내기 위한 처리 g.setFont(f); g.setColor(255,0,0); g.drawString(Integer.toString(jumsu), w/2+13, 25, g.TOP | g.RIGHT);//점수 표시 //메시지를 나타내기 위한 처리 g.setColor(255, 234, 209); g.fillRect(w/2-44, h-58, 90, 20); g.setColor(255,128,0); g.drawRect(w/2-44, h-58, 90, 20); g.drawString(contents, w/2-34, h-56, g.TOP | g.LEFT);//이부분은 메세지를 알려주는 부분 짱 게 뽀 public void equal() g_state = 2; 14. 위피 게임: 바위바위보 게임

contents = "둘다똑같은넘";//컴퓨터와 내가 낸 카드가 같앗을때 나타나는 메세지 repaint(); } public void victory() //컴퓨터가 나타내는 기본 카드보다 사용자가 선택한 카드가 높은 경우 0<1<2 순서를 말한것임 { if(jumsu == 0) jumsu += 10; else jumsu *= 2; g_state = 2 ; contents = "좋냐??아싸"; public void defeat() //컴퓨터가 나타내는 기본 카드보다 사용자가 선택한 카드가 낮을경우 if(jumsu != 0) jumsu /= 2; if(jumsu == 0 | jumsu < 10) jumsu = 0; g_state = 2; contents = "쫌하는데!!"; protected boolean keyNotify(int type, int key)//키입력을 받아서 해당 이미지를 나타낸다. 14. 위피 게임: 바위바위보 게임

int gameKey = Display.getGameAction(key); //입력키를 얻는다. if(type == EventQueue.KEY_PRESSED)//키가 눌려지면 { if(g_state == 0)//초기화면 if(gameKey == EventQueue.FIRE)//입력키가 OK 키이면 next_game(); //메소드 호출 } // 이기는수 1.2 2.3 3.1 1<2<3<1 else if(g_state == 1)//게임 준비 상태이면 if(gameKey == EventQueue.LEFT)// 입력키가 가위 //'가위'를 눌렀을때 try i_user = Image.createImage("/0.gif"); catch (Exception e){} if(rand1 == a[0])// rand1 과 rand2 값이 같으면 equal(); //equal() 메소드 호출 else if(rand1 == a[1]){ defeat(); else if(rand1 == a[2]){ victory(); 14. 위피 게임: 바위바위보 게임

else if(gameKey == EventQueue.DOWN) //입력키가 바위 { try i_user = Image.createImage("/1.gif"); } catch (Exception e){} //' 바위'일때 if(rand1 == a[1]) equal(); else if(rand1 == a[2]){ defeat(); else if(rand1 == a[0]){ victory(); else if(gameKey == EventQueue.RIGHT) //입력키가 보 i_user = Image.createImage("/2.gif"); //'보'일때 if(rand1 == a[2]) 14. 위피 게임: 바위바위보 게임

if(gameKey == EventQueue.FIRE) next_game(); return false; else if(rand1 == a[0]) { defeat(); } else if(rand1 == a[1]){ victory(); else { if(gameKey == EventQueue.FIRE) next_game(); return false; 14. 위피 게임: 바위바위보 게임

실행 결과 14. 위피 게임: 바위바위보 게임