c編寫小游戲過程游戲是一門藝術,而不僅僅是一個技術 。
首先,要有一套算法,也就是游戲的規(guī)則 。以搬箱子為例,只能向前推,不能向后拉,只能推動一個箱子,一個點只能放一個箱子,所有箱子推到點上算贏 。這就是一個規(guī)則 。
然后,就是控制代碼 。我用什么來控制 。我相應鍵盤的上下左右4個鍵,還是aswd,按上是什么功能,按下又如何 。
在然后,就是顯示 。用戶看不到東西自然沒法玩 。我用什么來顯示?最簡單的,我用TC做,用**來拼出地圖的輪廓,用紅色的o代表點,用黃色的方塊代表箱子,用綠三角代表小人,地圖用2位數(shù)組來表示,按下w,綠三角的坐標就向上一格,等等,就是把游戲進行的狀態(tài)反映出來 。
如果水平夠高,我用OPenGL或者更高級的技術來顯示,在特定情況下播放什么聲音,這樣,同樣一個搬箱子,就會比TC的更好玩 。
總之,游戲不單單是簡單的編程,涉及到很多其他的東西比如音樂的搭配美工的帖圖3D的模型還有一個好的故事背景等等等等 。靠團隊的力量才能設計出好的游戲,不然只能叫做程序 。
本回答由提問者推薦

用C語言編寫小游戲用c語言編寫一個五子棋吧,不怎么難,給你程序,自己參考一下
/*3.3.4源程序*/
#include”graphics.h”/*圖形系統(tǒng)頭文件*/
#defineLEFT0x4b00/*光標左鍵值*/
#defineRIGHT0x4d00/*光標右鍵值*/
#defineDOWN0x5000/*光標下鍵值*/
#defineUP0x4800/*光標上鍵值*/
#defineESC0x011b/*ESC鍵值*/
#defineENTER0x1c0d/*回車鍵值*/
inta[8][8]={0},key,score1,score2;/*具體分數(shù)以及按鍵與存放棋子的變量*/
charplayone[3],playtwo[3];/*兩個人的得分轉換成字符串輸出*/
voidplaytoplay(void);/*人人對戰(zhàn)函數(shù)*/
voidDrawQp(void);/*畫棋盤函數(shù)*/
voidSetPlayColor(intx);/*設置棋子第一次的顏色*/
voidMoveColor(intx,inty);/*恢復原來棋盤狀態(tài)*/
intQpChange(intx,inty,intz);/*判斷棋盤的變化*/
voidDoScore(void);/*處理分數(shù)*/
voidPrintScore(intn);/*輸出成績*/
voidplayWin(void);/*輸出勝利者信息*/
/******主函數(shù)*********/
voidmain(void)
intgd=DETECT,gr;
initgraph(&gd,&gr,”c:\\tc”);/*初始化圖形系統(tǒng)*/
DrawQp();/*畫棋盤*/
playtoplay();/*人人對戰(zhàn)*/
getch();
closegraph();/*關閉圖形系統(tǒng)*/
voidDrawQp()/*畫棋盤*/
inti,j;
score1=score2=0;/*棋手一開始得分都為0*/
setbkcolor(BLUE);
for(i=100;i<=420;i+=40)
line(100,i,420,i);/*畫水平線*/
line(i,100,i,420);/*畫垂直線*/
setcolor(0);/*取消圓周圍的一圈東西*/
setfillstyle(SOLID_FILL,15);/*白色實體填充模式*/
fillellipse(500,200,15,15);/*在顯示得分的位置畫棋*/
setfillstyle(SOLID_FILL,8);/*黑色實體填充模式*/
fillellipse(500,300,15,15);
a[3][3]=a[4][4]=1;/*初始兩個黑棋*/
a[3][4]=a[4][3]=2;/*初始兩個白棋*/
setfillstyle(SOLID_FILL,WHITE);
fillellipse(120+3*40,120+3*40,15,15);
fillellipse(120+4*40,120+4*40,15,15);
setfillstyle(SOLID_FILL,8);
fillellipse(120+3*40,120+4*40,15,15);
fillellipse(120+4*40,120+3*40,15,15);
score1=score2=2;/*有棋后改變分數(shù)*/
DoScore();/*輸出開始分數(shù)*/
voidplaytoplay()/*人人對戰(zhàn)*/
intx,y,t=1,i,j,cc=0;
while(1)/*換棋手走棋*/
x=120,y=80;/*每次棋子一開始出來的坐標,x為行坐標,y為列坐標*/
while(1)/*具體一個棋手走棋的過程*/
PrintScore(1);/*輸出棋手1的成績*/
PrintScore(2);/*輸出棋手2的成績*/
SetPlayColor(t);/*t變量是用來判斷棋手所執(zhí)棋子的顏色*/
相關經(jīng)驗推薦
- 女性容易禍從口出,想要健康就要忌口
- 空心病,你有嗎?
- |還哪是手機,就是一部能打電話的游戲機罷了!
- 編程入門自學軟件 電腦編程入門
- 漂亮女生游戲昵稱_K→p_潞扣,那抹、紅色憂傷屺
- LG|vivo X Fold性能體驗:商務旗艦也能兼顧游戲體驗
- 一歲前小寶寶的心理活動
- tt語音游戲中心不見了
- 每天睡前運動10分鐘,從此跟“小肚腩”說掰掰!
- 寶寶從小自信的28種方法
