介绍
这篇文章主要介绍c++实现推箱子游戏的案例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
c++实现简单推箱子的具体代码具体内容如下
游戏演示
代码展示
# include# include # include int主要(int命令行参数个数,const char * argv []) { int削减=0; int [8] [8]={ {0,0,3,3,3,3,0,0}, {0,0,3、5、5、3 0,0}, {0,0 3 0、5、3 0,0}, {0 3 0,0,4、5、3 0}, {3 3 0 4 0 0、3、3}, {3 0 0,3、4、4 0,3}, {3 0 0 2 0,0,0,3}, {3,3,3,3,3,3,3,3}}; int x=6, y=3; (,) { int女人=0; 系统(“clear"); for (int i=0; i<8;我+ +) { (int j=0; j<8; j + +) { 如果([我][j]==9) { 女人+ +; } 开关([我][j]) { 例0:printf (““);断裂; 案例2:printf(“@”);断裂;//人 案例3:printf(“#”);断裂;//墙 案例4:printf(““美元);断裂;//箱子 案例5:printf (“o”);断裂;//目标位置 案例7:printf(“@”);断裂; 案例9:printf(““美元);断裂; } } printf (“\ n"); } 如果(4==女人) { printf(“成功\ n步数:% d",减少); 返回0; }//根据数据的大小来判断当前的坐标上的情况 开关(getch ()) { 183年情况: 如果(0 !=x&, 3==[x - 1] [y]) { [x] [y]=2; } else if (5==[x - 1] [y] | | 0==[x - 1] [y]) { [x] [y] -=2; 一个[x - 1] [y] +=2; x -; 削减+ +; } else if ((5==[x - 2] [y] | | 0==[x - 2] [y]),及(4==[x - 1] [y] | | 9==[x - 1] [y])) { 一个[x - 2] [y] +=4; [x - 1] [y] -=4; 一个[x - 1] [y] +=2; [x] [y] -=2; x——;削减+ +; }打破; 184年情况: 如果(0 !=x&, 3==[x + 1] [y]) { [x] [y]=2; } else if ((5==[x + 1] [y]) | | (0==[x + 1] [y])) { [x] [y] -=2; [x + 1] [y] +=2; x + +;削减+ +; } else if ((5==[x + 2] [y] | | 0==[x + 2] [y]),及(4==[x + 1] [y] | | 9==[x + 1] [y])) { [x + 2] [y] +=4; [x + 1] [y] -=4; [x + 1] [y] +=2; [x] [y] -=2; x + +;削减+ +; }打破; 185年情况: 如果(0 !=x&, 3==[x] [y + 1]) { [x] [y]=2; } else if (5==[x] [y + 1] | | 0==[x] [y + 1]) { [x] [y] -=2; [x] [y + 1] +=2; y + +;削减+ +; } else if ((0==[x] [y + 2] | | 5==[x] [y + 2]),及(4==[x] [y + 1] | | 9==[x] [y + 1])) { 一个[x] [y + 2) +=4; [x] [y + 1] -=4; [x] [y + 1] +=2; [x] [y] -=2; y + +;削减+ +; }打破; 186年情况: 如果(0 !=x&, 3==[x] [y-1]) { [x] [y]=2; } else if (5==[x] [y-1] | | 0==[x] [y-1]) { [x] [y] -=2; 一个[x] [y-1] +=2; y -;削减+ +; } else if ((0==[x] [y 2] | | 5==[x - 1] [y]),及(4==[x] [y-1] | | 9==[x] [y-1])) { 一个[x] [y 2] +=4; [x] [y-1] -=4; 一个[x] [y-1] +=2; [x] [y] -=2; y -;削减+ +; }打破; } } }
以上是c++实现推箱子游戏的案例的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!