SlideShare a Scribd company logo
1 of 18
ABALONE
ABALONE 보드게임 with
FACEBOOK
INDEX
ABALONE
01 역할분담 & 회의일정
02 프로젝트 ABALONE 소개
03 ABALONE 보드게임방법
04 프로젝트 시연
05 질의응답
01 역할분담 & 회의일정
01
ABALONE
설계
ABALONE
02 프로젝트 ABALONE 소개
02
ABALONE
"아 발 론" 이라는 보드 게임을 2D로 개발, 일반적인 온라인
게임과 같이 대전모드를 제공하여 멀티플레이가 가능한 보
드 게임을 제작하였습니다. 프로젝트를 단순한 프로젝트로
끝내는 것이 아니라, SNS(Social Network Service) 열풍이
전세계를 강타하고 있는 추세에 맞춰 접근이 쉽고 활용 능력
이 뛰어난 Facebook을 이용해, SNG(SNS를 기반으로 하는
소셜 네트워크 게임)라는 장르로 “아발론”이라는 보드게임
을 2D로 개발하였습니다.
(1) 프로젝트 Abalone이란?
ABALONE
IDE
Eclipse
: 전반적인 프로그램 소스코드 작성에 사용
Netbeans
: UI 제작부분에서 사용
라이브러리
restFB, mysql-jdbc-connector, Jackson-JSON,
DBMS
Mysql 5.16
Back-end
JSP(Apache 2.1 + Tomcat 7.0 with Servlet)
Tool
SVN (소스코드관리도구)
: 소스코드 형상관리에 사용
Photoshop
:UI Design 용으로 사용.
(2) 프로젝트 개발에 사용된 IDE,
라이브러리(lib),Tool
ABALONE
① Facebook과의 연동
이번 프로젝트의 가장 큰 특징은 소셜 네트워크 서비스인 페이
스북을 JSP를 통해 연동하고, restFB라는 라이브러리를 이용하
여 페이스북의 다양한 API를 사용할 수 있도록 하였습니다.
restfb 라이브러리를 이용하여 페이스북에서 친구목록, 담벼락
포스팅, 내 정보 등을 쉽게 가져올 수 있도록 하였습니다.
프로젝트 시연에서 게임 승패에 따라 페이스북 담벼락에 기록
됨을 보실 수 있습니다.
(3) 프로젝트 특징
Web brawser
restFB(lib)
FacebookAvalone client
ABALONE
Client1
Client2
Abalone
Server
(Thread) Head:
Body:
② 서버 클라이언트
Avalon Server에 사용자1이 로그인을 하면 Soket을 오픈해
줍니다. 사용자2도 Avalon Server에 로그인을 하면 Soket
을 오픈해줍니다. Server에서는 계속 Thread를 진행하여
사용자간 연결을 해주도록 하였습니다.
Abalone
Server
switch(head)
Case CHAT
Head:
Body
Head:
Body:
packet
packet
ABALONE
Abalone
Server
switch(head)
Case CHAT
Abalone
Server
(Thread)
Client1
Head:
Body:
Head:
Body:
③ 채팅
Avalon Server에 사용자가 연결되면 head와 body를
packet으로 묶어 보내주어 head부분에 action을 취해주면
그에 따라서 Server에서 분기처리 하여 해당 클라이언트로
packet을 다시보내주도록 하였습니다.
Serializable 속성을 통해 Packet 클래스는 서버와 동기화
시켰으며, 이 부분에서 실제 데이터 부분은 JSON객체로 송
수신 하게 하였습니다.
packet
ABALONE
RoomFrame
CirclePanel
④게임부분
RoomFrame부분에 게임을 할 수 있는 보드판을 이중Array
List로 구현하고, CirclePanel에 돌의 위치를 Array List로
좌표화 하여, 마우스 클릭하는 위치에 따라서 함수를 통해
돌의 움직임을 제어합니다.
옮기고 싶은 자신의 돌을 클릭하면 돌의 테두리 색이 파란색
으로 바뀌며, 갈 수 있는 방향의 테두리가 파란색으로 바뀝
니다. 옮길 수 있는 돌은 최대2개이며 테두리가 파란색 인 칸
을 택하게 되면 돌들이 옮겨집니다.
중요하게 쓰이는 함수:
changeColor(int i, int j)
moveStone(int i, int j)
OffBStone(int [][] locationOfBStone)
printMoveStone(int i,int j)
setPossibleMove(int i, int j)
unSetPossibleMove()
03 ABALONE 보드게임방법
03
ABALONE
ABALONE
04 프로젝트 시연
04
05 질의응답
Thank
you

More Related Content

Viewers also liked

20140510 56대총학 거버넌스교양자료(김재원) (발표용)
20140510 56대총학 거버넌스교양자료(김재원) (발표용)20140510 56대총학 거버넌스교양자료(김재원) (발표용)
20140510 56대총학 거버넌스교양자료(김재원) (발표용)Jaewon Kim
 
게임디자인원론 디자인 과정 사례연구
게임디자인원론 디자인 과정 사례연구게임디자인원론 디자인 과정 사례연구
게임디자인원론 디자인 과정 사례연구Hyo-nyeong Han
 
지니어스 캐쥬얼 보드게임 운영안
지니어스 캐쥬얼 보드게임 운영안지니어스 캐쥬얼 보드게임 운영안
지니어스 캐쥬얼 보드게임 운영안WonJong Lee
 
Game concept presentation
Game concept presentationGame concept presentation
Game concept presentationErez Yerushalmi
 
Battle Of Theoi - Board Game Design & Marketing Presentation
Battle Of Theoi - Board Game Design & Marketing PresentationBattle Of Theoi - Board Game Design & Marketing Presentation
Battle Of Theoi - Board Game Design & Marketing PresentationShriram Srinivasan
 
Toast cloud analytics
Toast cloud analyticsToast cloud analytics
Toast cloud analyticsTOAST_NHNent
 
To be Open Source or not to be ? OW2con’12, Paris
To be Open Source or not to be ? OW2con’12, ParisTo be Open Source or not to be ? OW2con’12, Paris
To be Open Source or not to be ? OW2con’12, ParisOW2
 
Pieces of release, how to make a puzzle - LibreOffice
Pieces of release, how to make a puzzle - LibreOfficePieces of release, how to make a puzzle - LibreOffice
Pieces of release, how to make a puzzle - LibreOfficeOW2
 
CHOReVOLUTION project to facilitate cross-organization service integration
CHOReVOLUTION project to facilitate cross-organization service integrationCHOReVOLUTION project to facilitate cross-organization service integration
CHOReVOLUTION project to facilitate cross-organization service integrationOW2
 
Open Source Governance in OW2 SQUAT program, OW2con'12, Paris
Open Source Governance in OW2 SQUAT program, OW2con'12, ParisOpen Source Governance in OW2 SQUAT program, OW2con'12, Paris
Open Source Governance in OW2 SQUAT program, OW2con'12, ParisOW2
 
Ciszewski internet credentials and case study eng
Ciszewski internet credentials and case study engCiszewski internet credentials and case study eng
Ciszewski internet credentials and case study engCiszewski MSL
 
Jasmine Probe, OW2con11, Nov 24-25, Paris
Jasmine Probe, OW2con11, Nov 24-25, ParisJasmine Probe, OW2con11, Nov 24-25, Paris
Jasmine Probe, OW2con11, Nov 24-25, ParisOW2
 
Chapter 11
Chapter 11Chapter 11
Chapter 11dphil002
 
Amsterdam Data Portal
Amsterdam Data Portal Amsterdam Data Portal
Amsterdam Data Portal OW2
 
Internet Threats and Risk Mitigation
Internet Threats and Risk MitigationInternet Threats and Risk Mitigation
Internet Threats and Risk MitigationBrandProtect
 
Using Community Clouds for Load Testing- the ProActive CLIF solution, OW2con'...
Using Community Clouds for Load Testing- the ProActive CLIF solution, OW2con'...Using Community Clouds for Load Testing- the ProActive CLIF solution, OW2con'...
Using Community Clouds for Load Testing- the ProActive CLIF solution, OW2con'...OW2
 
Ocelot Project, OW2con11, Nov 24-25, Paris
Ocelot Project, OW2con11, Nov 24-25, ParisOcelot Project, OW2con11, Nov 24-25, Paris
Ocelot Project, OW2con11, Nov 24-25, ParisOW2
 

Viewers also liked (20)

20140510 56대총학 거버넌스교양자료(김재원) (발표용)
20140510 56대총학 거버넌스교양자료(김재원) (발표용)20140510 56대총학 거버넌스교양자료(김재원) (발표용)
20140510 56대총학 거버넌스교양자료(김재원) (발표용)
 
Bmg 현장실습용 board sheet
Bmg 현장실습용 board sheetBmg 현장실습용 board sheet
Bmg 현장실습용 board sheet
 
게임디자인원론 디자인 과정 사례연구
게임디자인원론 디자인 과정 사례연구게임디자인원론 디자인 과정 사례연구
게임디자인원론 디자인 과정 사례연구
 
지니어스 캐쥬얼 보드게임 운영안
지니어스 캐쥬얼 보드게임 운영안지니어스 캐쥬얼 보드게임 운영안
지니어스 캐쥬얼 보드게임 운영안
 
Game concept presentation
Game concept presentationGame concept presentation
Game concept presentation
 
Battle Of Theoi - Board Game Design & Marketing Presentation
Battle Of Theoi - Board Game Design & Marketing PresentationBattle Of Theoi - Board Game Design & Marketing Presentation
Battle Of Theoi - Board Game Design & Marketing Presentation
 
Board game design
Board game designBoard game design
Board game design
 
Toast cloud analytics
Toast cloud analyticsToast cloud analytics
Toast cloud analytics
 
To be Open Source or not to be ? OW2con’12, Paris
To be Open Source or not to be ? OW2con’12, ParisTo be Open Source or not to be ? OW2con’12, Paris
To be Open Source or not to be ? OW2con’12, Paris
 
Pieces of release, how to make a puzzle - LibreOffice
Pieces of release, how to make a puzzle - LibreOfficePieces of release, how to make a puzzle - LibreOffice
Pieces of release, how to make a puzzle - LibreOffice
 
CHOReVOLUTION project to facilitate cross-organization service integration
CHOReVOLUTION project to facilitate cross-organization service integrationCHOReVOLUTION project to facilitate cross-organization service integration
CHOReVOLUTION project to facilitate cross-organization service integration
 
Open Source Governance in OW2 SQUAT program, OW2con'12, Paris
Open Source Governance in OW2 SQUAT program, OW2con'12, ParisOpen Source Governance in OW2 SQUAT program, OW2con'12, Paris
Open Source Governance in OW2 SQUAT program, OW2con'12, Paris
 
Ciszewski internet credentials and case study eng
Ciszewski internet credentials and case study engCiszewski internet credentials and case study eng
Ciszewski internet credentials and case study eng
 
AMIGOS COMO TU
AMIGOS COMO TUAMIGOS COMO TU
AMIGOS COMO TU
 
Jasmine Probe, OW2con11, Nov 24-25, Paris
Jasmine Probe, OW2con11, Nov 24-25, ParisJasmine Probe, OW2con11, Nov 24-25, Paris
Jasmine Probe, OW2con11, Nov 24-25, Paris
 
Chapter 11
Chapter 11Chapter 11
Chapter 11
 
Amsterdam Data Portal
Amsterdam Data Portal Amsterdam Data Portal
Amsterdam Data Portal
 
Internet Threats and Risk Mitigation
Internet Threats and Risk MitigationInternet Threats and Risk Mitigation
Internet Threats and Risk Mitigation
 
Using Community Clouds for Load Testing- the ProActive CLIF solution, OW2con'...
Using Community Clouds for Load Testing- the ProActive CLIF solution, OW2con'...Using Community Clouds for Load Testing- the ProActive CLIF solution, OW2con'...
Using Community Clouds for Load Testing- the ProActive CLIF solution, OW2con'...
 
Ocelot Project, OW2con11, Nov 24-25, Paris
Ocelot Project, OW2con11, Nov 24-25, ParisOcelot Project, OW2con11, Nov 24-25, Paris
Ocelot Project, OW2con11, Nov 24-25, Paris
 

Similar to Project Avalon

[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for AppspressoKTH, 케이티하이텔
 
구글앱엔진+스프링+스프링datajpa+메이븐
구글앱엔진+스프링+스프링datajpa+메이븐구글앱엔진+스프링+스프링datajpa+메이븐
구글앱엔진+스프링+스프링datajpa+메이븐라한사 아
 
Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Minsu Park
 
ELB와 EBS의 아키텍터로 생각해보는 사용상 주의할 점들
ELB와 EBS의 아키텍터로 생각해보는 사용상 주의할 점들ELB와 EBS의 아키텍터로 생각해보는 사용상 주의할 점들
ELB와 EBS의 아키텍터로 생각해보는 사용상 주의할 점들AWSKRUG - AWS한국사용자모임
 
아마존 웹서비스를 이용한 WebApp 제작 Attendee
아마존 웹서비스를 이용한 WebApp 제작 Attendee아마존 웹서비스를 이용한 WebApp 제작 Attendee
아마존 웹서비스를 이용한 WebApp 제작 AttendeeLEEDONGJOON1
 
Hybrid App Platform - HyWAI 3.5
Hybrid App Platform - HyWAI 3.5Hybrid App Platform - HyWAI 3.5
Hybrid App Platform - HyWAI 3.5Jonathan Jeon
 
Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Daum DNA
 
Swift and Xcode8
Swift and Xcode8Swift and Xcode8
Swift and Xcode8Hyuk Hur
 

Similar to Project Avalon (12)

[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso
 
구글앱엔진+스프링+스프링datajpa+메이븐
구글앱엔진+스프링+스프링datajpa+메이븐구글앱엔진+스프링+스프링datajpa+메이븐
구글앱엔진+스프링+스프링datajpa+메이븐
 
Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)Ndc2013 정리(upload버전)
Ndc2013 정리(upload버전)
 
Subversion
SubversionSubversion
Subversion
 
ELB와 EBS의 아키텍터로 생각해보는 사용상 주의할 점들
ELB와 EBS의 아키텍터로 생각해보는 사용상 주의할 점들ELB와 EBS의 아키텍터로 생각해보는 사용상 주의할 점들
ELB와 EBS의 아키텍터로 생각해보는 사용상 주의할 점들
 
아마존 웹서비스를 이용한 WebApp 제작 Attendee
아마존 웹서비스를 이용한 WebApp 제작 Attendee아마존 웹서비스를 이용한 WebApp 제작 Attendee
아마존 웹서비스를 이용한 WebApp 제작 Attendee
 
Hybrid App Platform - HyWAI 3.5
Hybrid App Platform - HyWAI 3.5Hybrid App Platform - HyWAI 3.5
Hybrid App Platform - HyWAI 3.5
 
Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012
 
Swift and Xcode8
Swift and Xcode8Swift and Xcode8
Swift and Xcode8
 
java_1장.pptx
java_1장.pptxjava_1장.pptx
java_1장.pptx
 
Webpack&babel
Webpack&babelWebpack&babel
Webpack&babel
 
java_1장.pptx
java_1장.pptxjava_1장.pptx
java_1장.pptx
 

More from Matthew Chang

Research and Analysis of SSH
Research and Analysis of SSH Research and Analysis of SSH
Research and Analysis of SSH Matthew Chang
 
Digital Certified Mail (PPT)
Digital Certified Mail (PPT)Digital Certified Mail (PPT)
Digital Certified Mail (PPT)Matthew Chang
 
Digital Certified Mail
Digital Certified MailDigital Certified Mail
Digital Certified MailMatthew Chang
 
Twitter Trend Analyzer
Twitter Trend AnalyzerTwitter Trend Analyzer
Twitter Trend AnalyzerMatthew Chang
 
The implementation of Banker's algorithm, data structure and its parser
The implementation of Banker's algorithm, data structure and its parserThe implementation of Banker's algorithm, data structure and its parser
The implementation of Banker's algorithm, data structure and its parserMatthew Chang
 
Image Compression Storage Policy for Openstack Swift
Image Compression Storage Policy for Openstack SwiftImage Compression Storage Policy for Openstack Swift
Image Compression Storage Policy for Openstack SwiftMatthew Chang
 
Analyze of Tumblr.com
Analyze of Tumblr.comAnalyze of Tumblr.com
Analyze of Tumblr.comMatthew Chang
 
A new interface between smart device and web using html5 web socket and qr code
A new interface between smart device and web using html5 web socket and qr codeA new interface between smart device and web using html5 web socket and qr code
A new interface between smart device and web using html5 web socket and qr codeMatthew Chang
 
Logic Circuit Project Final Presentation
Logic Circuit Project Final PresentationLogic Circuit Project Final Presentation
Logic Circuit Project Final PresentationMatthew Chang
 
Programming Language Final PPT
Programming Language Final PPTProgramming Language Final PPT
Programming Language Final PPTMatthew Chang
 
Profile_ Ikwhan chang
Profile_ Ikwhan changProfile_ Ikwhan chang
Profile_ Ikwhan changMatthew Chang
 
모바일 앱 개발 최종 발표 Proposal
모바일 앱 개발 최종 발표 Proposal모바일 앱 개발 최종 발표 Proposal
모바일 앱 개발 최종 발표 ProposalMatthew Chang
 
Capstone Project Final Presentation
Capstone Project Final PresentationCapstone Project Final Presentation
Capstone Project Final PresentationMatthew Chang
 
Project NGX - Proposal
Project NGX - ProposalProject NGX - Proposal
Project NGX - ProposalMatthew Chang
 
Report : Android Simple Bug Catch Game(Korean)
Report : Android Simple Bug Catch Game(Korean)Report : Android Simple Bug Catch Game(Korean)
Report : Android Simple Bug Catch Game(Korean)Matthew Chang
 
Capstone Project Last Demonstration
Capstone Project Last DemonstrationCapstone Project Last Demonstration
Capstone Project Last DemonstrationMatthew Chang
 
Db설계 프로젝트 1조 _중간제출
Db설계 프로젝트 1조 _중간제출Db설계 프로젝트 1조 _중간제출
Db설계 프로젝트 1조 _중간제출Matthew Chang
 
​Presentation team ngx 5주차 발표자료
​Presentation team ngx 5주차 발표자료​Presentation team ngx 5주차 발표자료
​Presentation team ngx 5주차 발표자료Matthew Chang
 

More from Matthew Chang (20)

Research and Analysis of SSH
Research and Analysis of SSH Research and Analysis of SSH
Research and Analysis of SSH
 
Digital Certified Mail (PPT)
Digital Certified Mail (PPT)Digital Certified Mail (PPT)
Digital Certified Mail (PPT)
 
Digital Certified Mail
Digital Certified MailDigital Certified Mail
Digital Certified Mail
 
Twitter Trend Analyzer
Twitter Trend AnalyzerTwitter Trend Analyzer
Twitter Trend Analyzer
 
The implementation of Banker's algorithm, data structure and its parser
The implementation of Banker's algorithm, data structure and its parserThe implementation of Banker's algorithm, data structure and its parser
The implementation of Banker's algorithm, data structure and its parser
 
Image Compression Storage Policy for Openstack Swift
Image Compression Storage Policy for Openstack SwiftImage Compression Storage Policy for Openstack Swift
Image Compression Storage Policy for Openstack Swift
 
Urhyme introduction
Urhyme introductionUrhyme introduction
Urhyme introduction
 
SDN Project PPT
SDN Project PPTSDN Project PPT
SDN Project PPT
 
Analyze of Tumblr.com
Analyze of Tumblr.comAnalyze of Tumblr.com
Analyze of Tumblr.com
 
A new interface between smart device and web using html5 web socket and qr code
A new interface between smart device and web using html5 web socket and qr codeA new interface between smart device and web using html5 web socket and qr code
A new interface between smart device and web using html5 web socket and qr code
 
Logic Circuit Project Final Presentation
Logic Circuit Project Final PresentationLogic Circuit Project Final Presentation
Logic Circuit Project Final Presentation
 
Programming Language Final PPT
Programming Language Final PPTProgramming Language Final PPT
Programming Language Final PPT
 
Profile_ Ikwhan chang
Profile_ Ikwhan changProfile_ Ikwhan chang
Profile_ Ikwhan chang
 
모바일 앱 개발 최종 발표 Proposal
모바일 앱 개발 최종 발표 Proposal모바일 앱 개발 최종 발표 Proposal
모바일 앱 개발 최종 발표 Proposal
 
Capstone Project Final Presentation
Capstone Project Final PresentationCapstone Project Final Presentation
Capstone Project Final Presentation
 
Project NGX - Proposal
Project NGX - ProposalProject NGX - Proposal
Project NGX - Proposal
 
Report : Android Simple Bug Catch Game(Korean)
Report : Android Simple Bug Catch Game(Korean)Report : Android Simple Bug Catch Game(Korean)
Report : Android Simple Bug Catch Game(Korean)
 
Capstone Project Last Demonstration
Capstone Project Last DemonstrationCapstone Project Last Demonstration
Capstone Project Last Demonstration
 
Db설계 프로젝트 1조 _중간제출
Db설계 프로젝트 1조 _중간제출Db설계 프로젝트 1조 _중간제출
Db설계 프로젝트 1조 _중간제출
 
​Presentation team ngx 5주차 발표자료
​Presentation team ngx 5주차 발표자료​Presentation team ngx 5주차 발표자료
​Presentation team ngx 5주차 발표자료
 

Project Avalon

  • 2. INDEX ABALONE 01 역할분담 & 회의일정 02 프로젝트 ABALONE 소개 03 ABALONE 보드게임방법 04 프로젝트 시연 05 질의응답
  • 3. 01 역할분담 & 회의일정 01
  • 7. ABALONE "아 발 론" 이라는 보드 게임을 2D로 개발, 일반적인 온라인 게임과 같이 대전모드를 제공하여 멀티플레이가 가능한 보 드 게임을 제작하였습니다. 프로젝트를 단순한 프로젝트로 끝내는 것이 아니라, SNS(Social Network Service) 열풍이 전세계를 강타하고 있는 추세에 맞춰 접근이 쉽고 활용 능력 이 뛰어난 Facebook을 이용해, SNG(SNS를 기반으로 하는 소셜 네트워크 게임)라는 장르로 “아발론”이라는 보드게임 을 2D로 개발하였습니다. (1) 프로젝트 Abalone이란?
  • 8. ABALONE IDE Eclipse : 전반적인 프로그램 소스코드 작성에 사용 Netbeans : UI 제작부분에서 사용 라이브러리 restFB, mysql-jdbc-connector, Jackson-JSON, DBMS Mysql 5.16 Back-end JSP(Apache 2.1 + Tomcat 7.0 with Servlet) Tool SVN (소스코드관리도구) : 소스코드 형상관리에 사용 Photoshop :UI Design 용으로 사용. (2) 프로젝트 개발에 사용된 IDE, 라이브러리(lib),Tool
  • 9. ABALONE ① Facebook과의 연동 이번 프로젝트의 가장 큰 특징은 소셜 네트워크 서비스인 페이 스북을 JSP를 통해 연동하고, restFB라는 라이브러리를 이용하 여 페이스북의 다양한 API를 사용할 수 있도록 하였습니다. restfb 라이브러리를 이용하여 페이스북에서 친구목록, 담벼락 포스팅, 내 정보 등을 쉽게 가져올 수 있도록 하였습니다. 프로젝트 시연에서 게임 승패에 따라 페이스북 담벼락에 기록 됨을 보실 수 있습니다. (3) 프로젝트 특징 Web brawser restFB(lib) FacebookAvalone client
  • 10. ABALONE Client1 Client2 Abalone Server (Thread) Head: Body: ② 서버 클라이언트 Avalon Server에 사용자1이 로그인을 하면 Soket을 오픈해 줍니다. 사용자2도 Avalon Server에 로그인을 하면 Soket 을 오픈해줍니다. Server에서는 계속 Thread를 진행하여 사용자간 연결을 해주도록 하였습니다. Abalone Server switch(head) Case CHAT Head: Body Head: Body: packet packet
  • 11. ABALONE Abalone Server switch(head) Case CHAT Abalone Server (Thread) Client1 Head: Body: Head: Body: ③ 채팅 Avalon Server에 사용자가 연결되면 head와 body를 packet으로 묶어 보내주어 head부분에 action을 취해주면 그에 따라서 Server에서 분기처리 하여 해당 클라이언트로 packet을 다시보내주도록 하였습니다. Serializable 속성을 통해 Packet 클래스는 서버와 동기화 시켰으며, 이 부분에서 실제 데이터 부분은 JSON객체로 송 수신 하게 하였습니다. packet
  • 12. ABALONE RoomFrame CirclePanel ④게임부분 RoomFrame부분에 게임을 할 수 있는 보드판을 이중Array List로 구현하고, CirclePanel에 돌의 위치를 Array List로 좌표화 하여, 마우스 클릭하는 위치에 따라서 함수를 통해 돌의 움직임을 제어합니다. 옮기고 싶은 자신의 돌을 클릭하면 돌의 테두리 색이 파란색 으로 바뀌며, 갈 수 있는 방향의 테두리가 파란색으로 바뀝 니다. 옮길 수 있는 돌은 최대2개이며 테두리가 파란색 인 칸 을 택하게 되면 돌들이 옮겨집니다. 중요하게 쓰이는 함수: changeColor(int i, int j) moveStone(int i, int j) OffBStone(int [][] locationOfBStone) printMoveStone(int i,int j) setPossibleMove(int i, int j) unSetPossibleMove()