... 는 훼이크고 5x5 배열에서 움직이는걸 한번 해봤습니다.
뭐, 나중에 맵에서 캐릭터가 뛰어다니는 것의 기본(?)이 되리라 저는 믿습니다....
아, 제가 뭘 잘못 건드려서 한글이 안써져여 ㅠ.ㅠ 그래서 영어로썼습니다.. ㄷㄷ
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int board[5][5];
int character[2] = {2,2};
char input;
for (int i = 0 ; i < 5 ; i++)
{
for (int j = 0 ; j < 5 ; j++)
{
board[i][j] = 0;
}
}
board[character[0]][character[1]] = 1;
for (int i = 0 ; i < 5 ; i++)
{
for (int j = 0 ; j < 5 ; j++)
{
printf("%d",board[i][j]);
}
printf("\n");
}
int count =0;
printf("Move '1' to other place\n");
printf("Use 'WASD' key to move");
while(true)
{
scanf("%c",&input);
switch(input)
{
case 68:
if(character[1]+1 >4)
{
printf("You can't go there\n");
continue;
}
else
{
board[character[0]][character[1]] = 0;
board[character[0]][character[1]+1] = 1;
character[1] += 1;
}
break;
case 100:
if(character[1]+1 >4)
{
printf("You can't go there\n");
continue;
}
else
{
board[character[0]][character[1]] = 0;
board[character[0]][character[1]+1] = 1;
character[1] += 1;
}
break;
case 83:
if(character[0]+1 >4)
{
printf("You can't go there\n");
continue;
}
else
{
board[character[0]][character[1]] = 0;
board[character[0]+1][character[1]] = 1;
character[0] += 1;
}
break;
case 115:
if(character[0]+1 >4)
{
printf("You can't go there\n");
continue;
}
else
{
board[character[0]][character[1]] = 0;
board[character[0]+1][character[1]] = 1;
character[0] += 1;
}
break;
case 87:
if(character[0]- 1 < 0)
{
printf("You can't go there\n");
continue;
}
else
{
board[character[0]][character[1]] = 0;
board[character[0]-1][character[1]] = 1;
character[0] -= 1;
}
break;
case 119:
if(character[0]- 1 < 0)
{
printf("You can't go there\n");
continue;
}
else
{
board[character[0]][character[1]] = 0;
board[character[0]-1][character[1]] = 1;
character[0] -= 1;
}
break;
case 65:
if(character[1]-1 < 0)
{
printf("You can't go there\n");
continue;
}
else
{
board[character[0]][character[1]] = 0;
board[character[0]][character[1]-1] = 1;
character[1] -= 1;
}
break;
case 97:
if(character[1]-1 < 0)
{
printf("You can't go there\n");
continue;
}
else
{
board[character[0]][character[1]] = 0;
board[character[0]][character[1]-1] = 1;
character[1] -= 1;
}
break;
default:
continue;
}
system("cls");
for (int i = 0 ; i < 5 ; i++)
{
for (int j = 0 ; j < 5 ; j++)
{
printf("%d",board[i][j]);
}
printf("\n");
}
count += 1;
if (count > 50)
{
break;
}
}
printf("game over");
}