Проблема с векторными массивами.

Раздел, посвящённый всему, что связано с программированием для Редактора Юнити. Скрипты Редактора, Wizards и прочее.

Проблема с векторными массивами.

Сообщение Nevayshka 06 окт 2020, 16:19

Здравствуйте! Недавно столкнулся с такой проблемой: Мой персонаж перемещается по координатной сетке, если координата следующего шага равна координате из массива, то перемещение персонажа не должно происходить. Однако это работает только с первой координатой из массива, остальные не учитываются и персонаж вступает в стену.
Помогите пожалуйста разобраться в чем дело.
Синтаксис:
Используется csharp
if (NextPlayerPos != PlayerPos) {
    //for (int i = 0;i != WallsVec.Length;i++)
    foreach (Vector3 WallVec in WallsVec)
    {
        //if (NextPlayerPos != WallsVec[i])
            if (NextPlayerPos != WallVec)
            {
            PlayerPos = NextPlayerPos;
        }
            else {
            NextPlayerPos = PlayerPos;
            break;
        }
    }
}
Nevayshka
UNец
 
Сообщения: 2
Зарегистрирован: 06 окт 2020, 16:08

Re: Проблема с векторными массивами.

Сообщение samana 06 окт 2020, 19:55

Синтаксис:
Используется csharp
bool canMove=true;

foreach (Vector3 WallVec in WallsVec)
{
  if (NextPlayerPos == WallVec)
  {
    canMove=false;
    break;
  }
}

if(canMove)
{
  // можно двигаться на NextPlayerPos
}
Аватара пользователя
samana
Адепт
 
Сообщения: 4738
Зарегистрирован: 21 фев 2015, 13:00
Откуда: Днепропетровск

Re: Проблема с векторными массивами.

Сообщение Nevayshka 06 окт 2020, 20:03

Огромное спасибо!
Nevayshka
UNец
 
Сообщения: 2
Зарегистрирован: 06 окт 2020, 16:08


Вернуться в Editor

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3