利用JS實現貪吃蛇的遊戲 具體分析 之三遊戲的封裝

2021-08-22 08:36:05 字數 1911 閱讀 9129

在js裡面是基於物件的語言,那麼我們在前面兩篇文章中具體分析了food.js檔案的作用,以及snake.js的檔案作用,在我們的頂層game.js檔案中來呼叫這些方法就可以了,而頁面中只需要呼叫我們的game.js裡面的方法就可以實現整體的功能,這就是物件導向:找乙個專業的人來完成所有的功能

遊戲物件模組的設計:

在遊戲模組中設計好所有的內容為頂層模組,在這裡設計好所有的功能與接**互,這樣在結構**中只需要幾行**就能實現所有功能.

一:需求分析:

在這裡設計好所有的功能以及接**互,在html中引用就可以了

二:思路分析:

1. 建立遊戲物件,在這裡建立地圖,食物,蛇的物件,並擁有他們自身所有的方法與屬性.

2. 開始遊戲,在這裡設計將蛇,食物渲染到地圖上,因為蛇的移動設計到渲染問題,所以將蛇的移動功能也設計在這裡.同時在移動過程中又設計到邊界檢測所以在這裡完成:移動 邊界檢測 渲染的功能

3. 繫結按鍵的功能blinkey()函式的作用,判斷按下的是哪乙個鍵,如果按下的是下鍵改變蛇裡面的this.director屬性

三:**實現:

/*

** create by alex on 2018/8/4

*///建立遊戲物件將遊戲裡面的所有內容都放到這裡

(function

( window )

//遊戲開始的方法

game.prototype.start = function

( )

//讓蛇每隔一定的時間就動起來

function

snakeautomove

() }.bind(that),300)

}//新增按鍵資訊

function

bindkey

() break;

case

38: //改變蛇的方向為上.

if(this.snake.direction != "bottom")

break;

case

39: //改變蛇的方向為右.

if(this.snake.direction != "left")

break;

case

40: //改變蛇的方向為下.

if(this.snake.direction != 'top')

break;

}}.bind(that);

}//暴露介面

window.game = game;

}(window))

四.頁面的結構**:

lang="en">

charset="utf-8">

titletitle>

* .map

style>

head>

class="map"

id="map">

div>

src="food.js">

script>

src="snake.js">

script>

src="game.js">

script>

//整個html的頁面帶中只有這幾行**就可以實現所有的功能

var map = document.getelementbyid('map');

var game = new game(map);

game.start();

script>

body>

html>

所有功能的實現都已經完結,下一章講終極封裝.

js 實現貪吃蛇遊戲效果

用div模擬遊戲畫面範圍,食物,以及貪吃蛇。限定食物出現的時機 為隨機出現。俺不能超出畫面範圍。限定貪吃蛇遊走範圍 限定遊戲規則 1,貪吃蛇,超出畫面範圍遊戲結束。2,貪吃蛇,撞到自己遊戲結束。class map createele px height px background margin 0 ...

JS實現簡單的遊戲貪吃蛇

doctype html html head meta charset utf 8 title document title head body body script 貪吃蛇 鍵盤的方向鍵,控制蛇的方向,碰撞食物,實現增加長度的效果,撞到牆壁或自身,遊戲結束 分析 地圖 提供邊界 食物 隨機出現,...

C 實現貪吃蛇遊戲

一,專案簡介 距上個專案 c 實現推箱子遊戲 一周時間,再次回顧兒時經典遊戲 貪吃蛇。實現了按鍵控制蛇頭移動,按下空格鍵暫停,採用鍊錶結構實現吃到食物蛇身增長,到達一定限度,蛇頭前進速率加快 撞到牆壁或蛇身,遊戲結束。如有問題,希望大佬指導糾錯。二,區 game.h define snake h i...