Unity小遊戲(一) 貪吃蛇

2021-09-28 23:09:30 字數 1496 閱讀 4012

乙個極其簡陋的貪吃蛇,就不從新建專案一一贅述了,將完全:

1、首先說一下設想:

背景框,四邊圍牆,碰撞死亡,

初始狀態,乙個蛇頭乙個蛇身,wsad控制上下左右,

隨機出現食物,蛇頭吃掉食物後,增長,食物的隨機生成要避開蛇頭蛇身

2、移動

協程控制,蛇身用列表儲存,每次蛇頭向前移動一格,第一節蛇身移動到蛇頭位置,後面一次移動到上一節蛇身位置(此處要倒序移動,就是最後一節(蛇尾)先動)。

private ienumerator move()

bodys[0].transform.position = head.position;

head.translate(direction * sizegride);

isrotating = false;

yield return new waitforseconds(1f/ speed);

startcoroutine(move());

}

3、轉向

改變下一次蛇頭移動的方向,只能轉90度,此處要注意,不可直接進行兩次轉向,所以以乙個bool值限定了一下。

private void rotate()

else if (input.getkeydown(keycode.s) && direction.x != 0)

else if (input.getkeydown(keycode.a) && direction.y != 0)

else if (input.getkeydown(keycode.d) && direction.y != 0)

}

private void setdirection(vector3 dir)

4、食物生成

採用座標地圖,生成食物時,避免生成在蛇身上

/// /// 生成食物

///

public void newfood()

listpointscannewfood = points.except(pointssnake).tolist();

system.random rd = new system.random();

int index = rd.next(pointscannewfood.count);

food.position = pointscannewfood[index];

}

5、蛇身生長

/// /// 蛇生長

///

public void addbody()

目前死亡判斷還有問題。

貪吃蛇小遊戲

1 doctype html 2 html 3 head 4 title snake title 5head 6 body style text align center margih 100px background color aaaaaa 7 canvas id canv width 400 ...

C 貪吃蛇小遊戲

自學了幾天c 嘗試寫了乙個貪吃蛇小遊戲,比較詳細地做了注釋,實現 1 貪吃蛇基本功能 2 長按加速 3 計分板 xaml 及介面 namespace 貪吃蛇 新食物生成 public void newfoodgenerate 計時器每乙個計時週期內的時間處理程式 void timer tick ob...

貪吃蛇小遊戲實現

index.html style.css mapindex.js tools.js 自呼叫函式傳入window的目的,是讓變數可以被壓縮 防止undefined重新命名,也可以被壓縮 function window,undefined 暴露tools給window window.tools tool...