国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看

合肥生活安徽新聞合肥交通合肥房產(chǎn)生活服務(wù)合肥教育合肥招聘合肥旅游文化藝術(shù)合肥美食合肥地圖合肥社保合肥醫(yī)院企業(yè)服務(wù)合肥法律

COMP2396代做、代寫(xiě)Tic-Tac-Toe Game設(shè)計(jì)編程

時(shí)間:2023-12-12  來(lái)源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯(cuò)


This assignment tests your understanding on GUI, Java Socket Programming and the

COMP2396 Object-oriented programming and Java

Assignment 4: A two-player Tic-Tac-Toe Game

Due Date: 7th December 2023 23:59

application of multi-threading.

In this assignment, you are going to implement a two-player Tic-Tac-Toe Game. The

game would only start when the Tic-Tac-Toe Server runs and two players are connected

to the server. When the game starts, players need to input their player’s name first (i.e.,

the player cannot make any move if he/she does not enter his/her player’s name) (Fig.

1). Players are not allowed to re-input their names again once they have submitted their

names (i.e., the textboxes and the submit buttons should be disabled). In addition, their

names should be displayed in the frame’s title (i.e., change from Tic Tac Toe to Tic Tac

Toe-Player: (player’s name)) and the message title (located below the menu bar) should

change from “Enter your player name…” to “WELCOME (player’s name)” (Fig. 2).

Initial setting:

 

Fig. 1

After player enters his/her name:

Fig. 2

After entering the player’s name, the game would always be started by player 1 (the

player’s mark with a “x”)’s first move (i.e., player 2 (the player’s mark with a “o”)

cannot make his/her first move until player 1 makes his/her first move). If player 1’s

move is valid, his/her move would be marked as a “x” on the 3 x 3 board (The mark “x”

on the 3 x 3 board should be displayed on both player 1’s and player 2’s board). The

message title in the player 1’s board would be changed to “Valid move, wait for your

opponent.” while the message title in the player 2’s board would be changed to “Your

opponent has moved, now is your turn.”. Besides, player 1 is not allowed to make the

next move until his/her opponent moves (i.e., if player 1 makes the next move before

his/her opponent moves, it would be considered as an invalid move and nothing would

be displayed on the board). The turn would be switched to the opponent (this time player

2) and if player 2’s move is valid, it would be mark as a “o” on the 3 x 3 board on both

players. The message displayed in the message title of the player 2’s board would be

changed to “Valid move, wait for your opponent.” while the message title of the player

1’s board would be changed to “Your opponent has moved, now is your turn.” Similarly,

the turn would be switched to player 1 again and player 2 cannot make his/her next

move until player 1 makes the move (Fig. 3 & 4).

Fig. 3

Fig. 4

Criteria for a valid move:

- The move is not occupied by any mark.

- The move is made in the player’s turn.

- The move is made within the 3 x 3 board.

 

- Player 1 wins.

- Player 2 wins.

The game would continue and switch among the opposite player until it reaches either

one of the following conditions:

- Draw.

The winning condition is that when there is any row, column or diagonal that is filled

with the same mark (e.g., player 1 would win if there is any row, column or diagonal

that is filled with “x”, player 2 would win if there is any row, column or diagonal that

is filled with “o”). The game will draw if no players satisfy the winning condition after

all the board location is filled with mark. Once it reaches either one of the above

conditions, Message Dialog would be displayed on both players (the content of the

Message Dialog would be different, based on the condition reached, but all would

ask whether to restart the game.), both players cannot make further move, and

can select “Yes” to restart the game, or select “No” to exit the game. The

following screen captures show the Message Dialog displayed on the two players

when either one of the player wins (Fig. 5 & 6) or the game is draw (Fig. 7).

Fig. 5

Fig. 6

Fig. 7

In addition to the above, you also need to handle the case when one of the players left

during the game process. In this case, the game would terminate immediately (i.e., the

remaining player cannot make further move), a Message Dialog “Game Ends. One of

the players left.” would be displayed on the remaining player, as shown below in Fig.

8.

Fig. 8

Besides, as you can see in the screen captures, there is a JMenuBar which consists of 2

JMenu, named Control and Help (located above the message title). In the JMenu of

Control, it consists of a JMenuItem, named Exit while in the JMenu of Help, it consists

of a JMenuItem, named Instruction (Fig. 9 & 10). When the player clicks “Exit”, he/she

would exit from the game and the game would be terminated immediately. When the

player clicks “Instruction”, a Dialog Frame consists of some game information would

be displayed (Fig. 11).

 

Fig. 9 Fig. 10

Fig. 11

Important notes for the assignment:

1. In this assignment, you can assume both the server program and the client

programs run on local host (i.e., with IP address 127.0.0.1).

2. You can have your own design, but you must include the GUI components as

shown in the above screen captures and all the functionalities described in this

document should be implemented. To ensure your program has implemented all

necessary functions, please refer to the marking scheme below as for your

references.

3. This assignment will be marked by features (Your code would not be

investigated). You are required to write JavaDoc for all non-private classes and

non-private class member functions. Programs without JavaDoc will lead to

mark deduction. However, you don’t need to generate JavaDoc htmls. Just write

comment blocks in your source program.

4. You need to record a demo video of the program. The video should start before

 you run the program and include all the features your program.

5. After completing the assignment, please submit all files (including demo videos

 and java files) in a single compressed file (in .zip) to Moodle. Late submission

 is NOT allowed. Do NOT submit .class files.

6. You will get 0 mark if:

 You submit .class files instead of .java source files, or

 You submit java source files that are downloaded from the Internet, or

 You submit java source files from your classmates, or

 You submit java source files from friends taken this course last year.

Marking Scheme:

請(qǐng)加QQ:99515681 或郵箱:99515681@qq.com   WX:codehelp

掃一掃在手機(jī)打開(kāi)當(dāng)前頁(yè)
  • 上一篇:CSCI1540代做、代寫(xiě)C++設(shè)計(jì)編程
  • 下一篇:代寫(xiě)IERG 4130、代做c/c++設(shè)計(jì)編程
  • 無(wú)相關(guān)信息
    合肥生活資訊

    合肥圖文信息
    流體CFD仿真分析_代做咨詢(xún)服務(wù)_Fluent 仿真技術(shù)服務(wù)
    流體CFD仿真分析_代做咨詢(xún)服務(wù)_Fluent 仿真
    結(jié)構(gòu)仿真分析服務(wù)_CAE代做咨詢(xún)外包_剛強(qiáng)度疲勞振動(dòng)
    結(jié)構(gòu)仿真分析服務(wù)_CAE代做咨詢(xún)外包_剛強(qiáng)度疲
    流體cfd仿真分析服務(wù) 7類(lèi)仿真分析代做服務(wù)40個(gè)行業(yè)
    流體cfd仿真分析服務(wù) 7類(lèi)仿真分析代做服務(wù)4
    超全面的拼多多電商運(yùn)營(yíng)技巧,多多開(kāi)團(tuán)助手,多多出評(píng)軟件徽y1698861
    超全面的拼多多電商運(yùn)營(yíng)技巧,多多開(kāi)團(tuán)助手
    CAE有限元仿真分析團(tuán)隊(duì),2026仿真代做咨詢(xún)服務(wù)平臺(tái)
    CAE有限元仿真分析團(tuán)隊(duì),2026仿真代做咨詢(xún)服
    釘釘簽到打卡位置修改神器,2026怎么修改定位在范圍內(nèi)
    釘釘簽到打卡位置修改神器,2026怎么修改定
    2025年10月份更新拼多多改銷(xiāo)助手小象助手多多出評(píng)軟件
    2025年10月份更新拼多多改銷(xiāo)助手小象助手多
    有限元分析 CAE仿真分析服務(wù)-企業(yè)/產(chǎn)品研發(fā)/客戶(hù)要求/設(shè)計(jì)優(yōu)化
    有限元分析 CAE仿真分析服務(wù)-企業(yè)/產(chǎn)品研發(fā)
  • 短信驗(yàn)證碼 寵物飼養(yǎng) 十大衛(wèi)浴品牌排行 目錄網(wǎng) 排行網(wǎng)

    關(guān)于我們 | 打賞支持 | 廣告服務(wù) | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責(zé)聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網(wǎng) 版權(quán)所有
    ICP備06013414號(hào)-3 公安備 42010502001045

    国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看
    中文字幕精品一区日韩| 国产在线观看不卡| 久草精品在线播放| 国产成人在线免费看| 国产高清www| 国产福利不卡| 久久9精品区-无套内射无码| 久久人人爽人人爽人人片av高清 | 国产成人亚洲综合青青| 国产精品18久久久久久麻辣| 99视频精品免费| 91精品黄色| 114国产精品久久免费观看| 久久另类ts人妖一区二区| 国产黑人绿帽在线第一区| 久久久久久久激情| 国产精品旅馆在线| 久久的精品视频| 在线日韩av永久免费观看| 亚洲一区三区视频在线观看| 亚洲第一页在线视频| 日韩中文字幕在线不卡| 日韩欧美一区二区三区四区五区| 欧美一区二视频在线免费观看| 男人天堂a在线| 国产中文一区二区| 99国内精品久久久久久久软件| 久久久福利视频| 国产精品视频不卡| 欧美日韩成人网| 午夜伦理精品一区| 欧美黄色免费影院| av在线不卡一区| 久久精品这里热有精品| 国产99久久久欧美黑人| 色哺乳xxxxhd奶水米仓惠香| 欧美精品亚洲精品| 国产免费毛卡片| 国产不卡一区二区在线观看| 国产精品久久..4399| 一区二区三区四区在线视频| 色噜噜色狠狠狠狠狠综合色一| 欧美亚洲国产免费| 国产伦理一区二区三区| 色偷偷噜噜噜亚洲男人| 中文字幕一区二区三区精彩视频| 日本一区网站| 国产在线观看欧美| 久久国产精品一区二区三区| 国产精品吊钟奶在线| 日韩中文字幕亚洲精品欧美| 海角国产乱辈乱精品视频| 91久久精品www人人做人人爽| 久久久精品2019中文字幕神马| 亚洲字幕一区二区| 激情一区二区三区| 久久亚洲一区二区| 伊人久久大香线蕉精品| 精品少妇一区二区三区在线| 久久久久久网站| 亚洲va欧美va在线观看| 黑人中文字幕一区二区三区| 久久亚洲免费| 精品丰满人妻无套内射| 日韩免费av一区二区三区| 91免费在线观看网站| 国产精品高潮呻吟久久av无限| 日韩一级免费在线观看| 成人国产精品色哟哟| 久久av红桃一区二区小说| 欧美亚洲另类制服自拍| 91精品久久久久久| 中文字幕日韩精品久久| 国严精品久久久久久亚洲影视 | 今天免费高清在线观看国语| 久久精品国产理论片免费| 亚洲免费不卡| 国产精品一区二区三区在线| 久久艳片www.17c.com| 欧美一区在线直播| 色黄久久久久久| 日韩精品在线视频免费观看| 97精品国产91久久久久久| 九九久久精品一区| 国产一区二区视频在线观看| 国产精品久久久久77777| 欧美视频在线播放一区| 久久久精品网站| 日韩免费毛片| 久久久久久中文| 欧美专区一二三| 精品国产一区二区三区久久久狼 | 午夜精品短视频| 成人毛片100部免费看| 精品久久久久av| 国产综合av一区二区三区| 国产精品久久久久久亚洲影视| 欧美第一黄网| 国产精品国产精品国产专区不卡 | 欧美日本中文字幕| 国产日韩在线看片| 精品国产乱码久久久久久蜜柚 | 热草久综合在线| 久久久噜噜噜久久| 日韩在线视频二区| 欧美中日韩免费视频| www.亚洲一区| 欧美日韩在线不卡视频| 国产精品成人aaaaa网站| 国产伦精品一区二区三区高清版| 久久91亚洲精品中文字幕| 国产午夜精品在线| 亚洲一区二区三区视频播放 | 黄色录像特级片| 国产精品成人播放| 国产精品一区二区三| 一区二区高清视频| 777国产偷窥盗摄精品视频| 日本欧美国产在线| 国产精品视频播放| 成人精品在线视频| 日韩亚洲在线视频| 国产精品第二页| 97精品国产97久久久久久春色| 日韩国产小视频| 国产精品成人免费视频| youjizz.com亚洲| 秋霞在线一区二区| 欧美精品在线免费播放| 91久久久久久| 激情网站五月天| 在线一区高清| 日韩在线免费高清视频| 国产日韩欧美在线看| 日产日韩在线亚洲欧美| 精品久久免费观看| 久久久久久久久网站| 国产免费xxx| 欧美日韩系列| 亚洲精品偷拍视频| 国产精品美女www| 久久九九视频| 高清一区二区三区视频| 欧美性在线观看| 亚洲精品国产精品国自产观看| 久久手机精品视频| 久久久久九九九| 国产日韩欧美另类| 欧美最猛性xxxx| 国产99久久久欧美黑人| 日韩视频在线免费观看| 久久久天堂国产精品| 国产美女久久精品| 红桃一区二区三区| 日本欧美视频在线观看| 欧美激情亚洲另类| 国产精品日韩电影| 色偷偷偷亚洲综合网另类 | 国产精品日本精品| 91av在线国产| 国产日韩欧美日韩| 黄色录像特级片| 日韩人妻无码精品久久久不卡| 亚洲中文字幕无码一区二区三区 | 国产裸体写真av一区二区| 欧美xxxx黑人又粗又长密月 | 成人av免费在线看| 国产一区二区香蕉| 欧美最猛性xxxxx亚洲精品| 无码人妻精品一区二区蜜桃网站| 精品国产乱码久久久久久久软件 | 国产精品久久av| 国产精品爽黄69| 精品国产美女在线| 日韩一区二区久久久| 国产成人avxxxxx在线看| 91精品啪在线观看麻豆免费| 高清一区二区三区四区五区| 国产中文字幕乱人伦在线观看| 欧美在线视频一二三| 人妻久久久一区二区三区| 日本乱人伦a精品| 日韩av在线综合| 日韩欧美一区二区三区久久婷婷| 视频一区亚洲| 日本一区二区三区免费看| 欧美一区二区三区……| 色欲av无码一区二区人妻| 亚洲欧美99| 午夜伦理精品一区| 日韩中文字幕一区| 日韩精品欧美一区二区三区| 日本久久久a级免费| 日韩资源av在线| 日韩国产精品一区二区| 欧美一性一乱一交一视频| 欧美高清视频一区| 国产亚洲欧美在线视频| 国产精品一区二区a| 91精品国产高清久久久久久|