Отже, якщо коротко, я намагаюся телепортувати пішака, коли його вдарив снаряд (або пошкоджений будь-якою зброєю в моїй грі.)
Зараз я намагаюся просто зателефонувати Pawn.SetLocation у процесорі ProcessTouch снаряда. Це проблема, тому що ProcessTouch вдарить будь-якого актора, а не лише пішака. Крім того, будь-які спроби перевірити "Actor Other" ProcessTouch призводять до помилок.
Я спробував купу рішень (включаючи створення події TakeDamage в класі контролера Пішака), але безрезультатно.
simulated function ProcessTouch(Actor Other, Vector HitLocation, Vector HitNormal)
{
if (Other != Instigator)
{
//This is where the Other.TakeDamage goes if we are using a traditional gun.
if (Other == Pawn);
{
Other.SetLocation(0,0,0);
}
}
Destroy;
}
Цей код скаржиться, що пішак поганий вираз. Як ще я повинен перевірити тип актора?