Я играю в многопользовательскую игру со стрельбой со стрелками на устройстве Android, в которой вы стреляете в зависимости от линии, которую вы рисуете.Но мне нужно 2 строки на одном экране, и я не знаю, как правильно это реализовать.ПРОБЛЕМА заключается в том, что массив Touches является статическим и общим для двух экземпляров, поэтому изменяется массив Index и изменяется значение касания, которым я хочу управлять.
Я попытался сделать 1 скрипт для 2 GameObject сРендерер в 1 строку
for (int i = 0; i < Input.touchCount; i++)
{
if (Input.GetTouch(i).phase == TouchPhase.Began)
{
if (touchIndex == -1)
touchIndex = Input.GetTouch(i).fingerId;
startPointLine = Camera.main.ScreenToWorldPoint(Input.GetTouch(touchIndex).position);
}
//this if for the RIGHT half screen management
if (Input.GetTouch(i).phase == TouchPhase.Moved && (TouchHalfRightScreen && IsRightDraggingZone))
{
endPointLine = Camera.main.ScreenToWorldPoint(Input.GetTouch(touchIndex).position);
Dragging();
}
//this if for the LEFT half screen management
if (Input.GetTouch(i).phase == TouchPhase.Moved && (!TouchHalfRightScreen && !IsRightDraggingZone))
{
if (Input.touchCount == 1 && touchIndex == 1)
touchIndex--;
endPointLine = Camera.main.ScreenToWorldPoint(Input.GetTouch(touchIndex).position);
Dragging();
}
if (Input.GetTouch(i).phase == TouchPhase.Ended)
{
//reset touchIndex
touchIndex = -1;
ClearLine();
}
}
Я ожидаю, что касанием, которое я сохраняю в indexTouch, является то, что я управляю, но в игре я делаю линию перетаскивания в одной из двух сторон экрана, затем я добавляю линию драглайна вс другой стороны и что происходит?Первая линия, которую я нарисовал, замораживается, но последняя движется.
Для пояснения, это линия перетаскивания, которую я хочу нарисовать одновременно.https://img2.androidappsapk.co/poster/9/d/7/com.stickmanarcher.stickmanfightinggames.archerygames.stickman_5.png