鄧昕洲
摘 要:隨著手機(jī)行業(yè)的發(fā)展,手機(jī)游戲成為了人們?nèi)粘I钪泻啙嵎奖愕膴蕵贩绞健0沧肯到y(tǒng)在手機(jī)平臺中占有超過50%的市場份額,其應(yīng)用游戲發(fā)展迅猛。本論文設(shè)計并實現(xiàn)了一款基于安卓平臺的剪刀石頭布手機(jī)游戲。
通過良好的人機(jī)交互,用戶能夠更好地參與游戲。論文介紹了安卓平臺的背景和發(fā)展情況,然后詳細(xì)講解了游戲的開發(fā)過程,包括需求分析、游戲設(shè)計、實現(xiàn)和調(diào)試。經(jīng)過嚴(yán)格測試,該游戲在虛擬機(jī)上運(yùn)行正常。
關(guān)鍵詞:手機(jī)游戲;安卓平臺;剪刀石頭布;設(shè)計與實現(xiàn)
一、模塊功能設(shè)計
(一)功能介紹:
圖片模塊功能:
該功能模塊專注于設(shè)計游戲主頁面的圖片元素,包括主頁面的首部圖片設(shè)計、剪刀石頭布三種選擇按鈕的設(shè)計、開始按鈕的設(shè)計以及對戰(zhàn)"Vs"的設(shè)計。該模塊將主界面和游戲界面有機(jī)地融合在一起,使得界面簡潔而美觀。
對戰(zhàn)模塊功能:
對戰(zhàn)模塊通過監(jiān)聽按鈕的點擊事件實現(xiàn)功能。當(dāng)玩家點擊剪刀、石頭或布中的任一按鈕時,通過觸發(fā)點擊事件,實現(xiàn)玩家的選擇。而當(dāng)玩家點擊開始按鈕時,通過觸發(fā)點擊事件,系統(tǒng)會自動隨機(jī)選擇剪刀、石頭或布中的一種。這樣實現(xiàn)了對戰(zhàn)模塊的功能,玩家可以與系統(tǒng)進(jìn)行游戲?qū)?zhàn)。
(二)系統(tǒng)功能實現(xiàn):
該代碼中并沒有涉及復(fù)雜的算法思想,主要是基于條件判斷和隨機(jī)數(shù)生成的簡單邏輯。
在點擊剪刀、石頭、布按鈕時,根據(jù)按鈕的點擊事件,通過設(shè)置myImageView的圖片資源和myIndex的值,記錄玩家選擇的手勢。
在點擊開始按鈕時,通過生成隨機(jī)數(shù)pcIndex(0、1或2),代表系統(tǒng)選擇的手勢。然后根據(jù)玩家選擇和系統(tǒng)選擇的結(jié)果,通過一系列的條件判斷語句來確定游戲的結(jié)果,并相應(yīng)地設(shè)置resultTextView的文本內(nèi)容。
該代碼底層的邏輯可以總結(jié)如下:
在onCreate()方法中,首先進(jìn)行界面的初始化,通過findViewById()方法獲取對應(yīng)的ImageView、Button和TextView等視圖組件的引用。為剪刀、石頭、布按鈕設(shè)置點擊事件監(jiān)聽器。當(dāng)玩家點擊其中一個按鈕時,對應(yīng)的點擊事件會觸發(fā),根據(jù)點擊的按鈕不同,設(shè)置myImageView的圖片資源,并將myIndex的值設(shè)定為0、1或2,分別表示剪刀、石頭或布。為開始按鈕startButton設(shè)置點擊事件監(jiān)聽器。當(dāng)玩家點擊開始按鈕時,點擊事件會觸發(fā)相應(yīng)的邏輯。
在點擊事件中,首先通過隨機(jī)數(shù)生成器random生成pcIndex,該值為0、1或2,代表系統(tǒng)選擇的手勢。根據(jù)玩家選擇(myIndex)和系統(tǒng)選擇(pcIndex)的結(jié)果,使用一系列的條件判斷語句來確定游戲的結(jié)果。根據(jù)不同的情況,設(shè)置resultTextView的文本內(nèi)容,顯示相應(yīng)的游戲結(jié)果。
總體而言,該代碼的底層邏輯包括界面初始化、按鈕點擊事件的監(jiān)聽、隨機(jī)數(shù)生成、條件判斷和文本內(nèi)容的設(shè)置等步驟。它通過捕捉用戶的按鈕點擊行為和系統(tǒng)的隨機(jī)選擇,結(jié)合條件判斷,實現(xiàn)了剪刀石頭布游戲的邏輯,并在界面上展示游戲結(jié)果。
二、用戶界面
(一)系統(tǒng)流程圖
系統(tǒng)流程圖為此游戲設(shè)計的過程,如圖2-1所示。
(二)程序效果圖
(1)用戶隨機(jī)選擇剪刀石頭布中任意一個,點擊開始游戲,系統(tǒng)能隨機(jī)給出減刀石頭布任意一個,人勝機(jī)?。蝗鐖D2-2所示。
(2)用戶隨機(jī)選擇剪刀石頭布中任意一個,點擊開始游戲,系統(tǒng)能隨機(jī)給出剪刀石頭布任意一個,人輸機(jī)勝;如圖2-3所示。