• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Unity3D的科普游戲設(shè)計(jì)與實(shí)現(xiàn)

      2023-09-20 14:13:08趙佳喬鳳天
      中國(guó)教育技術(shù)裝備 2023年10期
      關(guān)鍵詞:教育游戲

      趙佳 喬鳳天

      摘? 要? 以Unity3D作為游戲引擎,設(shè)計(jì)開發(fā)一款有關(guān)化學(xué)基本儀器使用的卡牌配對(duì)的科普類教育游戲。該游戲可作為一種科普工具,能夠幫助學(xué)習(xí)者了解基本化學(xué)儀器的使用。詳細(xì)介紹游戲制作的流程以及主要功能的實(shí)現(xiàn),呈現(xiàn)游戲最后實(shí)現(xiàn)的效果圖,將科普知識(shí)融入游戲當(dāng)中,增強(qiáng)學(xué)習(xí)的趣味性和游戲的科普性。

      關(guān)鍵詞? Unity3D;教育游戲;科普游戲;卡牌配對(duì);化學(xué)儀器

      中圖分類號(hào):TP317.6? ? 文獻(xiàn)標(biāo)識(shí)碼:B

      文章編號(hào):1671-489X(2023)10-0038-05

      Design and Implementation of Science Game Based on Unity3D: Taking Basic Chemical In-struments as Example//ZHAO Jia,QIAO Feng-tian

      Abstract? Using Unity3D as the game engine, this paper designed and developed a popular science edu-cation game about the card pairing of basic chemical instruments, which can be used as a popular science tool to help learners understand the use of basic chemical instruments. This article details the pro-cess of game production and the implementation of the main functions, and presents the final effect diagram of the game. The integration of popular science knowledge into the game enhances the fun of learning and the popularity of the game.

      Key words? Unity3D; education game; science games; card matching; chemical instrument

      Authors address? Teacher Education Institute, The Capital Normal University, Beijing, China, 100037

      0? 引言

      近年來(lái),游戲已被應(yīng)用到教學(xué)領(lǐng)域,游戲和教學(xué)的融合程度越來(lái)越高,游戲化學(xué)習(xí)成為一種越來(lái)越普遍和受歡迎的學(xué)習(xí)方式,已經(jīng)慢慢被教師和家長(zhǎng)所接受。以科普為目的的科普類教育游戲也應(yīng)運(yùn)而生,它作為一種教育資源,本身所具有的娛樂(lè)性功能吸引了不少的學(xué)習(xí)者。此外,科普活動(dòng)的教育目標(biāo)不只是科學(xué)知識(shí),還包括科學(xué)方法與科學(xué)精神,游戲化的實(shí)現(xiàn)手段使公眾在學(xué)習(xí)了解科學(xué)知識(shí)本身的同時(shí),全方面地鍛煉溝通實(shí)踐等能力[1]。相比于傳統(tǒng)科普教育方式的枯燥和晦澀難懂,以游戲化的方式呈現(xiàn)科普知識(shí),能夠增強(qiáng)科普過(guò)程中的趣味性以及學(xué)習(xí)者和科普知識(shí)之間的互動(dòng)性。

      科普游戲作為教育游戲的一種,從字面上了解,就是以知識(shí)科普為目的的教育游戲。但截至目前,國(guó)內(nèi)還沒(méi)有對(duì)“科普游戲”作出明確的定義。劉玉花等[2]提出了“科普網(wǎng)游”的廣義概念和狹義概念。周忠和認(rèn)為,科普游戲要符合游戲的四大特征:目標(biāo)、規(guī)則、反饋、自愿參與??破沼螒虿荒茈x開科學(xué)的核心,還要有趣味,沒(méi)有科學(xué)的所謂科普游戲都是偽科普游戲,而科普游戲沒(méi)有了游戲的趣味和設(shè)定就不是游戲[3]。不容置疑的是,科普游戲的真正目的是寓教于樂(lè),要將科普知識(shí)植入游戲當(dāng)中,使學(xué)習(xí)者在與游戲的交互過(guò)程中潛移默化地學(xué)到知識(shí),提高能力。

      盡管科普游戲?qū)τ诖龠M(jìn)學(xué)習(xí)具有重大意義,但并未引起國(guó)內(nèi)游戲行業(yè)的足夠重視。目前,國(guó)內(nèi)的科普游戲主要用在科普?qǐng)鲳^,受眾面嚴(yán)重受限,而且,無(wú)論是在理論上還是在實(shí)踐上,國(guó)內(nèi)科普游戲的發(fā)展與國(guó)外相比都存在較大的差距??破沼螒蛟诓粩喟l(fā)展的過(guò)程中,逐漸暴露出它所存在的一些問(wèn)題,比如科普游戲的娛樂(lè)性與教育性的平衡問(wèn)題,很多游戲設(shè)計(jì)者都不能完美解決這一問(wèn)題,一般都會(huì)出現(xiàn)兩個(gè)極端:有些科普游戲過(guò)分注重知識(shí)的科普性,附加了太多的教育元素,因而使它淪為了一個(gè)純粹的教育工具,像游戲“心理游戲”規(guī)定在有限時(shí)間內(nèi)將給出的4張牌通過(guò)加減乘除計(jì)算得到結(jié)果24,整個(gè)游戲過(guò)程非常枯燥,且具有一定的難度;還有一部分科普游戲過(guò)分注重游戲的娛樂(lè)性,附加了太多的游戲元素,從而使它淪為了一個(gè)純粹的游戲軟件。諸如此類的問(wèn)題一直困擾著科普游戲的開發(fā)者,而正確的科普游戲旨在使學(xué)習(xí)者在輕松愉悅且具有一定教育意義的游戲環(huán)境中獲取知識(shí),鍛煉能力,增強(qiáng)技能。

      本研究基于Unity3D游戲引擎,遵循游戲開發(fā)的系統(tǒng)性、實(shí)用性、藝術(shù)性等特點(diǎn),設(shè)計(jì)并開發(fā)了一款面向小學(xué)高年級(jí)學(xué)生的有關(guān)基本化學(xué)儀器使用的卡牌配對(duì)類的科普游戲,該游戲具有一定的輔助教學(xué)的功能,能夠使學(xué)習(xí)過(guò)程變得簡(jiǎn)單有趣,可以滿足向?qū)W生科普知識(shí)的基本需求。

      1? 游戲設(shè)計(jì)

      1.1? 游戲主題

      本案例是以向?qū)W習(xí)者科普基本化學(xué)儀器的使用為主題,借鑒卡牌配對(duì)游戲的精髓,在設(shè)計(jì)過(guò)程中加入化學(xué)儀器,使用Unity3D引擎制作的一款科普游戲,游戲共分為兩大板塊,即游戲板塊和學(xué)習(xí)板塊。學(xué)習(xí)者通過(guò)鼠標(biāo)點(diǎn)擊翻開卡牌,找到相互配對(duì)的卡牌,以此在與游戲的交互過(guò)程中,寓教于樂(lè),獲得新知。

      1.2? 游戲機(jī)制

      本游戲共設(shè)置了3×4共12張卡牌,學(xué)習(xí)者可僅通過(guò)點(diǎn)擊鼠標(biāo)來(lái)完成游戲。在游戲板塊,學(xué)習(xí)者在每點(diǎn)擊兩張卡牌后,游戲會(huì)檢測(cè)這兩張卡牌是否配對(duì),配對(duì)成功則獲得時(shí)間獎(jiǎng)勵(lì),否則將自動(dòng)翻過(guò)這兩張卡牌,并重復(fù)上述操作;在學(xué)習(xí)板塊,主要向?qū)W習(xí)者介紹一些基本的化學(xué)儀器,能在游戲過(guò)程中為學(xué)習(xí)者及時(shí)補(bǔ)充知識(shí)。作為一款科普類教育游戲,設(shè)定該游戲?yàn)閱稳税?,難度適中,具有一定的可玩性和科普性。

      1.3? 游戲項(xiàng)目制作流程

      該游戲的制作共分為兩部分:一為前期的圖片和音樂(lè)等資源的收集與整理;二為后期的游戲UI設(shè)計(jì)、場(chǎng)景設(shè)計(jì)及程序?qū)崿F(xiàn)等。在該游戲的設(shè)計(jì)開發(fā)工作全部完成之后,要先經(jīng)過(guò)游戲測(cè)試,方能發(fā)布到相關(guān)平臺(tái)以投入使用。項(xiàng)目的具體制作流程如圖1所示。

      1.4? 主要界面展示

      基于以上游戲項(xiàng)目制作流程,展示游戲當(dāng)中的一些主要界面圖,游戲界面和學(xué)習(xí)界面分別如圖2和圖3所示。

      1.5? 游戲UI之間的邏輯關(guān)系

      在游戲首頁(yè)共為玩家提供了兩種選擇,玩家若點(diǎn)擊“先學(xué)習(xí)”,則進(jìn)入學(xué)習(xí)界面,學(xué)習(xí)完畢后會(huì)進(jìn)入游戲界面,根據(jù)游戲結(jié)果進(jìn)入相應(yīng)的界面(游戲成功或游戲失敗界面),并在相應(yīng)界面點(diǎn)擊要執(zhí)行的相應(yīng)的操作按鈕進(jìn)行跳轉(zhuǎn);玩家若在游戲首頁(yè)點(diǎn)擊“先游戲”,則進(jìn)入游戲界面,根據(jù)游戲結(jié)果進(jìn)入相應(yīng)的界面(游戲成功或游戲失敗界面),并在相應(yīng)界面點(diǎn)擊要執(zhí)行的相應(yīng)的操作按鈕進(jìn)行跳轉(zhuǎn)。游戲邏輯圖如圖4所示。

      2? 游戲的算法設(shè)計(jì)及實(shí)現(xiàn)思路

      2.1? 如何生成牌面隨機(jī)分布的卡牌矩陣

      本游戲提供了六種互為配對(duì),但牌面各不相同的共計(jì)12張卡牌。在游戲開始時(shí),會(huì)初始化生成3×4的卡牌矩陣,并依據(jù)每張卡牌之間的間距,將每張卡牌放置到其相應(yīng)的位置上,隨后通過(guò)Random()函數(shù)實(shí)現(xiàn)卡牌的隨機(jī)分布。具體實(shí)現(xiàn)思路為:首先,創(chuàng)建一個(gè)一維數(shù)組images[]來(lái)存放12張牌面;其次,創(chuàng)建一個(gè)一維數(shù)組numbers[],并初始化為{0,11,1,10,2,9,3,8,4,7,5,6},num-bers[]數(shù)組中每個(gè)元素的值代表了images[]數(shù)組中每張牌面所對(duì)應(yīng)的索引值,其中每相鄰的兩個(gè)元素所代表的卡牌互為配對(duì)(即卡牌索引值相加為11的兩張卡牌互為配對(duì));再次,使用雙重循環(huán)語(yǔ)句來(lái)存儲(chǔ)卡牌的順序,并定義一個(gè)臨時(shí)變量tempObj來(lái)保存生成的卡牌;最后,使用Random()函數(shù)來(lái)實(shí)現(xiàn)卡牌分布的隨機(jī)化。

      2.2? 如何通過(guò)鼠標(biāo)點(diǎn)擊實(shí)現(xiàn)卡牌翻面

      每張卡牌均有三種狀態(tài),分別為“未翻面”“已翻面”和“配對(duì)成功”,可以創(chuàng)建一個(gè)枚舉類型來(lái)保存這三種狀態(tài),定義兩個(gè)變量first Revealed Card和second Revealed Card分別用來(lái)保存第一次和第二次翻開的卡牌,并且要實(shí)時(shí)刷新這兩個(gè)變量的值。如果卡牌處于未被翻開狀態(tài)或是未配對(duì)成功狀態(tài),則可通過(guò)鼠標(biāo)點(diǎn)擊來(lái)實(shí)現(xiàn)卡牌的翻面,同時(shí)修改卡牌的狀態(tài)為“已翻面”狀態(tài)。

      2.3? 如何檢測(cè)卡牌是否配對(duì)

      每當(dāng)玩家連續(xù)翻開兩張卡牌后,程序都要檢測(cè)這兩張卡牌是否配對(duì)成功。如若配對(duì)成功,則要使這兩張卡牌牌面朝上,并修改其狀態(tài)為“配對(duì)成功”狀態(tài)。具體實(shí)現(xiàn)思路為:首先,要判斷這兩張卡牌的索引值相加是否等于11,若是,則修改兩張卡牌的狀態(tài)為“配對(duì)成功”狀態(tài),若否,則修改兩張卡牌的狀態(tài)為“未翻面”狀態(tài);其次,要實(shí)時(shí)刷新存儲(chǔ)這兩張卡牌的臨時(shí)變量(即變量first Revealed Card和second Revealed Card),在判斷結(jié)束后,要將這兩個(gè)變量的值設(shè)為空。

      2.4? 其他功能

      倒計(jì)時(shí)和時(shí)間獎(jiǎng)勵(lì)功能:規(guī)定該游戲要在30s的時(shí)間內(nèi)完成,進(jìn)入游戲時(shí)開始倒計(jì)時(shí),若卡牌配對(duì)成功,會(huì)給予一定的時(shí)間獎(jiǎng)勵(lì)。具體實(shí)現(xiàn)思路為:定義一個(gè)浮點(diǎn)型變量time,并初始化為30.0f,定義一個(gè)布爾類型的變量canCountdown,初始化為false;當(dāng)進(jìn)入游戲時(shí),修改canCountdown的值為true,變量time開始自減;當(dāng)配對(duì)成功時(shí),變量time自增1;當(dāng)變量canCountdown的值再次變?yōu)閒alse時(shí),表明時(shí)間耗盡,游戲失敗,并跳轉(zhuǎn)到游戲失敗界面。

      游戲成功或失敗的判定:在規(guī)定時(shí)間內(nèi),將所有卡牌均配對(duì)成功,則表明游戲勝利。具體實(shí)現(xiàn)思路為:定義一個(gè)整型變量score,并將其初始化為0,每當(dāng)卡牌配對(duì)成功時(shí),score自增1,在游戲的規(guī)定時(shí)間30 s內(nèi),若score的值達(dá)到卡牌總數(shù)量的一半,即表明游戲成功,并跳轉(zhuǎn)到游戲成功界面。當(dāng)時(shí)間耗盡,表明游戲失敗。

      游戲步數(shù)的判定:規(guī)定每連續(xù)翻開兩張卡牌,步數(shù)加1。具體實(shí)現(xiàn)思路為:定義一個(gè)整型變量step來(lái)保存步數(shù),并將其初始化為0;當(dāng)翻開第二張卡牌時(shí),step自增1。

      背景音樂(lè)音效的觸發(fā):本游戲共有四段音樂(lè):背景音樂(lè)、卡牌配對(duì)錯(cuò)誤提示音、游戲成功音效以及游戲失敗音效。當(dāng)進(jìn)入游戲時(shí),觸發(fā)背景音樂(lè);當(dāng)連續(xù)翻開兩張卡牌,但未配對(duì)成功時(shí),觸發(fā)卡牌配對(duì)錯(cuò)誤提示音效;當(dāng)游戲成功或失敗時(shí)分別觸發(fā)游戲成功和游戲失敗音效。

      3? 游戲關(guān)鍵功能的算法實(shí)現(xiàn)

      通過(guò)上述對(duì)游戲算法的設(shè)計(jì)和實(shí)現(xiàn)思路,在Unity3D游戲引擎中來(lái)進(jìn)行游戲的制作,以下給出了游戲當(dāng)中一些關(guān)鍵功能的算法實(shí)現(xiàn)。

      3.1? 資源的導(dǎo)入和預(yù)制體的制作

      在Unity3D引擎中的Project窗口創(chuàng)建“Prefabs”“Audio”和“Sprites”三個(gè)文件夾分別用來(lái)保存項(xiàng)目制作過(guò)程中所用到的預(yù)制體、音頻資源和圖片資源,分別如圖5、圖6和圖7所示。該游戲中的預(yù)制體為卡牌的背面圖片,音頻資源主要包括游戲背景音和游戲中的各種觸發(fā)音效,圖片資源主要是游戲背景圖、卡牌的牌面和各種UI背景等。

      3.2? 卡牌的初始化和隨機(jī)分布

      游戲初始界面生成3×4的卡牌矩陣。通過(guò)一個(gè)雙重循環(huán)語(yǔ)句來(lái)保存生成的卡牌,借助Random()函數(shù)來(lái)實(shí)現(xiàn)卡牌的隨機(jī)化分布。該功能的關(guān)鍵代碼如下:

      private int gridRows = 3, gridCols = 4;

      //卡牌矩陣的行數(shù)和列數(shù)

      private float offsetX = 2.5f, offsetY = 2.7f;

      //卡牌之間的間距

      private float originalX = -5f, originalY = -3f;

      //卡牌的原始位置

      //初始化生成卡牌

      void ArrangeCards()

      {

      for (int i = 0; i < gridRows; i++)

      {

      for(int j = 0; j < gridCols; j++

      {

      //初始化生成卡牌

      MemaryCard tempObj = Instantiate(Card) as MemaryCard;

      tempObj.GetComponent().initCardImage(numbers[i * gridCols + j], images[num

      bers[i * gridCols + j]]);

      //設(shè)置每張卡牌的狀態(tài)為未翻開狀態(tài)

      tempObj.GetComponent

      ().Unreveal();

      //計(jì)算每張卡牌的位置

      float posX = (offsetX * j) + originalX;

      float posY = (offsetY * i) + originalY;

      //將每張卡牌放置到相對(duì)應(yīng)的位置上

      tempObj.transform.position = new Vector3(posX, posY, 0);

      }

      }

      }

      //卡牌的隨機(jī)化分布

      int[] ShuffleCards(int[] numbers)

      {//定義一個(gè)數(shù)組來(lái)保存每張卡牌的索引值

      int[] tempNums = numbers.Clone() as int[];

      for (int i = 0; i < tempNums.Length; i++)

      {

      //定義一個(gè)變量來(lái)保存隨機(jī)生成的索引值

      int r = Random.Range(i, tempNums.Length);

      //定義一個(gè)臨時(shí)變量來(lái)存放每張卡牌,并將其與隨機(jī)生成的索引值所代表的卡牌互換位置,從而實(shí)現(xiàn)卡牌的隨機(jī)化分布

      int temp = tempNums[i];

      tempNums[i] = tempNums[r];

      tempNums[r] = temp;

      }

      //返回卡牌的索引值

      return tempNums;

      }

      3.3? 鼠標(biāo)點(diǎn)擊卡牌翻面

      當(dāng)鼠標(biāo)點(diǎn)擊卡牌時(shí),需完成的任務(wù)包括保存每次點(diǎn)擊的卡牌以及需改卡牌的狀態(tài)。需要判斷是第一次還是第二次點(diǎn)擊卡牌,當(dāng)卡牌第一次被點(diǎn)擊時(shí),需保存到變量firstRevealedCard中,當(dāng)卡牌第二次被點(diǎn)擊時(shí),需保存到變量secondRevealedCard中。該功能的關(guān)鍵代碼如下:

      public void CardReveal(MemaryCard card)

      {

      //首先判斷是否為第一次點(diǎn)擊,翻開牌面

      if(firstRevealedCard ==null)

      {

      //如果是,則將這張卡牌存儲(chǔ)在變量firstRevealedCard中

      firstRevealedCard = card;

      }

      else

      {

      //如果不是,則將這張卡牌存儲(chǔ)在變量secondRevealedCard中

      secondRevealedCrad = card;

      //更新步數(shù)

      step++;

      stepText.text = “步數(shù):” + step;

      //調(diào)用CheckMatch()函數(shù),判斷是否配對(duì)成功

      Invoke(“CheckMatch”, 1f);

      }

      }

      //鼠標(biāo)點(diǎn)擊操作

      public void OnMouseDown()

      {

      //可翻開卡牌的條件:卡牌處于未翻開狀態(tài)、未配對(duì)成功狀態(tài)以及第二張卡牌為空

      if (cardstate == cardState.Unreveal && cardstate != cardState.Matched && sceneManager.canReveal())

      {

      //調(diào)用Reveal()函數(shù),修改卡牌的狀態(tài)為“已翻面”狀態(tài)

      Reveal();

      sceneManager.CardReveal(this);

      }

      }

      3.4? 卡牌的配對(duì)

      兩張卡牌成功配對(duì)的條件為索引值相加等于11,若滿足此條件說(shuō)明卡牌成功配對(duì),此后需要修改這兩張卡牌的狀態(tài)。該功能的關(guān)鍵代碼如下:

      private void CheckMatch()

      {

      //如果兩張卡牌的索引值相加等于11,則說(shuō)明這兩張卡牌配對(duì)成功

      if (firstRevealedCard.getID() + secondRevealedCrad.getID()==11)

      {

      //修改兩張卡牌的狀態(tài)為“配對(duì)成功”狀態(tài)

      firstRevealedCard.Matched();

      secondRevealedCrad.Matched();

      timer.time++;

      //變量score用來(lái)保存已配對(duì)成功的卡牌數(shù)量

      score++;

      //每次成功配對(duì)后,都要判斷游戲是否成功

      Victory();

      }

      else

      {

      //觸發(fā)警告音效

      source.PlayOneShot(warningSound, 1F);

      //修改兩張卡牌的狀態(tài)為“未翻面”狀態(tài)

      firstRevealedCard.Unreveal();

      secondRevealedCrad.Unreveal();

      }

      //將臨時(shí)存放兩張卡牌的變量設(shè)為空

      firstRevealedCard = null;

      secondRevealedCrad = null;

      }

      4? 結(jié)束語(yǔ)

      本文借助Unity3D游戲引擎開發(fā)了一款關(guān)于基本化學(xué)儀器使用的卡牌配對(duì)類的科普教育游戲,后續(xù)可發(fā)布到PC端、Android手機(jī)等多種平臺(tái),具有較好的跨平臺(tái)特征。本游戲能夠?qū)⒒瘜W(xué)知識(shí)與Unity3D引擎有效融合,在游戲設(shè)計(jì)和開發(fā)的過(guò)程中,既提供了一定的娛樂(lè)功能,又保證了在游戲中融入一定的科普知識(shí),使玩家通過(guò)簡(jiǎn)單的鼠標(biāo)點(diǎn)擊操作,在游戲的過(guò)程中學(xué)到知識(shí),具有較好的互動(dòng)性和沉浸效果,能夠在一定程度上彌補(bǔ)傳統(tǒng)的科普方式的缺陷,具有一定的輔助教學(xué)的功能。雖然在游戲的前期準(zhǔn)備階段和后續(xù)的開發(fā)階段遇到了一些問(wèn)題,但經(jīng)過(guò)深入研究之后,都能夠找到相應(yīng)的解決方案。由于本游戲現(xiàn)在的結(jié)構(gòu)功能還不完整,因此,筆者在后期會(huì)嘗試將其他一些化學(xué)知識(shí)加入本游戲當(dāng)中,從而形成一個(gè)更完整、更有體系的有關(guān)化學(xué)知識(shí)的科普類教育游戲。

      5? 參考文獻(xiàn)

      [1] 肖云,谷美慧.科普教育游戲化的研究與思考[M]//2018年(第五屆)科學(xué)與藝術(shù)研討會(huì)論文集,2018:98-107.

      [2] 劉玉花,費(fèi)廣正,姜珂.科普網(wǎng)游及其產(chǎn)業(yè)發(fā)展研究[J].科普研究,2011,6(6):34-38.

      [3] 托波.游戲改變教育:數(shù)字游戲如何讓我們的孩子變聰明[M].何威,褚萌萌,譯.上海:華東師范大學(xué)出版社,2017.

      猜你喜歡
      教育游戲
      小學(xué)數(shù)學(xué)類教育游戲表現(xiàn)形式的研究
      基于WOS數(shù)據(jù)庫(kù)的近十年教育游戲文獻(xiàn)分析
      教育游戲在聾校信息技術(shù)課程中的應(yīng)用策略
      考試周刊(2016年96期)2016-12-22 23:27:12
      基于Unity3D的FPS教育游戲研究與設(shè)計(jì)
      教育游戲融入小學(xué)英語(yǔ)教學(xué)模式的探索
      分析小學(xué)英語(yǔ)教育游戲的設(shè)計(jì)與應(yīng)用
      基于教育游戲在小學(xué)數(shù)學(xué)教學(xué)中的應(yīng)用分析
      面向職業(yè)教育翻轉(zhuǎn)課堂的教育游戲設(shè)計(jì)原則與策略研究
      教育游戲在小學(xué)英語(yǔ)教學(xué)中的應(yīng)用
      教育游戲在小學(xué)英語(yǔ)教學(xué)中的應(yīng)用研究
      中方县| 贵州省| 汉阴县| 神农架林区| 新泰市| 仲巴县| 磐石市| 嘉黎县| 阜城县| 光山县| 黔东| 蓬莱市| 奎屯市| 永善县| 罗源县| 铁岭县| 宁晋县| 扶余县| 项城市| 贡山| 益阳市| 南投市| 台山市| 葫芦岛市| 游戏| 宁乡县| 临沭县| 革吉县| 石嘴山市| 无为县| 延川县| 会昌县| 剑阁县| 伊宁市| 澄迈县| 隆安县| 文昌市| 郁南县| 若羌县| 麟游县| 义马市|