吃蜂蜜
【遊戲介紹】
熊熊想吃蜂蜜,但有蜜蜂死守著。為了吸引蜜蜂的注意,熊熊必須拿到花朵並放置在正確的位置,讓蜜蜂去採花蜜
【遊戲連結】
【心得】
第一次做遊戲,根本不知道從何下手,連google什麼都沒頭緒,於是請教了學長,並在他推薦下使用了Processing這套遊戲引擎。
主要的優點就是語法簡單,又沒有太多複雜的工具,可以讓人專注在寫程式、設計方面。
雖然第一款遊戲花了兩個月的時間製作、也很陽春,但是完成的瞬間真的成就感爆棚,我喜歡做遊戲!
【Github】
【筆記】
遊戲地圖是用固定大小的陣列組成,人物、箱子、牆壁、地板各自給予不同的值,再去寫個別的行為
mapmap.pde 1
2
3
4
5
6
7
8
9
10
11
12
13
14//0 wall. 1 road. 2 transpoint. 8 honey. 5 bee. 4 flower.
{0,0,0,0,0,1,1,1,0,0,0,0,0},
{0,1,1,1,0,1,1,1,0,1,1,2,0},
{0,1,0,1,0,1,8,1,0,1,0,0,0},
{0,1,0,1,0,0,1,0,0,1,1,1,1},
{0,0,0,1,1,1,1,1,1,1,0,0,1},
{0,1,1,1,0,0,0,0,0,1,0,0,1},
{0,1,0,1,1,1,1,1,1,1,0,0,1},
{0,1,0,1,0,0,0,0,0,0,0,0,1},
{0,1,0,1,1,1,1,1,1,1,1,1,1},
{0,1,1,1,1,1,1,1,1,0,0,0,0},
{0,1,1,0,0,0,0,0,1,0,1,1,0},
{0,1,1,0,1,0,0,0,1,0,0,1,0},
{1,1,0,0,1,1,1,1,1,1,1,1,0}再來花最多時間的就是蜜蜂的追逐行為,本來想要讓蜜蜂自己有智慧的判斷玩家會往哪走在堵住玩家。
後來怎麼也想不出來,只好降低難度讓他走玩家上一步走過的路,也就是說只要玩家沒有被牆卡住或手殘應該是不太容易死的。beebee.pde 1
2
3
4
5
6
7
8
9
10
11
12
13
14void discover(){
moveX=0; moveY=0;
if(((queen.fx-x)*(queen.fx-x)+(queen.fy-y)*(queen.fy-y)<=9) && !queen.isFlower){ //判斷花是否在三格內
moveX=queen.fx-x;moveY=queen.fy-y;}
else if( (queen.x-x)*(queen.x-x) + (queen.y-y)*(queen.y-y) <= 4){ //判斷player是否在2格內
moveX=queen.px-x;moveY=queen.py-y;}
if(queen.y==6 && queen.x>3 && queen.x<9 && y==4) moveX=0;//不讓他有奇怪的移動
if(queen.saveX!=0 || queen.saveY!=0){//如果玩家移動
if(moveX>0){ move(1,0);i=3;}
else if(moveX<0){ move(-1,0);i=2;}
else if(moveY>0){ move(0,1);i=1;}
else if(moveY<0){ move(0,-1);i=0;}
}
}Processing的好處還有可以搭配Processing.js輕鬆輸出成網頁版,將所有程式碼貼在html裡,再利用canvas畫出來。
不過缺點是縮放網頁會影響寫死的座標(例如遊戲中的還原鍵滑鼠點擊會失效),可能要想其他辦法繞過去!