移動平臺游戲軟件開發(fā)課程設(shè)計說明書_第1頁
已閱讀1頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  課程設(shè)計說明書</b></p><p><b>  課程設(shè)計任務(wù)書</b></p><p><b>  課程名稱:綜合實訓(xùn)</b></p><p>  設(shè)計題目:移動平臺游戲軟件開發(fā)</p><p>  已知技術(shù)參數(shù)和設(shè)計要求:</p>

2、<p><b>  實訓(xùn)目的要求</b></p><p>  通過本實訓(xùn),應(yīng)能夠?qū)2me移動開發(fā)平臺有詳盡的了解,并能夠使用該平臺靈活自如的開發(fā)Kjava平臺手機(jī)游戲項目。</p><p>  1)了解手機(jī)游戲發(fā)展與盈利模式及J2me平臺的簡史和功能特性。</p><p>  2)掌握MIDlet套件的框架結(jié)構(gòu)及MIDlet

3、的生命周期。</p><p>  3)掌握低級用戶界面開發(fā)的核心類庫各類的使用。</p><p>  4) 掌握低級按鍵事件的使用。</p><p>  5)掌握各類型游戲的功能特點(diǎn)實現(xiàn)技巧。</p><p>  6) 掌握使用MMAPI來實現(xiàn)多媒體文件的播放。</p><p>  7)掌握實用RMS體系來實現(xiàn)游

4、戲軟件的記錄存儲功能。</p><p>  問題描述(功能要求):</p><p>  本次案例將完成一個基于J2ME平臺的手機(jī)游戲軟件。</p><p>  游戲菜單選項的實現(xiàn),并實現(xiàn)每個選項下一級功能。</p><p>  游戲主流程及邏輯的實現(xiàn)。</p><p><b>  游戲關(guān)卡實現(xiàn)。</b&

5、gt;</p><p><b>  游戲音樂的實現(xiàn)。</b></p><p><b>  游戲按鍵的實現(xiàn)。</b></p><p>  游戲UI界面的實現(xiàn)。</p><p>  (7) 游戲場景的實現(xiàn)。</p><p> ?。?) 游戲精靈的實現(xiàn)。</p>&l

6、t;p> ?。?) 游戲記錄存儲的實現(xiàn)。</p><p> ?。?0) 游戲得分的實現(xiàn)。</p><p><b>  環(huán)境要求:</b></p><p><b>  開發(fā)環(huán)境要求</b></p><p>  Eclipse+ SonyEricsson Sdk+EclipseMe</p&g

7、t;<p><b>  實際運(yùn)行環(huán)境</b></p><p>  支持KJAVA的所有手機(jī)。</p><p><b>  設(shè)計工作量:</b></p><p><b>  80課時</b></p><p><b>  工作計劃:</b><

8、;/p><p>  (1) 2010級軟件工程所有班級</p><p>  26課時: 理論、設(shè)計。(普通教室)</p><p>  50課時: 上機(jī)、調(diào)試。(計算機(jī)系機(jī)房)</p><p>  4課時:答辯。計算機(jī)系機(jī)房。</p><p> ?。ň唧w時間地點(diǎn)老師先申請,機(jī)動安排)</p><p>

9、  指導(dǎo)教師簽名:         日期:        </p><p>  教研室主任簽名:        日期:        </p><p>  系主任簽名:          日期:        </p><p>  長沙學(xué)院課程設(shè)計鑒定表</p><p><b>  目 錄</b></p>

10、;<p><b>  1引言1</b></p><p>  1.1 編寫目的1</p><p>  1.2 項目背景1</p><p><b>  1.3名詞解釋1</b></p><p><b>  1.4參考資料1</b></p>&l

11、t;p><b>  2需求規(guī)約2</b></p><p>  2.1 業(yè)務(wù)描述2</p><p>  2.2 功能需求2</p><p><b>  2.3性能需求2</b></p><p><b>  3 總體設(shè)計3</b></p><p&

12、gt;  3.1 框架設(shè)計3</p><p>  3.2 模塊劃分4</p><p><b>  4.詳細(xì)設(shè)計5</b></p><p>  4.1 模塊設(shè)計要求5</p><p>  4.2 模塊詳細(xì)設(shè)計5</p><p>  4.2.1 游戲模塊設(shè)計5</p><

13、;p>  4.2.2 菜單模塊設(shè)計12</p><p><b>  5 功能測試15</b></p><p>  5.1游戲功能測試15</p><p>  5.2設(shè)置功能測試15</p><p><b>  6 總結(jié)17</b></p><p><b&

14、gt;  1引言</b></p><p><b>  1.1 編寫目的</b></p><p>  在完成了軟件系統(tǒng)的需求分析和用例描述的基礎(chǔ)上,為了明確軟件需求、安排項目規(guī)劃與進(jìn)度、組織軟件開發(fā)與測試,項目小組各組員在考慮了幾種可能的解決方案,并在組內(nèi)進(jìn)行了較為深入地探討和分析之后,提出了這份概要設(shè)計說明書。</p><p>  

15、此文檔對《洪山戰(zhàn)機(jī)》項目的解決方案、功能分配、模塊化分、程序的總體結(jié)構(gòu)、輸入輸出和接口設(shè)計、運(yùn)行設(shè)計及出錯設(shè)計等方面作了全面的概括性的說明,為該軟件的詳細(xì)設(shè)計奠定了基礎(chǔ)。此文檔為本次實訓(xùn)工作的階段性總結(jié),并為指導(dǎo)老師、設(shè)計人員和開發(fā)人員、維護(hù)人員提供參考。</p><p><b>  1.2 項目背景</b></p><p>  1、軟件名稱:洪山戰(zhàn)機(jī)</p&g

16、t;<p>  2、項目任務(wù)提出者:長沙大學(xué)計算機(jī)科學(xué)與技術(shù)系</p><p>  3、開發(fā)者:長沙大學(xué)計算機(jī)科學(xué)與技術(shù)系軟件B班“洪山”項目組</p><p>  4、使用者:系統(tǒng)管理人員、系統(tǒng)測試人員、系統(tǒng)維護(hù)人員</p><p>  5、維護(hù)機(jī)構(gòu):長沙大學(xué)計算機(jī)科學(xué)與技術(shù)系軟件B班“洪山”項目組</p><p>  6、開

17、發(fā)工具:Java</p><p><b>  1.3名詞解釋</b></p><p>  int 整形數(shù)據(jù) </p><p>  char 字符型數(shù)據(jù)</p><p><b>  1.4參考資料</b></p><p>  [1] 劉葵等編,J2ME手機(jī)游戲開發(fā)技術(shù)。&

18、lt;/p><p>  [2] 劉葵等編,手機(jī)游戲JAVA語言基礎(chǔ)。</p><p><b>  2需求規(guī)約</b></p><p><b>  2.1 業(yè)務(wù)描述</b></p><p>  《洪山戰(zhàn)機(jī)游戲》是一款平面2D射擊類游戲,玩家通過操控一個戰(zhàn)機(jī)進(jìn)行游戲,本游戲DEMO版本共設(shè)計3個關(guān)卡,玩家

19、需要通關(guān)前一個關(guān)卡后才可激活下一個關(guān)卡并進(jìn)行游戲,本游戲主要的玩點(diǎn)在于玩家控制戰(zhàn)機(jī)靈活躲避敵人戰(zhàn)機(jī)的攻擊,并對敵方進(jìn)行不停攻擊,直到擊敗最終的BOSS獲得勝利!在游戲過程中玩家需要注意敵方子彈,一旦子彈打擊到自身戰(zhàn)機(jī),戰(zhàn)機(jī)則會陣亡,如果有如果沒有備用生命,游戲?qū)⒔Y(jié)束.玩家在游戲過程中特別需注意,自身戰(zhàn)機(jī)具備可消耗的雷,當(dāng)釋放雷時,屏幕中的子彈將消失,并且屏幕中所有的敵方戰(zhàn)績將全部扣除一定血亮,玩家可通過拾取道具補(bǔ)充雷數(shù)量并且在保證自身存

20、活的前提下,玩家需要通過拾取異化雷來提升自身戰(zhàn)機(jī)的戰(zhàn)斗力。</p><p><b>  2.2 功能需求</b></p><p>  (1)游戲滾屏功能;</p><p>  (2)游戲退出與暫停功能;</p><p>  (3)主角與敵機(jī)攻擊;</p><p>  (4)最大BOSS機(jī)的技能攻擊

21、;</p><p><b>  (5)主角移動</b></p><p><b>  2.3性能需求</b></p><p>  游戲可玩性高;不存在BUG;游戲畫面清晰,流暢,操作通俗易懂;關(guān)卡分明,每一關(guān)的游戲難度都增加,能讓玩家的好奇性于挑戰(zhàn)心態(tài)得到發(fā)揮;玩家可以自行選擇游戲難易程度,使玩家能跟快速的學(xué)會游戲并挑戰(zhàn)更高

22、難度的游戲模式,增加游戲的可玩性于挑戰(zhàn)性。</p><p><b>  3 總體設(shè)計</b></p><p><b>  3.1 框架設(shè)計</b></p><p>  游戲框架如圖3.1所示,用戶通過菜單界面進(jìn)行選擇。 </p><p>  圖 3.1游戲框架 </p><p&g

23、t;<b>  3.2 模塊劃分</b></p><p><b>  游戲開始時的菜單:</b></p><p><b>  游戲開始</b></p><p><b>  最高記錄</b></p><p><b>  游戲設(shè)置</b>

24、</p><p><b>  退出</b></p><p><b>  幫助</b></p><p><b>  游戲設(shè)置的菜單:</b></p><p>  背景音效(打開、關(guān)閉)</p><p><b>  游戲中的菜單:</b>

25、;</p><p><b>  游戲繼續(xù)</b></p><p><b>  是否保存游戲</b></p><p><b>  返回主菜單</b></p><p><b>  游戲通關(guān)菜單</b></p><p><b>

26、  下一關(guān)</b></p><p><b>  返回主菜單</b></p><p><b>  游戲失敗菜單</b></p><p><b>  繼續(xù)游戲</b></p><p><b>  返回主菜單</b></p><p

27、><b>  4.詳細(xì)設(shè)計</b></p><p>  4.1 模塊設(shè)計要求</p><p><b> ?。?)開始游戲</b></p><p>  控制玩家移動、控制玩家射擊、敵機(jī)移動、敵機(jī)發(fā)射子彈、顯示得分、顯示玩家生命值、釋放技能。</p><p><b>  (2)設(shè)置<

28、;/b></p><p>  設(shè)置背景音樂的開、關(guān)。</p><p><b> ?。?)幫助</b></p><p>  包括游戲的介紹、操作規(guī)則的說明。</p><p><b>  (4)排行榜</b></p><p>  4.2 模塊詳細(xì)設(shè)計</p>

29、<p>  4.2.1 游戲模塊設(shè)計</p><p>  包括游戲中玩家射擊敵機(jī),玩家的移動。敵機(jī)的移動以及發(fā)射子彈射擊玩家。另外,還的顯示當(dāng)前玩家的得分情況以及生命值。除此之外,還得通過隨機(jī)釋放技能點(diǎn)。讓玩家適當(dāng)?shù)母淖冏陨淼募寄軐傩?。如,增加生命力、子彈威力等?lt;/p><p>  圖4.1 游戲中畫面</p><p>  玩家部分結(jié)構(gòu)[原始模型]與代碼

30、如下:</p><p><b>  運(yùn)動設(shè)計:</b></p><p>  Plane原型與測試Midlet</p><p>  Plane.class</p><p>  import javax.microedition.lcdui.Graphics;</p><p>  import jav

31、ax.microedition.lcdui.Image;</p><p>  public class Plane extends Sprite{</p><p><b>  /**</b></p><p><b>  * 前進(jìn)</b></p><p><b>  */</b>

32、</p><p>  static int UP=1;</p><p><b>  /**</b></p><p><b>  * 后退</b></p><p><b>  */</b></p><p>  static int DOWN=2;</

33、p><p><b>  /**</b></p><p><b>  * 左邊</b></p><p><b>  */</b></p><p>  static int LEFT=3;</p><p><b>  /**</b><

34、/p><p><b>  * 右邊</b></p><p><b>  */</b></p><p>  static private int RIGHT=4;</p><p>  //private int x,y; //角色的位置</p><p>  //

35、private int mw,mh;//角色的寬高</p><p>  //private Image img; //角色所在的大圖</p><p>  private int frameIndex;//當(dāng)前幀</p><p>  private int frameNum;//總幀數(shù)</p><p><

36、b>  /**</b></p><p>  * 此對象被創(chuàng)建后會得到總幀數(shù)frameNum</p><p>  * @param img 大圖對象</p><p>  * @param mw 角色的寬</p><p>  * @param mh 角色的高</p><p><b>  */&l

37、t;/b></p><p>  Plane(Image img,int mw,int mh){</p><p>  super(img, mw, mh);</p><p>  this.frameNum=img.getWidth()/mw;</p><p>  System.out.println("幀總數(shù)"+fra

38、meNum);</p><p><b>  }</b></p><p>  public int getFrameIndex() {</p><p>  return frameIndex;</p><p><b>  }</b></p><p>  public void

39、setFrameIndex(int frameIndex) {</p><p>  this.frameIndex = frameIndex;</p><p><b>  }</b></p><p>  public int getFrameNum() {</p><p>  return frameNum;</p

40、><p><b>  }</b></p><p>  public void setFrameNum(int frameNum) {</p><p>  this.frameNum = frameNum;</p><p><b>  }</b></p><p><b>

41、  /**</b></p><p>  * 得到用戶按鍵的方向,做出事件響應(yīng)</p><p>  * @param direction 方向</p><p><b>  */</b></p><p>  public void nextFrame(int direction)</p><p

42、><b>  {</b></p><p>  if(direction==UP){</p><p>  frameIndex=frameNum/2;</p><p><b>  }</b></p><p>  if(direction==DOWN){</p><p> 

43、 frameIndex=frameNum/2;</p><p><b>  }</b></p><p>  if(direction==LEFT){</p><p>  if(frameIndex==0) return;</p><p>  frameIndex--;</p><p><b&

44、gt;  }</b></p><p>  if(direction==RIGHT){</p><p>  if(frameIndex==frameNum-1) return;</p><p>  frameIndex++;</p><p><b>  }</b></p><p><

45、;b>  }</b></p><p>  public void setPosition(int x,int y)</p><p><b>  {</b></p><p><b>  this.x=x;</b></p><p><b>  this.y=y;</b&

46、gt;</p><p><b>  }</b></p><p>  public void planeDraw(Graphics g)</p><p><b>  {</b></p><p>  int tempx=frameIndex*this.getW();</p><p&g

47、t;  System.out.println(tempx);</p><p>  Tools.drawClipImage(g, img, x, y, tempx, 0, this.getW(), this.getH(),TestCanvas.w,TestCanvas.h);</p><p><b>  }</b></p><p>  publi

48、c void move(int dx,int dy)</p><p><b>  {</b></p><p><b>  x+=dx;</b></p><p><b>  y+=dy;</b></p><p><b>  }</b></p>

49、<p>  public void updatePlane(){</p><p>  if(TestMidlet.tc.isup&&this.getY()>0){</p><p>  nextFrame(UP);</p><p>  move(0,-4);</p><p><b>  }</b&

50、gt;</p><p>  else if(TestMidlet.tc.isdown&&this.getY()<TestCanvas.h-this.getH()){</p><p>  nextFrame(DOWN);</p><p>  move(0,4);</p><p><b>  }</b>

51、</p><p>  else if(TestMidlet.tc.isleft&&this.getX()>0){</p><p>  nextFrame(LEFT);</p><p>  move(-4,0);</p><p><b>  }</b></p><p>  el

52、se if(TestMidlet.tc.isright&&this.getX()<TestCanvas.w-this.getW()){</p><p>  nextFrame(RIGHT);</p><p>  move(4,0);</p><p><b>  }</b></p><p><b

53、>  }</b></p><p><b>  }</b></p><p>  //Tools.class</p><p>  import javax.microedition.lcdui.Graphics;</p><p>  import javax.microedition.lcdui.Image

54、;</p><p><b>  /**</b></p><p>  * 當(dāng)前工具類里面有二個方法</p><p>  * 1,通過url的得到圖片對象</p><p>  * 2,對圖片對象進(jìn)行clip,畫出大圖里面的局部小圖</p><p>  * 3,方法定義都為static靜態(tài)類型</

55、p><p>  * @author YI</p><p><b>  */</b></p><p>  public class Tools {</p><p><b>  /**</b></p><p><b>  * </b></p>&l

56、t;p>  * @param g 畫刷對象</p><p>  * @param img 圖片對象</p><p>  * @param x 大圖的x坐標(biāo)</p><p>  * @param y 大圖的y坐標(biāo)</p><p>  * @param mx 小圖在大圖里面的相對x坐標(biāo)</p><p>  * @pa

57、ram my 小圖在大圖里面的相對y坐標(biāo)</p><p>  * @param mw 小圖的寬</p><p>  * @param mh 小圖的高</p><p>  * @param w 屏幕的寬</p><p>  * @param h 屏幕的高</p><p><b>  */</b>&l

58、t;/p><p>  public static void drawClipImage(Graphics g,Image img,int x, int y ,int mx,int my,int mw,int mh,int w,int h)</p><p><b>  {</b></p><p>  g.setClip(x, y, mw, mh);/

59、/畫以(x,y)坐標(biāo)為外接矩形起始點(diǎn),截取顯示區(qū)域為寬:mw,高:mh</p><p>  g.drawImage(img, x-mx, y-my, 0);//畫出對應(yīng)位置上的小圖</p><p>  g.setClip(0, 0, w, h);//還原</p><p><b>  }</b></p><p><b

60、>  /**</b></p><p><b>  * </b></p><p>  * @param urlName 圖片的相對路徑</p><p><b>  * @return</b></p><p><b>  */</b></p><

61、;p>  public static Image getImage(String urlName)</p><p><b>  {</b></p><p>  Image img=null;</p><p><b>  try{</b></p><p>  img=Image.createIm

62、age(urlName);//通過路徑創(chuàng)建圖片對象</p><p>  }catch(Exception ex)</p><p><b>  {</b></p><p>  ex.printStackTrace();</p><p><b>  }</b></p><p> 

63、 return img;</p><p><b>  }</b></p><p><b>  }</b></p><p>  4.2.2 菜單模塊設(shè)計</p><p>  包括排行榜、設(shè)置、幫助、退出的設(shè)計。主要有設(shè)置背景音樂的開與關(guān),幫助中展示游戲的簡介及操作方法。排行榜展示得分及排名。</

64、p><p>  圖4.4 設(shè)置界面圖</p><p><b>  關(guān)鍵代碼如下:</b></p><p><b>  /**</b></p><p><b>  * 繪制菜單</b></p><p>  * @param g</p><p

65、><b>  */</b></p><p>  public void drawMenu(Graphics g)</p><p><b>  {</b></p><p>  clearScreen(g);//刷屏</p><p>  g.drawImage(img3, w/2, h/2, G

66、raphics.VCENTER|Graphics.HCENTER);</p><p>  g.drawImage(img4, 20, 55+pointIndex*27, 0);</p><p><b>  }</b></p><p><b>  /**</b></p><p><b> 

67、 * 設(shè)置界面</b></p><p>  * @param g</p><p><b>  */</b></p><p>  public void drawSet(Graphics g)</p><p><b>  {</b></p><p>  clearS

68、creen(g);//刷屏</p><p>  g.drawImage(img6, w/2, h/2, Graphics.HCENTER|Graphics.VCENTER);</p><p>  g.drawImage(img4, 40, 75+pointIndexSet*50, 0);</p><p>  g.drawString("返回",

69、w,h,Graphics.BOTTOM|Graphics.RIGHT);</p><p><b>  }</b></p><p><b>  /**</b></p><p><b>  * 刷屏</b></p><p>  * @param g</p><p

70、><b>  */</b></p><p>  public void clearScreen(Graphics g)</p><p><b>  {</b></p><p>  g.setColor(0xffffff);</p><p>  g.fillRect(0, 0, w, h);&l

71、t;/p><p>  g.setColor(0x000000);</p><p><b>  }</b></p><p>  public void keyPressed(int key)</p><p><b>  {</b></p><p>  switch(key)<

72、/p><p><b>  {</b></p><p>  case -1://上鍵</p><p>  if(menuState==MENU&pointIndex>0)</p><p>  pointIndex--;</p><p>  if(menuState==SET&po

73、intIndexSet>0)</p><p>  pointIndexSet--;</p><p><b>  break;</b></p><p>  case -2://向下鍵</p><p>  if(menuState==MENU&pointIndex<5)</p><p

74、>  pointIndex++;</p><p>  if(menuState==SET&pointIndexSet<1)</p><p>  pointIndexSet++;</p><p><b>  break;</b></p><p>  case -7://右鍵</p>&l

75、t;p>  if(menuState!=MENU|menuState!=LOGO)</p><p>  menuState=MENU;</p><p><b>  break;</b></p><p>  case -5://中鍵</p><p>  if(menuState == SET)//設(shè)置音樂<

76、/p><p><b>  {</b></p><p>  switch(pointIndexSet)</p><p><b>  {</b></p><p><b>  case 0:</b></p><p>  isMusic = true;</p&

77、gt;<p><b>  break;</b></p><p><b>  case 1:</b></p><p>  isMusic =false;</p><p><b>  break;</b></p><p><b>  }</b>&

78、lt;/p><p><b>  }</b></p><p>  if(menuState==MENU)//菜單選項</p><p><b>  {</b></p><p>  switch(pointIndex)</p><p><b>  {</b>&

79、lt;/p><p><b>  case 0:</b></p><p>  menuState=GAME;</p><p><b>  break;</b></p><p><b>  case 1:</b></p><p>  //menuState=LO

80、AD;</p><p><b>  break;</b></p><p>  case 2://排行榜</p><p>  //menuState=RANK;</p><p><b>  break;</b></p><p><b>  case 3:</b

81、></p><p>  menuState=SET;</p><p><b>  break;</b></p><p><b>  case 4:</b></p><p>  //menuState=HELP;</p><p><b>  break;<

82、/b></p><p><b>  case 5:</b></p><p>  menuState=EXIT;</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }<

83、;/b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  5 功能測試</b></p><p><b> 

84、 5.1游戲功能測試</b></p><p>  【覆蓋功能點(diǎn)】玩家的移動及射擊</p><p>  【測試輸入】多組測試樣例</p><p>  【測試輸出】玩家向上、下、左、右移動及發(fā)射子彈。</p><p>  【測試結(jié)論】設(shè)置功能測試成功無誤,可以執(zhí)行</p><p><b>  【部分截

85、圖】</b></p><p>  圖5.1 游戲功能測試</p><p><b>  5.2設(shè)置功能測試</b></p><p>  【覆蓋功能點(diǎn)】背景音樂的開與關(guān)</p><p>  【測試輸入】多組測試樣例</p><p>  【測試輸出】有背景音樂或者沒背景音樂</p>

86、;<p>  【測試結(jié)論】設(shè)置功能測試成功無誤,可以執(zhí)行</p><p><b>  【部分截圖】</b></p><p>  圖5.1 設(shè)置功能測試</p><p><b>  6 總結(jié)</b></p><p>  1.團(tuán)隊的協(xié)調(diào)。在項目開發(fā)中此點(diǎn)尤其重要。</p>&

溫馨提示

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

評論

0/150

提交評論