Advertisement
Guest User

Untitled

a guest
Jun 25th, 2019
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.08 KB | None | 0 0
  1. // ConsoleApplication62.cpp : コンソール アプリケーションのエントリ ポイントを定義します。
  2. //for たくみん
  3.  
  4. #include "stdafx.h"
  5. #include "windows.h"
  6. int canvas[21][12] = {}, field[21][12] = {}, block[4][4] = { { 0,0,0,0 },{ 0,1,1,0 },{ 0,1,1,0 } ,{ 0,0,0,0 } }, x = 4, y = 0;
  7. void MoveBlock(int x2, int y2);
  8. void Initialize();
  9. void ShowGameField();
  10. void AddCanvas();
  11. int CheckOverlap(int x2, int y2);
  12. int main()
  13. {
  14. int i, j;
  15. Initialize();
  16. ShowGameField();
  17. for (i = 0; i <18; i++) {
  18. system("cls");
  19. MoveBlock(4, i);
  20. ShowGameField();
  21. AddCanvas();
  22.  
  23. Sleep(1000);
  24. }
  25.  
  26.  
  27. return 0;
  28. }
  29.  
  30. void MoveBlock(int x2, int y2) { //ブロック移動用関数^^
  31. int i, j;
  32. for (i = 0; i < 4; i++) {
  33. for (j = 0; j<4; j++) {
  34. field[y + i][x + j] -= block[i][j];
  35. }
  36. }
  37. x = x2;
  38. y = y2;
  39. for (i = 0; i < 4; i++) {
  40. for (j = 0; j<4; j++) {
  41. field[y + i][x + j] += block[i][j];
  42. }
  43. }
  44. }
  45. void Initialize() { //初期化用関数^^
  46. int i, j;
  47. for (i = 0; i < 21; i++) {
  48. for (j = 0; j < 12; j++) {
  49. if (j == 0 && i != 20 || j == 11 && i != 20 || i == 20) {
  50. canvas[i][j] += 9;
  51. field[i][j] = canvas[i][j];
  52. }
  53. }
  54. }
  55. for (i = 0; i < 4; i++) {
  56. for (j = 0; j<4; j++) {
  57. field[i][j + 4] += canvas[i][j + 4] + block[i][j];
  58. }
  59. }
  60.  
  61.  
  62.  
  63. }
  64.  
  65. void ShowGameField() { //画面表示用関数^^
  66. int i, j;
  67. for (i = 0; i < 21; i++) {
  68. for (j = 0; j < 12; j++) {
  69. if (field[i][j] == 0) {
  70. printf(" ");
  71. }
  72. else if (field[i][j] == 9) {
  73. printf("■");
  74. }
  75. else if (field[i][j] == 1) {
  76. printf("□");
  77. }
  78. else {
  79. printf("%d", field[i][j]);
  80.  
  81. }
  82.  
  83. }
  84. printf("\n");
  85. }
  86. }
  87. int CheckOverlap(int x2, int y2) {
  88. int i, j;
  89. for (i = 0; i < 4; i++) {
  90. for (j = 0; j < 4; j++) {
  91. if (block[i][j]) {
  92. if (canvas[y2 + i][x2 + j] != 0) {
  93. return 1;
  94. }
  95. }
  96. }
  97. }
  98. return 0;
  99. }
  100. void AddCanvas() {
  101. int i, j;
  102. for (i = 0; i < 21; i++) {
  103. for (j = 0; j < 12; j++) {
  104. canvas[i][j] = field[i][j];
  105.  
  106. }
  107. }
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement