#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
char a[50][50]={" ### ",
" #*# ",
" # # ",
"####O######",
"#* OS O *#",
"##### #####",
" #O# ",
" # # ",
" #*# ",
" ### ",
};
int i,j,x,y,n=0;
char ch;
for(i=0;i<=9;i++)
puts(a[i]);
for(i=0;i<=9;i++)
for(j=0;j<=10;j++)
{
if(a[i][j]=='O')
n++;
if(a[i][j]=='S')
{
x=i;
y=j;
}
}
while(n!=0)
{
ch=getch();
if(ch=='s')
{
if(a[x+1][y]==' ')
{
a[x][y]=' ';
x++;
a[x][y]='S';
}
else if(a[x+1][y]=='O')
{
if(a[x+2][y]==' ')
{
a[x][y]=' ';
x++;
a[x][y]='S';
a[x+1][y]='O';
}
else if(a[x+2][y]=='*')
{
a[x][y]=' ';
x++;
a[x][y]='S';
a[x+1][y]='@';
n--;
}
}
}
if(ch=='w')
{
if(a[x-1][y]==' ')
{
a[x][y]=' ';
x--;
a[x][y]='S';
}
else if(a[x-1][y]=='O')
{
if(a[x-2][y]==' ')
{
a[x][y]=' ';
x--;
a[x][y]='S';
a[x-1][y]='O';
}
else if(a[x-2][y]=='*')
{
a[x][y]=' ';
x--;
a[x][y]='S';
a[x-1][y]='@';
n--;
}
}
}
if(ch=='d')
{
if(a[x][y+1]==' ')
{
a[x][y]=' ';
y++;
a[x][y]='S';
}
else if(a[x][y+1]=='O')
{
if(a[x][y+2]==' ')
{
a[x][y]=' ';
y++;
a[x][y]='S';
a[x][y+1]='O';
}
else if(a[x][y+2]=='*')
{
a[x][y]=' ';
y++;
a[x][y]='S';
a[x][y+1]='@';
n--;
}
}
}
if(ch=='a')
{
if(a[x][y-1]==' ')
{
a[x][y]=' ';
y--;
a[x][y]='S';
}
else if(a[x][y-1]=='O')
{
if(a[x][y-2]==' ')
{
a[x][y]=' ';
y--;
a[x][y]='S';
a[x][y-1]='O';
}
else if(a[x][y-2]=='*')
{
a[x][y]=' ';
y--;
a[x][y]='S';
a[x][y-1]='@';
n--;
}
}
}
system("cls");
for(i=0;i<=9;i++)
puts(a[i]);
}
system("cls");
puts("YOU WIN!");
system("pause");
return 0;
}