c 貪吃蛇小遊戲

2022-02-25 02:47:00 字數 4604 閱讀 5870

------------恢復內容開始------------

新手學習c# 在上看到後自己模仿打出來的第乙個程式  開心,紀念一下

bean :食物類

block :蛇塊類

snake :蛇類

map :地圖 圖形類

食物類:

class

bean

set

}//顯示食物方法

public

void

showbean(graphics g)

//食物消失方法

public

void

unshowbean(graphics g)

}

蛇塊類:2020-02-16

public

class

block

set

}//蛇塊編號

private

int_blocknumber;

public

intblocknumber

set

}//蛇塊在左上角的位置

private

point _origin;

public

point origin

set

}//根據指定位置畫蛇塊

public

void

showblock(graphics g)

else

g.drawimage(bitmap, origin.x, origin.y,

15, 15

); }

//蛇塊消除

public

void

unshowblock(graphics g)

}

蛇類:

public

class

snake

set

}//蛇右的編號 蛇頭的長度

private

intheadnumber;

//蛇頭左上角座標

private

point headpoint;

//蛇頭座標唯讀屬性

public

point headpoint

}private

point mapleft;

//遊戲開始時初始的蛇

public snake(point map, int count)//

填充blocklist

blocklist.add(blocksnake);}}

//蛇邊長函式

public

void

snakegrowth()

//先把原先蛇塊變為普通蛇塊

blocklist[blocklist.count - 1].ishead = false

;

//例項化新蛇頭

block headnew = new

block();

headnew.ishead = true

; headnew.blocknumber = blocklist.count + 1

; headnew.origin = new

point(x, y);

blocklist.add(headnew);

headnumber++;

headpoint =headnew.origin;

}//蛇先前運動 沒有吃到食物

public

void

go(graphics g)

headnumber--;

snakegrowth();

}//蛇的方向轉換

public

void turndriction(int

pdriction)

break

;

case1:

case2:

case3:}}

//蛇顯示函式

public

void

showsnake(graphics g)

}//隱藏蛇

public

void

unshowsnake(graphics g)

}//自己是否會碰到自己

public

bool

istouchmyself()

}return

istouch;

}//重置蛇

public

void reset(point map, int

count)

blocklist.add(blocksnake);}}

}

地圖類:

public

class

map

}bean food;

public

map(point start)

//產生乙個新食物

private

bean foodrandom()

//顯示新食物方法

public

void

shownewfood(graphics g)

//畫地圖

public

void

showmap(graphics g)

else

}//判斷是否吃到食物

public

bool

cheakbean()

//檢查蛇是否撞牆

public

bool

checksnake()

//重新開始

public

void

resect(graphics g)

}

窗體**:

public

partial

class

form1 : form

private

readonly

map map;

private

int gradenum = 100

;

private

intpink;

private

void timer1_tick(object

sender, eventargs e)

bitmap bmp =new bitmap(this .width,this

.height);

backgroundimage =bmp;

graphics g =graphics.fromimage(bmp);

map.showmap(g);

if (map.checksnake() ||map.snake.istouchmyself())

}private

void form1_load(object

sender, eventargs e)

private

void form1_keydown(object

sender, keyeventargs e)

if (k == 40

)

if (k == 38

)

if (k == 39

)

map.snake.turndriction(d);

}private

void 開始遊戲toolstripmenuitem_click(object

sender, eventargs e)

if(this .開始遊戲toolstripmenuitem.text =="開始"

)

else

if(this .開始遊戲toolstripmenuitem.text=="

重新開始")

}private

void 繼續toolstripmenuitem_click(object

sender, eventargs e)

else

if (this.繼續toolstripmenuitem.text == "繼續"

)

}private

void 低階toolstripmenuitem_click(object

sender, eventargs e)

private

void 中級toolstripmenuitem_click(object

sender, eventargs e)

private

void 高階toolstripmenuitem_click(object

sender, eventargs e)

private

void 大神toolstripmenuitem_click(object

sender, eventargs e)

}

不是自己想的 但是我弄懂了

------------恢復內容結束------------

C 貪吃蛇小遊戲

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

C 貪吃蛇小遊戲

1.有許多值得新手學習的地方 2.不看就吃虧了噢 3.如果沒有值得學習的地方,我就倒立洗頭!include include include include include 方向鍵的ascll值 上72,左75,右77,下80 背景顏色的 0 黑色 1藍色 2 綠色 3湖藍色 4紅色 5紫色 6黃色 ...

貪吃蛇小遊戲

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 ...