亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于HTML+CSS+JS的網(wǎng)頁版2048的實現(xiàn)

        2017-05-18 09:22:02山西農(nóng)業(yè)大學(xué)王藝燕
        電子世界 2017年9期
        關(guān)鍵詞:游戲

        山西農(nóng)業(yè)大學(xué) 王藝燕

        基于HTML+CSS+JS的網(wǎng)頁版2048的實現(xiàn)

        山西農(nóng)業(yè)大學(xué) 王藝燕

        描述了一個使用HTML和CSS進行UI界面設(shè)計,使用JS進行后臺邏輯設(shè)計的網(wǎng)頁版2048小游戲的實現(xiàn)。

        HTML;CSS;JS;網(wǎng)頁版;2048

        1.前言

        2048是一款簡單而流行的休閑益智類小游戲,憑借著簡單而不失美觀的UI設(shè)計與獨特的創(chuàng)意吸引了許多的游戲玩家。游戲一開始會產(chǎn)生兩個數(shù)字2或4,將所有數(shù)字朝著一個方向移動時,相同的數(shù)字會疊加,同時在空白地方會產(chǎn)生一個新的數(shù)字,然后重復(fù)操作直到得到一個2048就算勝利。因為規(guī)則簡單,所以2048小游戲有許多版本,本文將分析與研究如何使用js來實現(xiàn)游戲的邏輯設(shè)計。

        2.設(shè)計

        2.1 總體架構(gòu)

        (1)該2048小游戲采用面向過程的設(shè)計方法,整個開發(fā)過程一共用五個文件實現(xiàn)。game.html用于對游戲界面元素進行簡單布局,gameStyle.css用于設(shè)計界面元素的樣式,mainFunction.js用于設(shè)計該游戲的主邏輯,bottom.js 用于存放一些被主邏輯所調(diào)用的底層邏輯,showAnimation.js則是用于存放動畫效果。

        (2)游戲的主循環(huán)則是根據(jù)玩家所按的方向鍵決定所需調(diào)用的函數(shù)。

        2.2 邏輯設(shè)計與實現(xiàn)

        圖1 游戲活動圖

        整個游戲的大致流程用活動圖表示如圖1所示,最終效果如圖2所示。其中:

        (1)棋盤初始化

        如圖3所示,首先將一個棋盤劃分為4*4的類名為child-cell的底層div,然后再為每個小格子添加一層類名為number-cell的div用于存放數(shù)據(jù)并且將數(shù)據(jù)的值賦為0。如果數(shù)據(jù)為0,則只顯示底層div,如果數(shù)字非0,頂層的div將會以動畫的形式覆蓋底層的div小格子。核心代碼如下所示。

        圖2 效果圖

        圖3 棋盤初始化

        (2)是否可以左移(以左移為例)

        在這一部分的邏輯設(shè)計中,首先要判斷是否可以向左移動,其次要知道移動到哪里,最后進行結(jié)果的一個疊加。

        1)左移判斷:最左邊的格子,無論上面是否有數(shù)字均不可以向左移動;如果格子左側(cè)沒有數(shù)據(jù),可向左移動;如果格子上的數(shù)字與左邊的數(shù)字相同,也可以向左移動。

        2)移動位置:用noHorizontalCell(row,col1,col2,board)判斷落腳位置與小格子之間是否存在障礙物。如果沒有障礙并且落腳位置數(shù)據(jù)為0,則直接覆蓋。如果沒有障礙并且落腳位置的數(shù)據(jù)與小格子的數(shù)據(jù)相同,則需要將兩個小格子上的數(shù)據(jù)相加,再覆蓋到落腳位置上。

        (3)游戲是否結(jié)束

        游戲結(jié)束首先分為兩種結(jié)果,一種是成功得到了2048,另一種是game over,這里重點分析游戲失敗的邏輯。游戲失敗必須同時滿足兩種情況,即棋盤沒有空余的位置,并且也無法再進行移動。具體代碼如下:

        3.結(jié)束語

        本研究首先對2048小游戲的規(guī)則行了簡單介紹,其次對如何用js實現(xiàn)具體的邏輯進行了詳細闡述,并給出相應(yīng)的核心代碼。在此基礎(chǔ)上,還可以設(shè)置關(guān)卡、進行分數(shù)統(tǒng)計、添加音樂效果,從而增強游戲的趣味性與可玩性。

        [1]姚敦紅,楊凌,張志美,李曉黎等.jQuery程序設(shè)計基礎(chǔ)教程[M].北京:人民郵電出版社,2016.

        [2]聶常虹.Web前端開發(fā)技術(shù)[M].北京:人民郵電出版社,2016.

        [3]兵學(xué)軍.JavaScript前端開發(fā)實用技術(shù)教程[M].北京:人民郵電出版社,2016.

        猜你喜歡
        游戲
        做游戲
        夜間游戲
        游戲
        送信游戲
        數(shù)獨游戲
        瘋狂的游戲
        飛碟探索(2016年11期)2016-11-14 19:34:47
        爆笑游戲
        第八章直接逃出游戲
        第八章 直接逃出游戲
        游戲五計算
        激情在线视频一区二区三区| 7777精品伊人久久久大香线蕉| 精品露脸国产偷人在视频| 亚洲av成人无码一区二区三区在线观看 | 日韩成人极品在线内射3p蜜臀| 久久亚洲高清观看| 在线亚洲AV成人无码一区小说| 亚洲视频在线免费观看一区二区| 一级一片内射视频网址| 成人国产激情自拍视频| 国产女主播白浆在线观看| 中文在线√天堂| 中文字幕一区,二区,三区| 国产激情综合五月久久| 人妻精品久久无码区| 少妇高潮惨叫喷水在线观看| 岛国视频在线无码| 丰满少妇又爽又紧又丰满动态视频| 免费国产在线视频自拍白浆| 国产免费人成视频在线观看| 亚洲视频一区| 在线a亚洲视频播放在线观看| 丝袜美腿亚洲综合玉足| 亚洲成人av一二三四区| 久久人人爽人人爽人人av| 久久精品国产亚洲av大全相关| 日韩精品夜色二区91久久久| 日本一区二区在线免费视频| 国产丝袜在线精品丝袜| 免费国产99久久久香蕉| 国产高清在线精品一区二区三区 | 美女裸体无遮挡免费视频的网站| 精品视频一区二区在线观看| 亚洲国产果冻传媒av在线观看 | 99久久精品一区二区三区蜜臀 | 国产日韩精品中文字无码| 国产一区曰韩二区欧美三区| 亚洲成精品动漫久久精久| 日韩av一区二区三区精品久久| 久久天堂综合亚洲伊人hd妓女| 久久久久成人亚洲综合精品|