为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

游戏设计--骑士游戏设计

2018-01-13 9页 doc 22KB 13阅读

用户头像

is_314871

暂无简介

举报
游戏设计--骑士游戏设计游戏设计--骑士游戏设计 /******************************qishi *****************************/#include #include struct memory {int sence[8][8] ; int board[8][8] ; int mem[8] ; int last ; } mem[64] ; int h[8]={2,1,-1,-2,-2,-1,1,2} ; int v[8]={-1,-2,-2,-1,1,2,2,1} ; int...
游戏设计--骑士游戏设计
游戏--骑士游戏设计 /******************************qishi *****************************/#include #include struct memory {int sence[8][8] ; int board[8][8] ; int mem[8] ; int last ; } mem[64] ; int h[8]={2,1,-1,-2,-2,-1,1,2} ; int v[8]={-1,-2,-2,-1,1,2,2,1} ; int board[8][8]={0} ; int sence[8][8]={{2,3,4,4,4,4,3,2}, {3,4,6,6,6,6,4,3}, {4,6,8,8,8,8,6,4}, {4,6,8,8,8,8,6,4}, {4,6,8,8,8,8,6,4}, {4,6,8,8,8,8,6,4}, {3,4,6,6,6,6,4,3}, {2,3,4,4,4,4,3,2}} ; int row, col,hty=0 ; int comeon(void) ; void goback(void) ; int findmin(int[]) ; void savemem(int) ; void altsence(void) ; void print() ; void printmem(int) ; /* PREPARE */ void prepare(void) {int i, j, ha[8],va[8] ; for(i=0; i<64; i++) { mem[i].last=-1 ; for(j=0; j<8; j++) mem[i].mem[j]=0 ; } printf("Input Begin Point :\n") ; scanf("%d%d",row,col) ; board[row][col]=1 ; for(i=0; i<8; i++) {ha[i]=row + h[i] ; va[i]=col + v[i] ; if( ha[i]>=0 && ha[i]<=7 && va[i]>=0 && va[i]<=7 ) sence[ha[i>[va[i>-- ; } savemem(0) ; /*print(hty) ; */ hty++ ; } /* COMEON!! */ int comeon(void) {int i, ha[8], va[8], b[8]={9,9,9,9,9,9,9,9}, info=0 ; for(i=0; i<8; i++) { ha[i]=row+h[i] ; va[i]=col+v[i] ; if( ha[i]>=0 && ha[i]<=7 && va[i]>=0 && va[i]<=7 ) if( board[ha[i>[va[i>==0 && mem[hty].mem[i]!=1 ) b[i]=sence[ha[i>[va[i> ; } i=findmin(b) ; if( b[i]!=9 ) ; {row=ha[i] ; col=va[i] ; board[ha[i>[va[i>=1 ; altsence() ; savemem(i) ; /*printmem(hty) ; */ hty++ ; info=1 ; } return (info) ; } /* GOBACK~~ */ void goback(void) {int i,j ; hty--; board[row][col]=0 ; row = row - h[mem[hty].last] ; col = col - v[mem[hty].last] ; mem[hty].mem[mem[hty+1].last] = 1 ; for(i=0; i<8; i++) for(j=0; j<8; j++) sence[i][j]=mem[hty].sence[i][j] ; } /* PRINT */ void print(void) {int i; for(i=0; i<64; i++) {clrscr(); printmem(i) ; getchar() ; } } /* PRINTMEM */ void printmem(int ht) {int i, j; printf("No.%d Step;\n",ht) ; for(i=0; i<8; i++) {for(j=0; j<8; j++) if( mem[ht].board[i][j]==0) printf("O ") ; else printf("H ") ; printf("\n") ; } } /* ALTSENCE */ void altsence(void) {int i, ha[8], va[8] ; for(i=0; i<8; i++) {ha[i]=row + h[i] ; va[i]=col + v[i] ; if( ha[i]>=0 && ha[i]<=7 && va[i]>=0 && va[i]<=7 ) sence[ha[i>[va[i>-- ; } } /* SAVEMEM */ void savemem(int lt) {int i,j ; mem[hty].last=lt ; for(i=0; i<8; i++) for(j=0; j<8; j++) {mem[hty].sence[i][j] = sence[i][j] ; mem[hty].board[i][j] = board[i][j] ; } } /* FINDMIN */ int findmin(int c[8]) {int i,j=0 ; for(i=0; i<8; i++) if( c[i] < c[j] ) j=i ; return (j) ; } /* MAIN */ main() {int i; prepare() ; i=comeon(); while( hty<64 ) { if(i) i=comeon() ; else {goback() ; i=1; } } print(); } /*************************** 8 queen *********************************/#include int col[8] , temp=0 ; void qu(int n) { int pan(int) ; void pri(void) ; int t; if(n==0) t=4 ; else t=8 ; for(col[n]=0; col[n]
/
本文档为【游戏设计--骑士游戏设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索