使用js實現貪食蛇遊戲

2021-09-30 15:25:41 字數 3224 閱讀 8765

1、遊戲說明

1) 使用者可自定義貪食蛇行走速度(數字越大速度越快)及阻擋物個數(隨機生成)。

2) 按「回車鍵」或「開始遊戲」按鈕開始遊戲。

3) 按「方向鍵」控制貪食蛇行走方向。

4) 按「空格」或「開始/暫停遊戲」按鈕開始/暫停遊戲。

2、效果圖

3、html頁面

貪食蛇速度:

12345

阻擋物個數:

4、js

// 遊戲名稱:貪食蛇

// 版本:1.0

// 日期:2011-09-22

var ground_rows = 60;//場地行數

var ground_columns = 60;//場地列數

var ground_width = 600;//場地寬度

var ground_height = 600;//場地高度

var x_step = ground_width / ground_columns;

var y_step = ground_height / ground_rows;

var points = new array();//各點座標陣列

var snake = new array();//貪食蛇各點資料

var refreshtimer = 200;//貪食蛇速度

var snakeheadcolor = "red";//蛇頭顏色

var snakecolor = "green";//貪食蛇顏色

var foodcolor = "#660000";//食物顏色

var wallcolor = "#6699ff";//牆壁顏色

var groundobj;//場地jquery物件

//行走方向 1左 2上 3右 4下

var direction = 3;

var pre_direction = direction;

var isstart = false;

var ispause = false;

//方塊資訊物件

function point(row, column, id, type)

$(document).ready(function());

//開始遊戲

function startgame()

isstart = true;

$("#start").hide();

$("#restart").show();

timer();

}//重新開始

function restartgame()

//暫停/繼續遊戲

function pausegame() else

}//初始化資料、介面

function init() else

} } }

//建立實際方塊

//p 方塊資訊

function createblock(p) else if(p.type == 3) else if(p.type == 4)

var left = x_step * (p.column - 1);

var top = y_step * (p.row - 1);

var blockhtml = '

'; return blockhtml;

}//隨機生成方塊

function createrandomblock(type)

//獲取前進方向方塊資訊

function getblock()

next = points[row][column];

return next;

}//蛇頭顏色替換

function changecolor()

$("#" + snake[snake.length-1].id).get(0).style.background = snakeheadcolor;

}//重新整理貪食蛇長度、位置

function refreshsnake(next)

isstart = false;

break;

//前面是食物

case 4:

//移除食物方塊

$("#" + next.id).remove();

//新增頭部方塊

next.type = 3;

snake.push(next);

//重新生成食物

changecolor();

break; }}

function showresult()

//定時器

function timer() else

} settimeout("timer();", refreshtimer);

}//監聽鍵盤(方向鍵)

function keydown(evt)

break;

//空格鍵

case 32:

ispause = !ispause;

break;

//左方向鍵

case 37:

direction = 1;

break;

//上方向鍵

case 38:

direction = 2;

break;

//右方向鍵

case 39:

direction = 3;

break;

//下方向鍵

case 40:

direction = 4;

break;

//其它

default:

break;

};}}

5、css

@charset "utf-8";

/* css document */

div/*場地*/

#ground

.operate

/*使用者自定義、控制面板*/

#start, #restart

/*結果顯示*/

#result

/*遊戲說明*/

.tip

.tip ul, .til ul li

/*方塊*/

.tip_color

/*方塊顏色說明*/

.tip_font

/*快捷鍵*/

.tip_short

/*水平線*/

hr

6、源**已打包,見附件snake.zip。

小遊戲,貪食蛇

include include include include struct coor struct snake handle hconsole getstdhandle std output handle 獲取標準輸出控制代碼 int food x,food y 食物座標 int score 0 ...

as貪食蛇小遊戲(二)

先在建構函式裡面新增監聽事件 stage.addeventlistener keyboardevent.key down,onkeydownhandler snakegame類裡面新增2個全域性變數 private varisstop boolean true private varisover b...

C語言 實現貪食蛇遊戲

參照部落格 貪食蛇的c語言實現 的圖形介面,用了大概一天的時間我也寫了乙個簡單版的貪食蛇,能玩。遊戲截圖 1 呼叫windows api 解決畫圖問題 2 初始化畫出圍牆,蛇身體 3 隨機種子產生食物座標 4 非阻塞鍵盤監聽,獲取鍵盤輸入,控制蛇身體移動方向,計算座標 5 實現蛇身體移動,這裡我參照...