------------恢復內容開始------------
新手學習c# 在上看到後自己模仿打出來的第乙個程式 開心,紀念一下
bean :食物類
block :蛇塊類
snake :蛇類
map :地圖 圖形類
食物類:
class蛇塊類:2020-02-16bean
set
}//顯示食物方法
public
void
showbean(graphics g)
//食物消失方法
public
void
unshowbean(graphics g)
}
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 ...