Итак, пытаясь узнать больше о разработке мобильных игр, я закодировал простую игру змеи, используя C#/Unity. У меня возникли проблемы с тем, чтобы движение было правильно работать на мобильном (Android) устройстве, и на данный момент это код, который работает при игре через Unity с помощью клавиатуры. Как бы я мог преобразовать этот код для работы аналогичным образом, но на мобильном устройстве с вводом, которые являются ударами или нажатиями на экране телефона у пользователя? < /P>
void Movement()
{
GameObject temp;
nexPos = head.transform.position;
switch (NESW)
{
case 0:
nexPos = new Vector2(nexPos.x, nexPos.y + 1);
break;
case 1:
nexPos = new Vector2(nexPos.x + 1, nexPos.y);
break;
case 2:
nexPos = new Vector2(nexPos.x, nexPos.y - 1);
break;
case 3:
nexPos = new Vector2(nexPos.x - 1, nexPos.y);
break;
}
temp = (GameObject)Instantiate(snakePrefab, nexPos, transform.rotation);
head.Setnext(temp.GetComponent());
head = temp.GetComponent();
return;
}
void changeDirection()
{
if (NESW != 2 && Input.GetKeyDown(KeyCode.W))
{
NESW = 0;
}
if (NESW != 3 && Input.GetKeyDown(KeyCode.D))
{
NESW = 1;
}
if (NESW != 0 && Input.GetKeyDown(KeyCode.S))
{
NESW = 2;
}
if (NESW != 4 && Input.GetKeyDown(KeyCode.A))
{
NESW = 3;
}
}
Подробнее здесь: https://stackoverflow.com/questions/398 ... e-movement