Делаем свой мутатор
Итак, откройте браузер акторов в АнриалЭдиторе (думаю, умеете это делать). Загрузите ваш пак с пушками, затем лезьте в Actor->Info->Mutator. ПКМ на Mutator и выбираем New. В Package поставьте свой пак, а в Name - имя своего мутатора. Жмём ОК.
Код:
Class ИмяМутатора extends Mutator; 
 function bool AlwaysKeep(Actor Other) 
 { 
 if (Other.IsA('ИмяВашейПушки')) 
 return true; 
 else 
 return false; 
 if (NextMutator !=None){ NextMutator.AlwaysKeep(Other)}; 
 } 
  /* 
 if Other.IsA('ИмяВашейПушки') 
 return true; 
 Пишите это столько раз, сколько нужно, вставляя имена пушек, которые добавляете 
 */  
 function bool CheckRelpacement(Actor Other, out byte bSuperRelevant) 
 { 
 If (Other.IsA('ИмяРодительскойПушки') && !Other.IsA('ИмяВашейПушки')) 
 { 
 ReplaceWith(Other,"ИмяПака.ИмяВашейПушки"); 
 return false; 
 } 
 bSuperRelevant=0; 
 return true; 
  /* 
 If (Other.IsA('ИмяРодительскойПушки') && !Other.IsA('ИмяВашейПушки')) 
 { 
 ReplaceWith(Other,"ИмяПака.ИмяВашейПушки"); 
 return false; 
 } 
 Пишите это столько раз, сколько нужно, вставляя имена пушек, которые добавляете 
 */  
 }  Вот пример из моего пака:
 If (Other.IsA('ShockRifle') && !Other.IsA('NeoBeamRifle')) 
 { 
 ReplaceWith(Other,"Agonix.NeoBeamRifle"); 
 return true; 
 } Устройство int файла:
(Начало файла)
[Public] 
 Object=(Name=Пак.ИмяМутатора,Class=Class,MetaClass=Engine.Mutator,Description="Название мутатора, Описание мутатора")  (Конец файла)
Инт файл создаётся в любом текстовом редакторе, все файлы .u и .int идут в папку system, с остальными, я думаю, вы разберётесь.
Удачи!
Информация
Автор: Shadow97
Добавил: Shadow97 (Другие статьи пользователя)
Дата добавления: 17 Марта 12, 23:12
Категории: Unreal Tournament 99 - Моддинг
Теги:
Статистика
, 6
Нужно сделать ВепонПак на основе стандартного,
но изменить некоторые характеристики и припаять собственные
меши и анимацию (они уже готовы и импортированы)
Объясните или дайте ссыль на туториал пожалуйста.
но оно происходит от шоки. функция заменяет не только сам объект, но и всё, что от него происходит
Quote
If (Other.IsA('ShockRifle') && !Other.IsA('NeoBeamRifle'))
В первом движке АнриалСкрипт Эдитор выдаст ошибку. Ты, если не ошибаюсь, в 2004ый ут валишься? Я, кстати, пробовал делать, как ты пишешь, нихрена, кричит "ошибка"
оно же заменяется и уже не является шок рифлой
к тому же, тут нет цикла и функция по идее один раз вызывается
тем более так не пишут же
так ведь надо
а
Хз, зачем написал
UnShame, ну пусть это тоже тут будет, надо лишь оптимизировать статью, всё-таки с каких-то примитивов какраз и надо начинать
я вот всё время забываю такой примитив, как "Как выделить несколько объектов в UED (в 2D-профиле)?"
Если не ошибаюсь, то все 3 клавиши, те Ctrl+Alt+Shift+LMB(ЛКМ).