UDK "Ошибка, неопознанный член 'FocalPoint' в классе ..." - PullRequest
0 голосов
/ 05 апреля 2010

Я портирую игру UT3 на UDK .

Используется большая библиотека кода, и я получаю эту ошибку компилятора:

C: \ UDK \ UDK-2010-03 \ Development \ Src \ FixIt \ Classes \ ZController_FireWeapon.uc (129): ошибка, нераспознанный член 'FocalPoint' в классе 'ZController'

ZController расширяет UTBot. Это ссылка на строку:

Agent.FocalPoint = ObjectOfAttention.Location;

(Агент типа ZController)

Что случилось с FocalPoint?

1 Ответ

0 голосов
/ 05 апреля 2010

Я нашел это!Линия над моей строкой FocalPoint включала настройку Agent.Focus;поэтому я проследил линию UTBot -> UDKBot -> AIController -> Controller и, наконец, класс Controller имеет член Focus:

var BasedPosition FocalPosition; // position controlled pawn is looking at
var Actor         Focus;         // actor being looked at

Итак, FocalPoint был переименован в FocalPosition.

Это еще не конец!Очевидно, что FocalPoint раньше был вектором, а теперь FocalPosition - это BasedPosition.Так что мой код все еще не работал, потому что он пытался назначить вектор для BasedPosition;компилятор пожаловался на Error, Type mismatch in '='.BasedPosition - это структура в Actor, в которой есть член вектора Position, поэтому я предполагаю, что это правильная переменная для назначения.

Я изменил строку кода с

Agent.FocalPoint = ObjectOfAttention.Location;

на

Agent.FocalPosition.Position = ObjectOfAttention.Location;

Я не проверял его (все еще работаю с другими ошибками компилятора), но теперь он прекрасно компилируется.Надеюсь, это правильное решение.

...