그래, 타일 기반의 작은 파고 게임을 만들고 있는데, 이제 충돌을 원해. 이 작업을 올바르게 수행하는 방법은 무엇입니까? 플레이어가 타일과 충돌하는지 확인하는 방법을 알고 있지만 실제로 플레이어가 벽에 부딪 힐 때 실제로 플레이어를 멈추게하는 방법을 모르겠습니다. 타일 엔진 충돌
이
나는 여기에 20 × 20 타일을 가지고 게임이다. foreach (Tile tiles in allTiles)
{
if (ply.rect.Intersects(tiles.rect))
{
if (tiles.ID != -1 && tiles.ID != 1)
{
if (ply.X > tiles.X)
{
Console.WriteLine("Right part.");
ply.X = tiles.pos.X + 30;
}
if (ply.X <= tiles.X)
{
Console.WriteLine("Left part.");
ply.X = tiles.pos.X - 30;
}
if (ply.Y > tiles.Y)
{
Console.WriteLine("Bottom part.");
ply.Y = tiles.pos.Y + 30;
}
if (ply.Y <= tiles.Y)
{
Console.WriteLine("Upper part.");
ply.Y = tiles.pos.Y - 30;
}
}
}
}
['Terraria'] (http://terraria.org/)를 만드시겠습니까? – Marty
@ Marty Wallace : 글쎄, 나는 복제품을 만들고있다. – Stan
아, 굉장 해요^_^ – Marty