chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何用C語(yǔ)言實(shí)現(xiàn)球球大作戰(zhàn)項(xiàng)目

C語(yǔ)言編程學(xué)習(xí)基地 ? 來源:C語(yǔ)言編程學(xué)習(xí)基地 ? 作者:C語(yǔ)言編程學(xué)習(xí)基地 ? 2021-11-21 16:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)——《球球大作戰(zhàn)項(xiàng)目》,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下!在室友面前秀一下豈不是美滋滋!

游戲介紹:

這是一個(gè)大球吃小球的世界,玩家的目標(biāo)是要努力吃成最大的球球。在游戲一開始,玩家出現(xiàn)在地圖上隨機(jī)位置,地圖里灑滿了小彩豆,玩家吃掉小彩豆體積就會(huì)增大,當(dāng)增大到比別人的球大時(shí),就可以吃別人的球啦,當(dāng)然也得躲避更大的球。小球速度快,大球速度慢。球球到達(dá)一定重量后,可以分身,一個(gè)球變成等大的兩個(gè)球,可以再次分身,但是最多可以擁有16個(gè)分身。

本期就是帶著大家用C語(yǔ)言去開發(fā)一款自己寫的簡(jiǎn)易版球球大作戰(zhàn),一定要自己動(dòng)手來寫喲~

本項(xiàng)目編譯環(huán)境:VS2019/VS2013;

插件:圖形庫(kù)插件easyX,涉及圖片素材可以自行百度找也可以關(guān)注文末領(lǐng)取;

配套講解教程:球球大作戰(zhàn)游戲教程——嗶哩嗶哩

源代碼示例:

#include#include#include#include#include#include#pragma comment(lib,"winmm.lib")#define WIN_WIDTH 1024 //宏定義窗口寬和高#define WIN_HEIGHT 640#define MAP_WIDTH  (WIN_WIDTH*5)#define MAP_HEIGHT (WIN_HEIGHT*5)#define FOOD_NUM 1000//食物數(shù)量 #define AI_NUM 500 //人工智障數(shù)量
//玩家,用圓表示,用變量表示玩家的坐標(biāo)struct Ball //定義小球的結(jié)構(gòu),玩家,ai,食物{  int x;  int y;  int r;  bool flag;//是否存在標(biāo)志  DWORD color;//小球顏色}player,food[FOOD_NUM],ai[AI_NUM];//定義變量//int a; 圖片 IMAGE map;IMAGE map(MAP_WIDTH, MAP_HEIGHT);POINT cameraPos;//攝像機(jī)位置void CameraUpdate(){  //以人物為中心,計(jì)算攝像機(jī)的位置  cameraPos.x = player.x - WIN_WIDTH / 2;  cameraPos.y = player.y - WIN_HEIGHT / 2;
  if (cameraPos.x < 0) cameraPos.x = 0;  if (cameraPos.y < 0) cameraPos.y = 0;  if (cameraPos.x > MAP_WIDTH - WIN_WIDTH) cameraPos.x = MAP_WIDTH - WIN_WIDTH;  if (cameraPos.y > MAP_HEIGHT - WIN_HEIGHT) cameraPos.y = MAP_HEIGHT - WIN_HEIGHT;
}//初始化數(shù)據(jù)void GameInit(){  mciSendString("open ./BallBGM.mp3 alias BGM", 0, 0, 0);  mciSendString("play BGM repeat", 0, 0, 0);  //設(shè)置隨機(jī)數(shù)種子  srand((unsigned)time(NULL));
  player.x = rand() % MAP_WIDTH;  player.y = rand() % MAP_HEIGHT;  player.r = 15;  player.flag = true;  player.color = RGB(rand() % 256, rand() % 256, rand() % 256);  //初始化食物數(shù)據(jù)  for (int i = 0; i < FOOD_NUM; i++)  {    food[i].x = rand() % MAP_WIDTH;    food[i].y = rand() % MAP_HEIGHT;    food[i].r = rand() % 5+1;    food[i].flag = true;    food[i].color = RGB(rand() % 256, rand() % 256, rand() % 256);  }  //初始化ai  for (int i = 0; i < AI_NUM; i++)  {    ai[i].x = rand() % MAP_WIDTH;    ai[i].y = rand() % MAP_HEIGHT;    ai[i].r = rand() % 15 + 1;    ai[i].flag = true;    ai[i].color = RGB(rand() % 256, rand() % 256, rand() % 256);  }}void GameDraw(){  //加上雙緩沖繪圖,防止閃屏  BeginBatchDraw();  //設(shè)置工作區(qū)  SetWorkingImage(&map);  //設(shè)置背景顏色  setbkcolor(WHITE);  //清屏  cleardevice();  //繪制食物  for (int i = 0; i < FOOD_NUM; i++)  {    if (food[i].flag)    {      setfillcolor(food[i].color);      solidcircle(food[i].x, food[i].y, food[i].r);    }  }  //繪制智障  for (int i = 0; i < AI_NUM; i++)  {    if (ai[i].flag)    {      setfillcolor(ai[i].color);      solidcircle(ai[i].x, ai[i].y, ai[i].r);    }  }  //繪制玩家  if (player.flag)  {    setfillcolor(player.color);    solidcircle(player.x, player.y, player.r);    settextcolor(BLACK);    setbkmode(TRANSPARENT);    outtextxy(player.x, player.y, "頑石老師");  }  SetWorkingImage();//恢復(fù)默認(rèn)工作區(qū)  CameraUpdate();  //putimage(cameraPos.x, cameraPos.y, &map);  putimage(0, 0, WIN_WIDTH, WIN_HEIGHT, &map, cameraPos.x, cameraPos.y);  EndBatchDraw();//結(jié)束雙緩沖繪圖}//控制玩家void PlayerContrl(int speed){  //往上移動(dòng),什么發(fā)生改變?y坐標(biāo)減  if (GetAsyncKeyState(VK_UP) && player.y-player.r >= 0)  {    player.y -= speed;  }  if (GetAsyncKeyState(VK_DOWN) && player.y + player.r  {    player.y += speed;  }  if (GetAsyncKeyState(VK_LEFT) && player.x - player.r >= 0)  {    player.x -= speed;  }  if (GetAsyncKeyState(VK_RIGHT) && player.x + player.r   {    player.x += speed;  }}//求兩點(diǎn)之間的距離double DisTance(struct Ball b1,struct Ball b2){  return sqrt((double)(b1.x - b2.x)*(b1.x - b2.x) + (b1.y - b2.y)*(b1.y - b2.y));}//玩家吃食物void EatFood(){  for (int i = 0; i < FOOD_NUM; i++)  {    if (food[i].flag && DisTance(player,food[i])    {      food[i].flag = false;      player.r+=food[i].r/4;    }  }}//追逐算法 void Chase(struct Ball *chase, struct Ball run){  chase->x < run.x ? chase->x += 2 : chase->x -= 2;//x改變  chase->y < run.y ? chase->y += 2 : chase->y -= 2;//y改變}
void aiMove(){  for (int i = 0; i < AI_NUM; i++)  {    if (ai[i].flag)    {      Chase(&ai[i], player);    }  }}int main(){  //創(chuàng)建窗口  initgraph(WIN_WIDTH, WIN_HEIGHT);  GameInit();  //需要不斷地處理繪圖,以及獲取鍵盤消息...循環(huán)  while (1)  {    aiMove();    GameDraw();    EatFood();    PlayerContrl(10);  }    getchar();  return 0;}

責(zé)任編輯:haq
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    183

    文章

    7644

    瀏覽量

    145685
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4970

    瀏覽量

    74024

原文標(biāo)題:C語(yǔ)言項(xiàng)目實(shí)戰(zhàn):《球球大作戰(zhàn)》零基礎(chǔ)項(xiàng)目!185 行源代碼示例

文章出處:【微信號(hào):cyuyanxuexi,微信公眾號(hào):C語(yǔ)言編程學(xué)習(xí)基地】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    DSP717HF Wafer植錫膏重磅推薦

    在先進(jìn)封裝工藝不斷升級(jí)的背景下,植材料的穩(wěn)定性、精度與潔凈度,正成為影響良率的關(guān)鍵因素。東莞市大為新材料技術(shù)有限公司推出高性能Wafer植錫膏——DSP717HF,為高端封裝提供可靠國(guó)產(chǎn)化
    的頭像 發(fā)表于 02-05 14:17 ?424次閱讀
    DSP717HF Wafer植<b class='flag-5'>球</b>錫膏重磅推薦

    講解C語(yǔ)言代碼的實(shí)現(xiàn)過程

    重點(diǎn)講解C語(yǔ)言代碼的實(shí)現(xiàn)過程,算法的C語(yǔ)言實(shí)現(xiàn)過程具有一般性,通過PID算法的C
    發(fā)表于 01-21 07:58

    匯誠(chéng)儀器與安徽曉新材料達(dá)成合作,DSC助力材料研發(fā)升級(jí)

    近日,南京匯誠(chéng)儀器儀表有限公司與安徽曉新材料科技有限公司正式達(dá)成合作,向其交付差示掃描量熱儀DSC-600C,為曉新材料在鋰電池極耳、軟包裝膜等產(chǎn)品的研發(fā)與質(zhì)控工作提供核心熱分析支持。此次合作
    的頭像 發(fā)表于 01-20 17:27 ?1366次閱讀
    匯誠(chéng)儀器與安徽曉<b class='flag-5'>球</b>新材料達(dá)成合作,DSC助力材料研發(fā)升級(jí)

    從手工到自動(dòng):焊剪切測(cè)試的技術(shù)演進(jìn)與科學(xué)原理

    到了剪切力值在0.13-3.3mm/s速率范圍內(nèi)不受影響的重要特性。 首臺(tái)精密鍵合焊-剪切測(cè)試儀簡(jiǎn)圖 現(xiàn)代測(cè)試技術(shù)的突破 與早期設(shè)備相比,現(xiàn)代焊剪切測(cè)試儀實(shí)現(xiàn)了多項(xiàng)重要突破: l 自動(dòng)化水平提升
    發(fā)表于 12-31 09:12

    BGA植中助焊劑的應(yīng)用工序及核心要求

    BGA植中,助焊劑是保障焊定位與焊接質(zhì)量的核心輔料,僅在焊放置前的焊盤預(yù)處理后集中涂覆,兼具粘結(jié)固定焊、清除氧化層、防二次氧化的作用。其性能要求精準(zhǔn):常溫粘度5000-1500
    的頭像 發(fā)表于 12-16 17:36 ?1948次閱讀
    BGA植<b class='flag-5'>球</b>中助焊劑的應(yīng)用工序及核心要求

    紫宸激光錫球焊錫機(jī):點(diǎn)亮芯片0.07mm激光植新征程

    隨著半導(dǎo)體行業(yè)向高性能、微型化方向加速演進(jìn),#芯片封裝技術(shù)面臨前所未有的精度與可靠性挑戰(zhàn)。尤其在人工智能、#5G通信、物聯(lián)網(wǎng)等領(lǐng)域,芯片焊點(diǎn)密度和互聯(lián)精度需求持續(xù)攀升。以下將通過芯片植行業(yè)背景
    的頭像 發(fā)表于 11-19 16:26 ?812次閱讀
    紫宸激光錫球焊錫機(jī):點(diǎn)亮芯片0.07mm激光植<b class='flag-5'>球</b>新征程

    激光焊接技術(shù)在焊接鈦工藝中的應(yīng)用

    作為高端閥門、航空航天軸承及人工關(guān)節(jié)的核心構(gòu)件,其焊接質(zhì)量直接決定密封性能與服役壽命。面對(duì)鈦材高溫易氧化、球體曲面熔深一致性控制等嚴(yán)峻挑戰(zhàn),激光焊接技術(shù)憑借其非接觸加工與精準(zhǔn)熱輸入特性,成為實(shí)現(xiàn)
    的頭像 發(fā)表于 10-23 16:31 ?287次閱讀
    激光焊接技術(shù)在焊接鈦<b class='flag-5'>球</b>工藝中的應(yīng)用

    激光焊接技術(shù)在焊接浮工藝中的應(yīng)用

    作為液位控制、閥門啟閉及壓力調(diào)節(jié)等裝置中的關(guān)鍵部件,其密封性、耐腐蝕性及結(jié)構(gòu)完整性直接關(guān)系到整個(gè)系統(tǒng)的可靠性與壽命。激光焊接技術(shù)因其獨(dú)特的加工優(yōu)勢(shì),在浮的制造與封裝工藝中扮演著越來越重要的角色
    的頭像 發(fā)表于 09-18 15:53 ?332次閱讀
    激光焊接技術(shù)在焊接浮<b class='flag-5'>球</b>工藝中的應(yīng)用

    求助,關(guān)于K230部署yolov8時(shí)遇到問題求解

    使用yolov8訓(xùn)練出來了一個(gè)十個(gè)類別的模型并且按照要求轉(zhuǎn)換成了.kmodel模型,在部署到K230時(shí) 使用yolo大作戰(zhàn)里面的代碼提示我list out of range但是我看了我的.yaml
    發(fā)表于 08-12 07:26

    在k230上使用yolov5檢測(cè)圖像卡死,怎么解決?

    0.99以上 模型轉(zhuǎn)換指令 再將該模型放到k230設(shè)備上使用yolo大作戰(zhàn)中yolov5檢測(cè)示例,檢測(cè)就會(huì)卡死,打印出的檢測(cè)結(jié)果會(huì)超過1。 目前無從下手,大佬們求救!
    發(fā)表于 08-11 07:41

    PLC液壓成機(jī)數(shù)據(jù)采集物聯(lián)網(wǎng)解決方案

    機(jī),又名壓機(jī)或壓設(shè)備,屬于工業(yè)機(jī)械范疇,其主要功能是將各類顆粒狀、粉末狀物料,借助高壓擠壓工藝,制成球形或其他預(yù)設(shè)形狀的固體。該設(shè)備在冶金、礦山、煤炭、建材、耐火材料、化工等多個(gè)行業(yè)得到
    的頭像 發(fā)表于 06-26 16:11 ?658次閱讀
    PLC液壓成<b class='flag-5'>球</b>機(jī)數(shù)據(jù)采集物聯(lián)網(wǎng)解決方案

    單片機(jī)C語(yǔ)言實(shí)例(350+例)

    350+單片機(jī)C語(yǔ)言實(shí)例! 純分享帖,需要者可點(diǎn)擊附件免費(fèi)獲取完整資料~~~【免責(zé)聲明】本文系網(wǎng)絡(luò)轉(zhuǎn)載,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請(qǐng)第一時(shí)間告知,刪除內(nèi)容!
    發(fā)表于 05-22 21:47

    車載+戶外雙考驗(yàn)!YU系列USB Type-C連接器成高爾夫車車載快充新選擇

    背景介紹隨著高爾夫運(yùn)動(dòng)不再高冷,配置USB等充電接口的高爾夫車,正成為提升球場(chǎng)運(yùn)營(yíng)與體驗(yàn)的標(biāo)配。凌科電氣YU-USB&Type-C連接器,以穩(wěn)定供電與嚴(yán)苛環(huán)境耐受性為核心,成為高爾夫車車
    的頭像 發(fā)表于 04-30 18:20 ?711次閱讀
    車載+戶外雙考驗(yàn)!YU系列USB Type-<b class='flag-5'>C</b>連接器成高爾夫<b class='flag-5'>球</b>車車載快充新選擇

    BGA封裝焊推力測(cè)試解析:評(píng)估焊點(diǎn)可靠性的原理與實(shí)操指南

    在電子封裝領(lǐng)域,BGA(Ball Grid Array)封裝因其高密度、高性能的特點(diǎn),廣泛應(yīng)用于集成電路和芯片模塊中。然而,BGA焊的機(jī)械強(qiáng)度直接影響到器件的可靠性和使用壽命,因此焊推力測(cè)試
    的頭像 發(fā)表于 04-18 11:10 ?1962次閱讀
    BGA封裝焊<b class='flag-5'>球</b>推力測(cè)試解析:評(píng)估焊點(diǎn)可靠性的原理與實(shí)操指南

    深度解析激光錫焊中鉛與無鉛錫的差異及大研智造解決方案

    在激光錫焊這一精密焊接技術(shù)領(lǐng)域,錫作為關(guān)鍵的焊料,其特性直接關(guān)乎焊接質(zhì)量與產(chǎn)品性能。在實(shí)際應(yīng)用中,錫主要分為有鉛錫和無鉛錫,二者在成分、熔點(diǎn)、環(huán)保性能、機(jī)械性能以及成本等方面存
    的頭像 發(fā)表于 03-27 10:19 ?2310次閱讀