/*
開發環境:vs2013+easyx
課程內容:球球大作戰
*/#include
#include
#include
//包含easyx圖形庫標頭檔案,如果沒有安裝,是包含不了的
#include
//多**裝置介面標頭檔案
#pragma comment(lib,"winmm.lib")
#define win_width 1024
//視窗的大小
#define win_height 640
#define map_width (win_width*3)
//地圖的大小
#define map_height (win_height*3)
#define food_num 1000
#define ai_num 200
//地圖是一張圖 int temp;
image map
(map_width, map_height)
;//食物,玩家,ai有什麼屬性
struct ball
;struct ball food[food_num]
;struct ball player;
struct ball ai[ai_num]
;point g_camerapos;
//定義攝像機位置
void
chasealgortihm
(struct ball *chase,
struct ball run)
;//求兩個球之間的距離
double
distance
(struct ball b1,
struct ball b2)
void
updatepos()
//初始化資料
void
gameinit()
//初始化玩家
player.x =
rand()
% map_width;
player.y =
rand()
% map_height;
player.flag =
true
; player.color =
rgb(
rand()
%256
,rand()
%256
,rand()
%256);
player.r =
rand()
%10+10
;//初始化ai
for(
int i =
0; i < ai_num; i++)}
void
gamedraw()
}//繪製ai
for(
int i =
0; i < ai_num; i++)}
//繪製玩家
setfillcolor
(player.color)
;solidcircle
(player.x, player.y, player.r)
;setworkingimage()
;updatepos()
;//更新攝像機位置
//把自定義的繪製到視窗上
//putimage(0, 0, &map); 這樣貼圖不合適
//void putimage(int dstx, int dsty, int dstwidth, int dstheight, const image *psrcimg, int srcx, int srcy, dword dwrop = srccopy);
putimage(0
,0, win_width, win_height,
&map, g_camerapos.x, g_camerapos.y);}
//頑石老師移動起來了,飄起來了
void
playermove
(int speed)if(
getasynckeystate
(vk_down))if
(getasynckeystate
(vk_left))if
(getasynckeystate
(vk_right)
)//作弊測試if(
getasynckeystate
(vk_space))if
(getasynckeystate
('a'))
}//吃零食
void
eatfood()
}}//ai移動演算法,追逐比自己半徑小的球
void
aimove()
}}//去追吧
if(index !=-1
)else}}
//玩家吃ai,ai吃玩家
void
eatai()
//ai吃食物,ai吃ai
void
aieatfood()
intmain()
getchar()
;//防止程式閃退
return0;
}//追逐演算法
void
chasealgortihm
(struct ball *chase,
struct ball run)
else
}else
else
}}
《球球大作戰》優化之路
看了unite shanghai 2019的交流,記錄一下別人的優化方法 雖然我並沒有玩過 球球大作戰 這款遊戲,不清楚它是怎樣的乙個玩法和畫面的表現,但是我感覺一些優化的方法應該大部分還是通用的。這次演講主要說的就是這款遊戲從unity4.7版本公升級到untiy2017版本的過程中遇到的哪些問題...
tyvj4623 球球大作戰 生存
背景 作為乙個oier,小天給自己做了乙個超牛的外掛程式 讓自己的球瞬間移動到場內的任何位置!這意味著小天可以瞬間移動到任何乙個比自己小的球上,把它吃掉。現在,小天只用外掛程式來瞬移,每次瞬移只能吃掉乙個球。現在房間內有n個大小不一的球,小天至少瞬移吃球多少次,才能比剩下的所有球都大呢?每次都吃掉最...
球球大作戰 獲取棒棒糖思路
龍蛋領取網路請求圖 短 還原成長 並重定向到長 棒棒糖的長 格式拿到id 龍蛋的長 格式編碼 須解碼得到id 領取位址 棒棒糖 龍蛋 爬取ip並存入資料庫 存入資料庫的ip,狀態預設為0,0 未檢測.1 可用,1 不可用 測試ip是否可用 用狀態為1 的 ip去訪問 領取位址 將執行 按順序寫到 定...