tft每日頭條

 > 遊戲

 > 數獨遊戲裡的數字是唯一位置嗎

數獨遊戲裡的數字是唯一位置嗎

遊戲 更新时间:2024-06-26 19:27:00

  上次給大家講了如何繪制遊戲主界面及數字面闆,今天接着往下面講,如何生成默認固定數字。遊戲開始之前,我們要在數字面闆上随機初始化一些數字并顯示出來,我們來看看該如何實現。

  首先看看html頁面代碼

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)1

  runGame()函數增加了一行代碼g_oGameObj.initGame();此函數負責調用生成随機數字的函數,我們接着看它的代碼

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)2

  g_oGameData.genereateFixed()函數是在固定位置生成随機數的函數,它的代碼如下:

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)3

  首先将保存數字的aFixed數組初始化,接下來逐行逐列生成随機數字,并驗證每一行、每一列、每3×3方塊内是否有重複數字,最後在每一行内随機删除2至5個數字。

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)4

  我們再看看g_oGameObj.drawScene()函數的代碼

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)5

  加了一個g_oSpriteManage.draw()函數,在這個數獨遊戲中,将使用了圖片且不需要與用戶交互的繪制操作封裝到一個叫gxsSpriteManage的類,下面讓我們來瞧瞧它的代碼

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)6

  此類的init成員函數很簡單,對初始化參數數組中的每一個gxsSprite對象依次執行init()函數并将它們添加到aSprites數組中。g_aSpritePara對象定義如下:

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)7

  是一個gxsSprite類的對象數組,目前隻有一個數組成員,即代表固定數字的g_oFixNum對象(繼承gxsSprite類)。我們先看看gxsSprite類定義及成員函數

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)8

  注意那個initParameter()函數,根據執行時綁定對象的不同調用不同子對象的initParameter()函數。最後看看gxsFixNumSprite類(繼承自gxsSprite)的代碼

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)9

  最後看看initParameter()函數和draw()函數代碼

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)10

  draw()函數中我打了個懶主意,用一個g_oFixNum對象繪制所有固定的數字,在繪制之前先初始化固定數字的參數,然後再将它繪制出來。

數獨遊戲裡的數字是唯一位置嗎(數獨遊戲開發生成默認固定數字)11

最後将今天講的内容錄了視頻,文章中沒有講到的地方大家可以看視頻。

數獨遊戲開發——生成随機固定數字

未完待續,敬請關注!後續更精彩,謝謝大家!

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关遊戲资讯推荐

热门遊戲资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved