俄羅斯方塊游戲設(shè)計(jì)_第1頁
俄羅斯方塊游戲設(shè)計(jì)_第2頁
俄羅斯方塊游戲設(shè)計(jì)_第3頁
俄羅斯方塊游戲設(shè)計(jì)_第4頁
俄羅斯方塊游戲設(shè)計(jì)_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

俄羅斯方塊游戲設(shè)計(jì)俄羅斯方塊游戲設(shè)計(jì)JAVA語言Eclipse平臺(tái)開發(fā)以下為開發(fā)過程需要使用的packages及其中classesandmethodsJAVA語言和C語言、C++語言很湊近,它是一種面向?qū)ο蟆ⅹ?dú)立于開發(fā)平臺(tái)的高級(jí)編程語言。它獨(dú)到的語法規(guī)則和類庫是組成JAVA技術(shù)的兩個(gè)重要部分。假期總結(jié):爽快講,這個(gè)暑期我沒花多少時(shí)間在學(xué)習(xí)計(jì)算機(jī)編程技術(shù)上面。在剛放暑假的時(shí)候,我去圖書館借了七八本編程書,有VisualC++、C#、以及JAVA方面的書,信誓旦旦這個(gè)暑期要好好研究技術(shù)。但是,執(zhí)行力是我很缺乏的一個(gè)弊端吧。在家迷戀一時(shí)之爽,基本上沒去翻書學(xué)習(xí),長此過去,就越害怕打開書本。后期提前回學(xué)校,學(xué)了一點(diǎn)點(diǎn)JAVA?;叵胝麄€(gè)大一,包括這個(gè)暑期,我很愧疚。自己在過去的一年里浪費(fèi)了太多的時(shí)間,對(duì)成績抱著一種比較無所謂的心態(tài),對(duì)于學(xué)習(xí)也是,可想而知,與別人的差距也就越來越大,這也是我現(xiàn)在不愿意看到的。在此后的日子,我不敢保證自己能如何刻苦勤奮地學(xué)習(xí),但是,最少我會(huì)全力做到問心無愧,我會(huì)清楚自己要什么,并且行動(dòng)起來。一、控制器控制Ground,Snake,Food負(fù)責(zé)游戲的邏輯辦理按鍵事件MethodSummaryvoidaddGameListener(GameListenerl)增加監(jiān)聽器,可增加多個(gè)voidbeforeDeleteFullLine

(Ground

ground,intlineNum)beforeDeleteFullLine

辦理Ground觸發(fā)的事件將會(huì)改變滿行的顏色并暫停一段時(shí)間voidcontinueGame( )連續(xù)游戲voidfullLineDeleted(GroundintdeletedLineCount)

ground,fullLineDeleted

辦理Ground觸發(fā)的事件,這個(gè)方法什么也沒做

,

可是打印了一句話getGameInfoLabel( )獲得顯示提示信息的組件GamePanelgetGamePanel( )GroundgetGround( )getNewInfo( )獲得游戲的最新提示信息ShapeFactorygetShapeFactory( )voidgroundIsFull(Groundground)辦理Ground的groundIsFull( )事件,將觸發(fā)游戲結(jié)束事件booleanisPausingGame( )游戲是否是在暫停狀態(tài)booleanisPlaying( )可否正在游戲中booleanisShapeMoveDownable(Shapes)咨詢一以下圖形可否能夠下落,如果不能夠下落了,就會(huì)讓圖形變成阻擋物這個(gè)方法是同步的voide)辦理鍵盤按鍵LEFT:向左搬動(dòng)RIGHT:向右搬動(dòng)DOWN:向下搬動(dòng)UP:變形PAGEUP:加速速度PAGEDOWN:減慢速度重新開始游戲ENTER:暫停/連續(xù)voidnewGame( )開始一個(gè)新游戲voidpauseGame( )暫停游戲voidremoveGameListener(GameListenerl)移除監(jiān)聽器voidbel)

gameInfoLa設(shè)置voidsetGamePanel(GamePanelgamePanel)voidsetGround(Groundground)voidsetShapeFactory(ShapeFactoryshapeFactory)voidshapeMovedDown(Shapes)辦理圖形觸發(fā)的shapeMovedDown(圖形下落)事件將會(huì)重新顯示voidstopGame( )停止當(dāng)前游戲一、ClassSummary能夠叫做地形,或地面保護(hù)阻擋物的信息Ground和能夠使用供應(yīng)的addObstacle(int,int)addStubbornObstacle(int,int)方法增加阻擋物。保護(hù)一個(gè)圖形,一個(gè)圖形能夠有一種或多種狀態(tài)能夠經(jīng)過setColor( )方法改變圖形的顏色Shape能夠經(jīng)過覆蓋drawUnit(Graphics,int,int,int,int)方法改變圖形的顯示用內(nèi)部類ShapeDriver驅(qū)動(dòng)圖形準(zhǔn)時(shí)向下搬動(dòng)使用時(shí)必然要給實(shí)例注冊(cè)監(jiān)聽器,否則不能夠正常運(yùn)行圖形工廠能夠產(chǎn)生多種形狀,多種顏色的圖形ShapeFactorysetDefaultShapeColor( )方法能夠設(shè)置默認(rèn)產(chǎn)生的圖形的顏色也能夠經(jīng)過setColorfulShape( )方法設(shè)置可否產(chǎn)生彩色圖形能夠表示地面里面的阻擋物

,不能除掉的阻擋物

,

空白外面不能夠夠直接new一個(gè)實(shí)例,

而應(yīng)該用

clone( )

方法產(chǎn)生實(shí)例(防范產(chǎn)生不能夠識(shí)其他種類)UnitType比方產(chǎn)生一個(gè)阻擋物:UnitTypeaObstacle=UnitType.OBSTACLE.clone( );1、ClassGround:publicclassGround能夠叫做地形

,

或地面保護(hù)阻擋物的信息能夠使用供應(yīng)的

addObstacle(int,int)

和addStubbornObstacle(int,int)

方法增加阻擋物。能夠經(jīng)過setObstacleColor( ),setStubbornObstacleColor( )或setGriddingColor( )方法更正阻擋物或網(wǎng)格的顏色經(jīng)過setDrawGridding( )用setColorfulSupport( )

方法設(shè)置可否畫空白(網(wǎng)格)方法設(shè)置可否支持彩色顯示覆蓋drawObstacle(Graphics,int,int,int,int)方法能夠改變阻擋物的顯示方式覆蓋drawStubbornObstacle(Graphics,int,int,int,int)方法能夠改變不能除掉的阻擋物的顯示方式MethodSummaryvoidaccept(Shapeshape)把指定的圖形變成石頭爾后將會(huì)調(diào)用deleteFullLine( )方法掃描并刪除滿行voidaddGroundListener(GroundListenerl)增加監(jiān)聽器,可增加多個(gè)voidaddObstacle(intx,inty)在指定的地址增加一個(gè)阻擋物voidaddStubbornObstacle(intx,inty)在指定的地址增加一塊不能除掉的障礙物voidchangeFullLineColor(intlineNum)改變指定行的顏色,(能夠做為消行前的收效)voidclear( )清空容器voiddeleteFullLine( )掃描并刪除滿行將調(diào)用deleteLine(int)方法刪除滿行voiddeleteLine(intlineNum)整體下移一行)刪除指定的行(這一行上面所有的石頭voidg,intx,inty,intwidth,intheight)畫一個(gè)空白的方法(網(wǎng)格),能夠覆蓋這個(gè)方法改變空白(網(wǎng)格)的顯示voidg)顯示,將調(diào)用drawGridding(Graphics,int,int,int,int),drawObstacle(Graphics,int,int,int,int)和drawStubbornObstacle(Graphics,int,int,int,int)方法voidg,intx,inty,intwidth,intheight)畫一個(gè)阻擋物的方法,能夠覆蓋這個(gè)方法改變阻擋物的顯示voidg,intx,inty,intwidth,intheight)畫一個(gè)不能除掉的阻擋物的方法,能夠覆蓋這個(gè)方法改變不能除掉的阻擋物的顯示voidgenerateSomeStochasticObstacle(intamount,intlineNum)在指定的范圍內(nèi)隨機(jī)生成一些阻擋物產(chǎn)生的地域行是1-lineNumvoidgenernateAStubbornStochasticObstacle( )隨機(jī)生成一個(gè)不能除掉的阻擋物,這個(gè)隨機(jī)的坐標(biāo)的y坐標(biāo)不小于5getFullLineColor( )or獲得滿行的顏色getGriddingColor( )or獲得網(wǎng)格的顏色getObstacleColor( )or獲得阻擋物的顏色getStubbornObstacleColor( )or獲得不能除掉的阻擋物的顏色voidinit( )初始化,將會(huì)調(diào)用clear( )方法booleanisBlank(intx,inty)指定地址是否是空白booleanisColorfulSupport( )可否支持彩色顯示booleanisDrawGridding( )可否畫網(wǎng)格booleanisFull( )容器可否放滿了(可否還能夠接受圖形)booleanisMoveable(Shapeshape,intaction)依照?qǐng)D形的動(dòng)作,判斷可否會(huì)碰到阻擋物或不能除掉的阻擋物,或可否會(huì)超出界線,booleanisObstacle(intx,inty)指定地址是否是阻擋物booleanisStubbornObstacle(intx,inty)指定地址是否是不能除的阻擋物voidremoveGroundListener(GroundListenerl)移除監(jiān)聽器voidsetColorfulSupport(booleancolorfulSupport)設(shè)置可否支持彩色顯示voidsetDrawGridding(booleandrawGridding)設(shè)置可否畫網(wǎng)格voidsetFullLineColorfullLineColor)設(shè)置滿行的顏色voidsetGriddingColorgriddingColor)設(shè)置網(wǎng)格的顏色voidsetObstacleColorobstacleColor)設(shè)置阻擋物的顏色voidstubbornObstacleColor)設(shè)置不能除掉的阻擋物的顏色2、ClassShape:publicclassShape保護(hù)一個(gè)圖形,一個(gè)圖形能夠有一種或多種狀態(tài)能夠經(jīng)過setColor( )方法改變圖形的顏色能夠經(jīng)過覆蓋drawUnit(Graphics,int,int,int,int)方法改變圖形的顯示用內(nèi)部類ShapeDriver驅(qū)動(dòng)圖形準(zhǔn)時(shí)向下搬動(dòng)使用時(shí)必然要給實(shí)例注冊(cè)監(jiān)聽器,否則不能夠正常運(yùn)行MethodSummaryvoidaddShapeListener(ShapeListenerl)增加監(jiān)聽器將會(huì)啟動(dòng)驅(qū)動(dòng)圖形下落的線程voidchangePause( )更正暫停狀態(tài)若是暫停狀態(tài),則連續(xù)下落若正在下落,則暫停voiddie( )結(jié)束圖形準(zhǔn)時(shí)下落的線程voidg)int,int,int,int)顯示,將調(diào)用drawUnit(Graphics,方法voidg,intx,inty,intwidth,intheight)畫詳盡的每一個(gè)方塊的方法,能夠覆蓋這個(gè)方法改變圖形的顯示getColor( )or獲得圖形的顏色intgetHeight( )intgetLeft( )獲得圖形的地址intgetSpeed( )獲得圖形的下落速度intgetStatus( )獲得圖形的當(dāng)前是第幾種狀態(tài)intgetSwiftSpeed( )intgetTop( )獲得圖形的地址voidinit( )初始化地址,速度等booleanisLife( )booleanisMember(intx,inty,booleanisRotate)指定的地址是否是圖形的一部分booleanisPause( )獲得圖形的暫停狀態(tài)booleanisSwift( )voidmoveDown( )向下搬動(dòng)voidmoveLeft( )向左搬動(dòng)voidmoveRight( )向右搬動(dòng)voidmoveUp( )voidrotate( )旋轉(zhuǎn)(或叫做變形,顯示下一個(gè)狀態(tài))voidsetBody(int[][]body)設(shè)置圖形的種類(多種狀態(tài))voidcolor)設(shè)置圖形的顏色voidsetLeft(intleft)設(shè)置圖形的地址voidsetPause(booleanpause)設(shè)置圖形的暫停狀態(tài)voidsetSpeed(intspeed)設(shè)置圖形的下落速度voidsetStatus(intstatus)設(shè)置圖形的當(dāng)前是第幾種狀態(tài)voidsetSwift(booleanswift)一落終究voidsetSwiftSpeed(intswiftSpeed)voidsetTop(inttop)設(shè)置圖形的地址voidspeedDown( )減速voidspeedUp( )加速3、ClassShapeFactory:publicclassShapeFactory圖形工廠能夠產(chǎn)生多種形狀,多種顏色的圖形setDefaultShapeColor( )方法能夠設(shè)置默認(rèn)產(chǎn)生的圖形的顏色也能夠經(jīng)過setColorfulShape( )方法設(shè)置可否產(chǎn)生彩色圖形MethodSummary

getDefaultShapeColor

( )or

獲得默認(rèn)產(chǎn)生的圖形的顏色ShapegetShape(ShapeListener

shapeListener)生產(chǎn)出隨機(jī)種類的圖形,并且把傳過來的監(jiān)聽器注冊(cè)給它booleanisColorfulShape

( )可否產(chǎn)生彩色圖形void

setColorfulShape

(boolean

colorfulShape)設(shè)置可否產(chǎn)生彩色圖形void

setDefaultShapeColor

defaultShapeColor)設(shè)置默認(rèn)產(chǎn)生的圖形的顏色4、ClassUnitType:publicclassUnitType能夠表示地面里面的阻擋物,不能除掉的阻擋物,空白外面不能夠夠直接new一個(gè)實(shí)例,而應(yīng)該用clone( )方法產(chǎn)生實(shí)例(防范產(chǎn)生不能夠識(shí)其他種類)比方產(chǎn)生一個(gè)阻擋物:UnitTypeaObstacle=UnitType.OBSTACLE.clone( );MethodSummaryUnitTypeclone( )返回一個(gè)新的,和自己有相同的顏色并且種類相同的UnitTypevoid

cloneProperties

(UnitType

ut)boolean

把自己克隆

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論