freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于java的坦克網戰(zhàn)游戲的設計和實現-wenkub

2022-09-11 18:12:30 本頁面
 

【正文】 都把 Java 作為主要的教學內容之一。實現了局域網內聯機游戲,玩家通過鍵盤進行相應控制。 Java 語言便是從該語言的基礎上升級,并擁有了一定 的優(yōu)越性?,F如今,越多的程序設計人員選擇 Java 語言進行相關程序設計,不光是它具有跨平臺,多線程和相對安全性,它的開源也是吸引眾多程序員的一個重要因素。 Java 語言是一個四川師范大學成都學院本科畢業(yè)設計 3 徹底的純面向對象的程序設計語言, 它具有面向對象的封裝、繼承和多態(tài)三大特點 [1] 。 Java 程序開發(fā)過程 一個 Java 程序的開發(fā)過程主要由三個過程組成:編寫源文件,編譯 Java 源文件,運行 Java 程序,如圖 如圖 所示 : 圖 Java程序開發(fā)過程圖 編寫 Java 源文件 源文件是由若干 個類組成,編程人員使用 Java 語言編寫好源代碼,形成源文件。源文件在命名時有一定規(guī)則,如果源文件中有多個類,那么只能一個類是 public 類,如果一個類是 public 類,那么源文件的名字必須與這個類的名字完全相同 [1]。 運行 Java 程序 運行 Java 程序:使用 Java 虛擬機中的 Java 解釋器來解釋執(zhí)行編譯生成的字節(jié)碼,完成 Java 程序要實現的功能, Java 應用程序總是從主類 main 方法開始執(zhí)行 [1]。 所以現在, 許多 程序員將 Eclipse 作為 框架開發(fā) 屬于 自己的 IDE。 Eclipse是一個開發(fā)源碼項目,它其實是 Visual Age for Java 的替代品,其界面 與以前 的 Visual Age for Java 差不多,但 因為 其開 源 , 每個 人都可以 免費獲取 , 以便程序開發(fā)人員在此源碼的基礎上進行創(chuàng)意修改開發(fā)出自己需要的產品 , 所以越來越多的開發(fā)公司和團隊選擇它 。研究課題設計要求得知,需要 實現局域網聯網功能。游戲運行過程不是單一過程,是多態(tài)同時進行,然而 Java 具有多線程的特性,這樣恰恰滿足了開發(fā)的需要,所以選擇 Java 語言進行開發(fā)是不二的選擇。以此同時,因為敵方坦克是自主隨機移動,需要考慮到坦克與坦克之間不能相互重疊和穿越,也不能 同時做同意動作。 綜合以上分析可以得出,利用 Java 語言的各種優(yōu)越特性能夠實現本次設計的總體要求,也能實現相應功能。游戲過程中, 玩家除了保證自己免受傷害同時也要保障基地安全, 玩家消滅敵方閃爍坦克可以 獲 得額外 輔助道具 ,兩玩家在游戲過程中可以聊天,也可以請求暫停。各個類和實現的功能表如表 : 表 各個類和實現的功能表 類 實現功能 主類 實現游戲窗口的顯示 提供公共接口 通信類 實現玩家間建立游戲 使玩家間可以進行信息交流 坦克類 添加坦克圖片 控制坦克移動 讓坦克可以發(fā)出 子彈 讓玩家坦克死亡后重置 使坦克不能穿墻和其他坦克 使坦克可以穿草叢不能穿河 子彈類 畫出子彈 控制子彈 讓普通子彈可以擊毀普通磚墻不能擊毀鋼墻 讓子彈可以穿越草叢和河流 墻類 添加磚墻圖片 添加鋼墻圖片 添加草叢圖片 添加河流圖片 顯示圖片 輔助類 添加輔助圖片 敵方閃爍坦克陣亡后隨機顯示輔助圖片 玩家獲得輔助圖片后得到相應輔助功能 服務器類 建立主機 控制游戲進程 客服端類 輸入主機 IP連接主機 四川師范大學成都學院本科畢業(yè)設計 8 控制游戲進程 關卡類 添加墻類圖片并進 行排版編輯 顯示添加圖片 時鐘類 刷新線程 對玩家事件進行監(jiān)聽 控制游戲運行與休眠 4 程序模塊 本游戲程序由多個模塊同時運行而實現,也體現了 Java 語言的優(yōu)越性。為了克服單繼承的缺點, Java 使用了接口,一個類可以實現多個接口。 游戲過程中,游戲版面顯示當前關卡數,敵人剩余數,玩家生命數以及玩家獲得的分數。玩家坦克可以對敵方閃爍坦克進行攻擊,并得到額外輔助道具,獲得道具后玩家坦克具備相應功能。 子彈擊毀時出現爆炸效果,玩家子彈和敵方坦克發(fā)出的子彈可以撞毀, 敵方坦克向四個方向隨機移動并發(fā)射子彈。 游戲地圖中,玩家基地周圍是由磚墻包圍, 在墻模塊中,磚墻是最基本的組成,玩家或敵方坦克都能將其摧毀,鋼墻只有玩家獲得特殊輔助后才能摧毀,玩家和敵方發(fā)出的子彈都能穿越草叢和河流。每個關卡設計 20 輛敵方坦克,當敵方坦克均被消滅,游戲自動進入下一關卡。 該游戲界面包括文本輸入框和按鈕,因為服務器端和客戶端窗口相似,以下提供客服端游戲窗口設計代碼: public class ServerView extends JFrame{ public drawingPanel mainPanel。 public ServerControler controler。 } catch (Exception e) { } getContentPane().setLayout(null)。 (new Color(128, 64, 128))。 setResizable( false )。 (0,519, 560,22)。 (false)。 (true)。 (false)。 (false)。 (false)。 (false)。 setResizable( false )。 } } 游戲運行界面 使用 JPanel 創(chuàng)建一個面板,再向這個面板添加組件 。 public Actor[] drawingList。 public Image P1Image, P2Image。 此后事件源便 將 該 事件對象 發(fā)送給相應 監(jiān)聽器接口類的方法,監(jiān)聽器接口則會接收到相應的事件信息 。有興趣接收事件的任何監(jiān)聽器類都必須實現監(jiān)聽器接口。 = false。 = false。 = false。 = true。套接字通常由三個部分構成:在計算機進程之間利用 TCP/IP 進行通信時,需要通過 IP 地址來定位通信雙方的計算機,通過 TCP/UDP 來明確通信軟件所采用的通信協議,通過端口號來確定通信軟件進 程。 } catch (Exception e) { addMessage(無法建立主機,請確認端口 4321 沒有被別的程序使用 )。 } /* * 客戶端連接主機 */ public void connectServer(){ addMessage(正在連接主機 )。 serverConnected = true。代碼如下: if((0,1).equals(m)){ ( 主機端玩家說: + (1,()))。 = false。 游戲元素 本款游戲在設計時避免了圖形繪制的麻煩,更多的采用了直接引入外部圖片來作為游戲中的元素,如坦克和游戲墻。 游戲開始時,玩家坦克有免疫攻擊時間,玩家坦克朝上,只具備初級攻擊力,通過以下代碼實現: direction = UP。 InvulnerableTime = 150。 xVPos = xPos。 i ++) textures[i] = [54+i]。 xVPos = xPos。 i ++) textures[i] = [72+i]。 else if(status == 3) textureIndex = 62 + direction。 else if(status == 3) textureIndex = 80 + direction。 numberOfBullet = 1。 以上是敵方坦克的共同屬性,不同坦克具備 不同 特性,如運動速度 、抗擊子彈能力、消滅后會產生 輔助道具 等,代碼如下: if(type ==1 ){ firePosibility = 。 i 8。 textures = new Image[8]。 }else if(type == 3){ firePosibility = 。 i 8。 speed = 2。 i++) textures[i] = [18+i]。 游戲中每個關卡設置由游戲墻模塊 編輯而成 ,不同的墻具有不同的性質, 如圖 所示 : 圖 游戲墻模塊組成效果圖 四川師范大學成都學院本科畢業(yè)設計 20 游戲中 子彈 和 爆炸 效果 在本款游戲設計過程中,游戲中子彈和爆炸效果均是采用 Java 語言中 public void draw(Graphics g)畫出。 if(direction == 2 || direction == 3) ( +1, + 1, 9, 3)。 (xPosmiddle, yPosmiddle, 2*middle, 2*middle)。 notifiyOwner()。 } 游戲整體實現效果 本游戲設計的實現由 32 個類組成,一共編寫 4000 余行代
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1