<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="http://rss.egloos.com/style/blog.xsl" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
	<title>권훈님의 이글루</title>
	<link>http://rollinboy.egloos.com</link>
	<description>낼름!</description>
	<language>ko</language>
	<pubDate>Sat, 17 Oct 2009 10:27:21 GMT</pubDate>
	<generator>Egloos</generator>
	<image>
		<title>권훈님의 이글루</title>
		<url>http://pds10.egloos.com/logo/200903/06/38/f0018338.jpg</url>
		<link>http://rollinboy.egloos.com</link>
		<width>80</width>
		<height>61</height>
		<description>낼름!</description>
	</image>
  	<item>
		<title><![CDATA[ 프로젝트 계획서 ]]> </title>
		<link>http://rollinboy.egloos.com/1548895</link>
		<guid>http://rollinboy.egloos.com/1548895</guid>
		<description>
			<![CDATA[ 
  <span style="COLOR: #ff0000"><span style="FONT-SIZE: 100%">1. 개발프로그램 제목<br><span style="COLOR: #000000">싱글 플레이와 2인 동시 멀티 플레이가 가능 한 스도쿠 게임</span><br><br>2. 개발동기<br></span><span style="FONT-SIZE: 100%"><span style="COLOR: #000000">핸드폰이나 웹 게임상 1인스도쿠 게임을 2명이서 대전하는 형식으로 하면<br>재미있을 것 같고 퍼즐게임 종류의 게임에 흥미가 많아&nbsp;개발하게 되었습니다<br></span><br>3. 구현(기능)목표<br></span><span style="FONT-SIZE: 100%"><span style="COLOR: #000000">(게임방식)<br>일반 스도쿠 게임과 똑같은 형식으로 진행됩니다<br>기본적인 숫자가 주어지며<br>1~9까지 겹치지 않게 숫자를 맞추어 빨리 맞추는 사람이 승리하는 형식<br><span style="COLOR: #009900">*추후 아이템 기능을 추가할 예정</span><br></span><br></span><span style="COLOR: #000000"><span style="FONT-SIZE: 100%">(구현목표)<br></span></span><span style="FONT-SIZE: 100%"><span style="COLOR: #000000">-게임창<br>게임의 숫자를 버튼형식으로 만들어 게임판에 숫자를 넣을 공간을 찍고 숫자버튼을 눌러 숫자를 넣는방식<br>-주메뉴창<br>게임시작과 게임포기, 아이템창을 넣을 예정<br>-보조메뉴창<br>상대방의 진행상태를 표시할 예정<br></span><span style="COLOR: #009900">*주메뉴창이나 보조메뉴창의 경우 약간의 수정및 보안예정</span><br><br>4. 역활 분담<br></span><span style="FONT-SIZE: 100%"><span style="COLOR: #000000">권훈 : 게임의 전체적 창(그래픽)을 담당<br>안동균 : 게임의 알고리즘 담당<br><span style="COLOR: #009900">*기타 DB나 네트워크 관련부분은 합동으로 할 예정</span></span><br><br>5. 개발일정<br></span><span style="FONT-SIZE: 100%"><span style="COLOR: #000000">10월 말 ~ 11월 1주 : 게임의 알고리즘 만들기, 기본적인 게임창 만들기, 1차 테스트(게임관련 버그 및 오류)<br>11월 2주 ~ 11월&nbsp;3주 : 게임의 모든창 구현 및 2차 테스트(메뉴실행관련 버그 및 오류)<br>11월 4주 ~ 12월 초 : DB 및 네트워크 및 3차 테스트(게임 전반적인 실행관련 버그 및 오류 체크)</span><br><br>6. 참고문헌<br></span><span style="FONT-SIZE: 100%"><span style="COLOR: #000000">Java Beginning 2 <br>미리 만들어진 스도쿠 게임소스<br>JAVA의 정석<br>JAVA API</span></span></span>			 ]]> 
		</description>
		<category>시스템프로젝트</category>

		<comments>http://rollinboy.egloos.com/1548895#comments</comments>
		<pubDate>Sat, 17 Oct 2009 10:27:21 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 시스템 프로젝트 계획 5차 ]]> </title>
		<link>http://rollinboy.egloos.com/1540474</link>
		<guid>http://rollinboy.egloos.com/1540474</guid>
		<description>
			<![CDATA[ 
  <p>처음 프로그램을 실행하면 gui환경의 메인메뉴가 등장한다. <br>메뉴의 구성은 <br><br>1. 싱글플레이<br>2. 멀티플레이<br>3. 기록보기<br>4. 게임종료<br><br>이것이 가장 기본적인 기본 메뉴고 메뉴의 선택에 따라 해당 화면으로 전환된다. <br>1번 싱글플레이의 경우 혼자 플레이 하는 경우며 순위에 맞춰 기록이 남는다.<br>2번 멀티플레이는 통신모드로 2인이서 대진을 하는 모드고 3번 기록보기는 싱글플레이에서 기록된 시간을 순위에 따라 보여진다.<br>요 메뉴에서 추가가 된다면 1~2개 메뉴가 더 추가될 예정이며 메뉴의 결정은 파트너와 협의 할 것이다.</p>			 ]]> 
		</description>
		<category>시스템프로젝트</category>

		<comments>http://rollinboy.egloos.com/1540474#comments</comments>
		<pubDate>Tue, 06 Oct 2009 14:25:39 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 시스템 프로젝트 계획 4차 ]]> </title>
		<link>http://rollinboy.egloos.com/1535386</link>
		<guid>http://rollinboy.egloos.com/1535386</guid>
		<description>
			<![CDATA[ 
  이제 계획을 현실화 시키기 위해 &nbsp;큰 그림을 그려봐야한다. 일단 내가 담당한 부분은 그래픽 부분인데<br>프로그램을 실행시키면 일단 메인 화면이 뜨고 메뉴를 선택해 해당 메뉴를 실행시키게 할 것이다. 모든 게임이나 프로그램이 그러하겠지만,.... 일단 기본적인 게임화면을 그림으로 설명하면<br><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds16.egloos.com/pds/200909/29/38/f0018338_4ac21562e6081.jpg" width="500" height="290.628115653" onclick="Control.Modal.openDialog(this, event, 'http://pds16.egloos.com/pds/200909/29/38/f0018338_4ac21562e6081.jpg');" /></div><br>위 그림은 궁극적인 목표인 통신 대전의 그림이다.<br>이런 화면이 되도록 만들건데 동균이 블로그를 보니 숫자를 입력하는 방식으로 알고리즘을 짠다고 들었다.<br>그런 방법도 있지만 내가 봤을땐 저번주에 배운 카드레이아웃을 사용해 보는것도 좋을것 같다.<br>기타옵션 같은 경우는 어떻게 될지는 모르지만 아이템 같은게 구현이 가능경우 저 위치에 배치 시킬것이다.			 ]]> 
		</description>
		<category>시스템프로젝트</category>

		<comments>http://rollinboy.egloos.com/1535386#comments</comments>
		<pubDate>Tue, 29 Sep 2009 10:48:00 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 시스템 프로젝트 계획 - 3차 ]]> </title>
		<link>http://rollinboy.egloos.com/1528391</link>
		<guid>http://rollinboy.egloos.com/1528391</guid>
		<description>
			<![CDATA[ 
  <p>이번 학기 시스템프로젝트의 주제는 스도쿠로 결정났다. <br>기존의 스도쿠랑은 다르게 교수님께서 말씀하신 통신대전과 아이템같은 우리만의 아이디어로 프로그램을 만들것이다.<br>동균이와 대략적인 각자의 파트를 한번 나눠 봤는데 동균이는&nbsp;전체적인 프로그램에 대한 알고리즘 작성을 맡고<br>나는 GUI기반의 프로그램 작성을 위해서 GUI 부분 즉, 프로그램의 꾸밈이라고 해야되나.. 게임판의 배치및 전체적인 그래픽작업을 <br>담당하게 됐다. 일단 그래픽적인 부분을 담당하기로 했기 때문에 아직 진도가 나가지 않은 AWT나머지&nbsp;부분이나 SWING을 개별적으로 공부해야되겠다는 생각을 했다. 몇번이고&nbsp;강조되는 것이지만 저번학기처럼 시간에 쫓겨서 하진 않을 것이다.&nbsp;&nbsp;<br>모든일이 깔끔하게 잘 풀렸으면 좋겠다.</p>			 ]]> 
		</description>
		<category>시스템프로젝트</category>

		<comments>http://rollinboy.egloos.com/1528391#comments</comments>
		<pubDate>Mon, 21 Sep 2009 02:07:57 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 시스템 프로젝트 계획 - 2차 ]]> </title>
		<link>http://rollinboy.egloos.com/1523338</link>
		<guid>http://rollinboy.egloos.com/1523338</guid>
		<description>
			<![CDATA[ 
  아직도 의견이 크게 좁혀지지 않았다<br>동균이의 경우 보드게임인 인생게임을 하자고 하고<br>나의 경우는 맞출려고 하지만 너무 힘들것 같아 스도쿠를 제시했다<br>시간이 계속 지체되면 프로젝트를 할때 1학기처럼 시간에 쫒길거 같아<br>내일 최종적으로 의견을 모은 후에 바로 진행을 해야겠다			 ]]> 
		</description>
		<category>시스템프로젝트</category>

		<comments>http://rollinboy.egloos.com/1523338#comments</comments>
		<pubDate>Mon, 14 Sep 2009 14:35:13 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 시스템 프로젝트 계획 ]]> </title>
		<link>http://rollinboy.egloos.com/1517324</link>
		<guid>http://rollinboy.egloos.com/1517324</guid>
		<description>
			<![CDATA[ 
  2학기의 시스템프로젝트의 과제는 기존의 형식에서 벗어나 뭔가 특이한걸 하고싶다<br><br>그래서 파트너인 동균이와 아이디어를 모아봤는데<br><br>동균이의 생각은 어렸을때 자주했던 보드게임중 출발지와 도착지를 만들어 여러개의 칸으로 나눈뒤 주사위를 만들어 게임을 진행<br><br>하는 프로그램을 만드는 아이디어고<br><br>내가 낸 아이디어는 요즘 많이들 하는 스도쿠게임을 만드는게 내 아이디어다. 스도쿠는 가로세로 9칸정도로 만들어 가로 세로에 1<br><br>부터 9가 전부 하나씩 들어가게 하는&nbsp;두뇌 게임인데&nbsp;아무래도 이번 프로젝트의 과제는 이 두가지 중 하나로 좁혀질꺼 같다.<br><br>뭘 하던간에 만만치 않은 프로그래밍이 되겠지만 노력해서 안될건 없다고 생각한다. <br><br>저번학기 같이 빠듯하게 하는게 아니라 주제가 어려운 만큼 차근차근 진행해야겠다.			 ]]> 
		</description>
		<category>시스템프로젝트</category>

		<comments>http://rollinboy.egloos.com/1517324#comments</comments>
		<pubDate>Mon, 07 Sep 2009 14:03:00 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 프로젝트 부가가능 벡터의 구현 및 텍스트 정리  ]]> </title>
		<link>http://rollinboy.egloos.com/1436390</link>
		<guid>http://rollinboy.egloos.com/1436390</guid>
		<description>
			<![CDATA[ 
  벡터를 구현할 차례다. 역시나 이것도 구현할 곳이 정말로 없어서 억지로 만들었다. 사전지식 메뉴에 적벽대전 이전 시나리오 부분을 그냥 파일 출력한게 아니라 Vector를 구현해 Iterator로 출력하게 만들었다.<br><br>Vector vt = new Vector(); //벡터 선언<br>&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ( sel1 == 1)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("==========================================================="+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileReader scene = new FileReader (new File("c:\\123\\history.txt"));<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BufferedReader br = new BufferedReader(scene);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String his; // 벡터 저장 변수<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while( (his = br.readLine()) != null)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vt.add(his);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Iterator histo = vt.iterator();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while (histo.hasNext())<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Object obj = histo.next(); //histo의 내용을 전부 obj에 저장<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println((String)obj); //obj에 저장된 것을 부른다.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("==========================================================="+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print("엔터를 입력하면 이전 메뉴로 이동 합니다.");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;his = menu1.readLine();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>이렇게 해서 추가기능은 추상클래스와 오버로딩을 제외하고 모두 구현했다.<br>아주 겹경사가 터진것이 텍스트 파일 정리해놓은것이 두번째로 날라가 이번에는 별수없이 <br>이미 텍스트로 정리되어있는 삼국지 소설을 사용할 수 밖에 없었다...-_-<br>			 ]]> 
		</description>
		<category>실험프로젝트</category>

		<comments>http://rollinboy.egloos.com/1436390#comments</comments>
		<pubDate>Sun, 14 Jun 2009 08:18:24 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 프로젝트 부가기능 추가 상속 및 인터페이스 오버라이딩 ]]> </title>
		<link>http://rollinboy.egloos.com/1436384</link>
		<guid>http://rollinboy.egloos.com/1436384</guid>
		<description>
			<![CDATA[ 
  <p>추가 기능을 구현 하기 위해 작성되었던 프로그램을 살펴보니... 기능을 구현 부분이 정말 없었다.<br>그래서...억지로라도 구현하기 위해 메인 메뉴의 게임정보를 따로 빼서 상속과 인터페이스와 오버라이딩을 한꺼번에 구현 하였다.<br>notice라는 클래스를 따로 만들고 information이라는 인터페이스를 만든다음 information1클래스에서 <br>상속과 인터페이스 구현을 한꺼번에 하였다. <br><br>class Notice //상속을 위해 존재하는 클래스<br>{<br>&nbsp;void show1(){}<br>}</p><p>interface Information //아래의 Information 1 인터페이스를 구현하기위한 인터페이스<br>{<br>&nbsp;void show() ; //추상 메소드 <br>}</p><p>class Information1 extends Notice implements Information // Temp 클래스를 상속하고 동시에 Information 인터페이스를 구현한다.<br>{<br>&nbsp;public void show1()<br>&nbsp;{<br>&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;System.out.println("**********************************************************");<br>&nbsp;&nbsp;System.out.println("********************알아두어야 할 것**********************");<br>&nbsp;&nbsp;System.out.println("**********************************************************");<br>&nbsp;&nbsp;System.out.println("***본 게임은 프로젝트 일환으로 만들어진 프로그램입니다.***");<br>&nbsp;&nbsp;System.out.println("**************맘대로 퍼가도 상관없습니다.*****************");<br>&nbsp;&nbsp;System.out.println("**********************************************************");<br>&nbsp;&nbsp;System.out.println();<br>&nbsp;}<br>&nbsp;<br>&nbsp;public void show() //위의 인터페이스 Information은 그대로 사용할 수 없으므로 show()메서드를 오버라이딩해 인터페이스를 구현한다. <br>&nbsp;{<br>&nbsp;&nbsp;BufferedReader in = new BufferedReader( new InputStreamReader(System.in)); //입력을 위해 사용<br>&nbsp;&nbsp;String sel = null;<br>&nbsp;&nbsp;<br>&nbsp;&nbsp;try<br>&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;while(true)<br>&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("게임 이름 : 삼국지 적벽대전"+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("원작&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 나관중 - 삼국지연의"+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("만든이&nbsp;&nbsp;&nbsp; : 네트워크 정보통신 3-C 권훈"+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("만든기간&nbsp; : 09.05~09.06"+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("1번을 누르면 이전 메뉴로 이동 합니다."+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;sel = in.readLine();<br>&nbsp;&nbsp;&nbsp;&nbsp;if (sel.equals("1")) break;<br>&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;}catch(Exception e){}<br>&nbsp;}<br>}</p>			 ]]> 
		</description>
		<category>실험프로젝트</category>

		<comments>http://rollinboy.egloos.com/1436384#comments</comments>
		<pubDate>Sat, 13 Jun 2009 10:07:00 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 프로젝트 메인의 재구성 ]]> </title>
		<link>http://rollinboy.egloos.com/1436379</link>
		<guid>http://rollinboy.egloos.com/1436379</guid>
		<description>
			<![CDATA[ 
  <p>이것저것 추가되서 메인을 정리해야했다. 프로그램이 거의 작성됬는데 정신이 없어서 정리좀 하기위해 메인부터 정리하였다.<br></p><p>class SamKukJi<br>{<br>&nbsp;public static void main(String args[])<br>&nbsp;{<br>&nbsp;&nbsp;while (true)<br>&nbsp;&nbsp;{<br>&nbsp;&nbsp;<br>&nbsp;&nbsp;System.out.println("************************************************"+"\t");<br>&nbsp;&nbsp;System.out.println("************************************************"+"\t");<br>&nbsp;&nbsp;System.out.println("**************** 삼국지 적벽대전 ***************"+"\t");<br>&nbsp;&nbsp;System.out.println("************************************************"+"\t");<br>&nbsp;&nbsp;System.out.println("***************************************by Kwon**"+"\t");<br>&nbsp;&nbsp;System.out.println("************************************************"+"\t");<br>&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;System.out.println("아래에서 메뉴를 선택하세요."+"\t");<br>&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;System.out.println("1. 게임을 시작하기에 앞서"+"\t");<br>&nbsp;&nbsp;System.out.println("2. 게임 시작"+"\t");<br>&nbsp;&nbsp;System.out.println("3. 불러오기"+"\t");<br>&nbsp;&nbsp;System.out.println("4. 게임 종료"+"\t");<br>&nbsp;&nbsp;System.out.println("5. 게임 정보"+"\t");<br>&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;System.out.print("원하시는 번호를 선택 하세요. : "+"\t");<br>&nbsp;&nbsp;BufferedReader menu = new BufferedReader (new InputStreamReader(System.in));<br>&nbsp;&nbsp;String sel = null;<br>&nbsp;&nbsp;String sel1 = null;<br>&nbsp;&nbsp;int a=0;<br>&nbsp;&nbsp;try<br>&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;while ( (sel = menu.readLine()) != null )<br>&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;if (sel.equals("1")) //1. 게임을 시작하기 전에 메뉴<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Know x = new Know(); //Know 클래스를 사용 가능하게 한다.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x.Menu1(); // Know클래스의 Menu1메서드를 불러온다.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;if (sel.equals("2")) //2. 게임 진행 메뉴<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Scenario www = new Scenario(); </p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(true)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( END &lt; (j*10+i) )&nbsp;&nbsp;&nbsp; //엔딩조건 시나리오 번호를 넘어섰을때 a를 2로 셋팅후 while문 밖으로 뺀다.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a = 2; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String atr = "c:\\123\\scene"+j+i+".txt";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a = <a href="http://www.fileread(atr/">www.fileread(atr</a>);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (a == 0) break; // a=0일때 while을 빠져나간다.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (a == -1) return; //게임 진행동안 게임을 끝내는 종료값<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i++;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(i==10)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i = 0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j++;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(a == 0) //while에서 빠져나온 a값에 대한 부분 게임오버를 나타낸다.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("잘못 선택하셨습니다. ");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("저장을 하지 않으셨다면 처음부터 다시 시작하십시오.");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( a == 2) //a값을 보고 엔딩 출력<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(true)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Thread.sleep(4000);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("=========================================================");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y.end();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("=========================================================");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print("게임이 끝났습니다. 허접한 게임 하시느라 수고 많으셨습니다.");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print("1번을 누르시면 메인으로 돌아갑니다. : ");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sel2 = menu.readLine();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (sel2.equals("1")) break;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}catch(Exception e){}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;if (sel.equals("3"))<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String temp1 = null; //test1은 파일을 읽기위한 임시 변수<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileReader save = new FileReader (new File("c:\\123\\save.txt"));<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BufferedReader br = new BufferedReader(save);</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;temp1 = br.readLine();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;br.close(); <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;save.close();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}catch(Exception e){}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j = temp1.charAt(12)-48;&nbsp; //test1.charAt형이 문자형이라 정수값을 얻기 위해서 48을 뺌<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i = temp1.charAt(13)-48;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("불러왔습니다.");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print("원하시는 메뉴를 입력하세요 : ");</p><p>&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;if (sel.equals("4"))<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("감사 합니다. "+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} </p><p>&nbsp;&nbsp;&nbsp;&nbsp;if (sel.equals("5"))<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(true)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("만든이 : 네트워크 정보통신 3-C 권훈"+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("만든기간 : 09.05~09.06"+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("1번을 누르면 이전 메뉴로 이동 합니다."+"\t");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sel = menu.readLine();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (sel.equals("1")) break;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} <br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;catch (Exception e){} if (sel.equals("4"))break;<br>&nbsp;&nbsp;}<br>&nbsp;}</p><p>}<br><br>만들어 놓았던 여러 클래스들을 메인메뉴로 정리한것이다.&nbsp;기존에 2개밖에 없던 메뉴를 수정하여&nbsp;1번을 사전지식&nbsp;메뉴로 사용하고<br><br>5번을 새로 게임정보로 추가하여 만든 사람및 기타등등을 등록해놨다.&nbsp;</p>			 ]]> 
		</description>
		<category>실험프로젝트</category>

		<comments>http://rollinboy.egloos.com/1436379#comments</comments>
		<pubDate>Fri, 12 Jun 2009 23:06:00 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 프로젝트 저장하고 불러오기 만들기 ]]> </title>
		<link>http://rollinboy.egloos.com/1436371</link>
		<guid>http://rollinboy.egloos.com/1436371</guid>
		<description>
			<![CDATA[ 
  <p>게임을 하다보면 누구나 실수로 망할때가 있다 이떄 만약 세이브를 하지 않고 무작정 진행을 했다가 게임오버가 된다면....<br>그 충격은 말로 못하게 클것이다... 그건 당해본 사람은 안다. 정말로.....<br>그런걸 방지해 보기 위해!! 저장기능과 불러오기 기능을 만들었다. 프로그램이 너무 썰렁해서 만든건 아니다 정말로...<br>&nbsp;우선 저장부분은 시나리오 클래스에서 만들었는데 보너스로 게임플레이 중간에 종료도 할 수있는 기능을 만들었다.<br>class Scenario<br>{<br>&nbsp;public int fileread(String scene) //<br>&nbsp;{&nbsp;<br>&nbsp;&nbsp;try<br>&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;String text = null; //텍스트파일을 읽는 변수 <br>&nbsp;&nbsp;&nbsp;String input = null; // 사용자가 입력하는 값<br>&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;FileReader fr = new FileReader (new File(scene));<br>&nbsp;&nbsp;&nbsp;BufferedReader br = new BufferedReader(fr);<br>&nbsp;&nbsp;&nbsp;BufferedReader atr = new BufferedReader (new InputStreamReader(System.in));<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;while ( (text = br.readLine()) != null )<br>&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;if (text.equals("enter")) //불러오는 텍스트 파일에 enter라는 문자열이 있으면 수행 텍스트를 끊어서 읽기위해 사용했다.<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("엔터를 누르세요.");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;input=atr.readLine();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;if(text.equals("1") || text.equals("2")) //마지막에 text는 설정해 놓은 값<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(text);<br>&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;System.out.println("3. 현재 시나리오 저장");<br>&nbsp;&nbsp;&nbsp;System.out.println("4. 게임종료");<br>&nbsp;&nbsp;&nbsp;System.out.print("원하시는 메뉴를 선택하세요 : ");<br>&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;input = atr.readLine();</p><p>&nbsp;&nbsp;&nbsp;if (input.equals("3")) //현재 진행되는 장면을 저장하는 부분<br>&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;try<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileWriter fw = new FileWriter(new File("c:\\123\\save.txt")); // c:\123\ 에 save.txt파일을 만들어 저장<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BufferedWriter bw = new BufferedWriter(fw);</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("저장되었습니다");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bw.write(scene);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print("원하시는 메뉴를 선택하세요 : ");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;input = atr.readLine();</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bw.close();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fw.close();<br>&nbsp;&nbsp;&nbsp;&nbsp;}catch(Exception e){}<br>&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;if( text.equals(input) ) return 1;<br>&nbsp;&nbsp;&nbsp;if (input.equals("4")) return -1;<br>&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;return 0;<br>&nbsp;&nbsp;}catch (Exception e) {}</p><p>&nbsp;&nbsp;return 0;<br>&nbsp;}<br>}<br><br>게임 진행중 분기점에서 3번을 누르면 파일 라이터를 이용해서 123폴더에 save.txt를 만들어&nbsp;<br><br>진행중인 파일의 경로를 저장한다. 그리고 4번을 누르게 되면 중간에 게임종료가 가능하다. <br><br>그 다음은&nbsp;불러오기 기능 ...이건 메인에다가 만들었다.<br><br>&nbsp;&nbsp;&nbsp;&nbsp;if (sel.equals("3"))<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String temp1 = null; //test1은 파일을 읽기위한 임시 변수<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileReader save = new FileReader (new File("c:\\123\\save.txt"));<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BufferedReader br = new BufferedReader(save);</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;temp1 = br.readLine();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;br.close(); <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;save.close();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}catch(Exception e){}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j = temp1.charAt(12)-48;&nbsp; //test1.charAt형이 문자형이라 정수값을 얻기 위해서 48을 뺌<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i = temp1.charAt(13)-48;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("불러왔습니다.");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print("원하시는 메뉴를 입력하세요 : ");</p><p>&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>save.txt에 저장되어있는 경로에 대해 자리수 번호로 읽어서 불러온 후에 게임시작을 하면 <br><br>저장되어있는 경로부터 게임이 시작된다.<br><br></p>			 ]]> 
		</description>
		<category>실험프로젝트</category>

		<comments>http://rollinboy.egloos.com/1436371#comments</comments>
		<pubDate>Fri, 12 Jun 2009 08:00:00 GMT</pubDate>
		<dc:creator>권훈</dc:creator>
	</item>
</channel>
</rss>
