Кроме того делаеш класический счетчик, тоже глобальную:
Код
var int i;
Ну а дальше почти тоже самое:
Код
state ProjectileFireMode { function Fire(Controller C) { Spawn(class'PROJ_FearFG',,,GetBoneCoords(Barrel[i]).Origin, GetBoneRotation(Barrel[i])); PlayOwnedSound(FireSoundClass, SLOT_None, 0.35,, 300,, False); if (i < 11) i = i + 1; else i = 0; } }
Задежка же устанавливаетса просто как у танков например, частота выстрелов. Получитса стрель по порядку из каждой трубы, по кругу. Можно внести спавн внутрь проверки i < 11 а обнуление убрать, тогда получитса стрелять только 12 ракет. Обнуление (перезарядку) же можно сделать возле своего енергоузла например, или с задержкой. ЗЫ: Если ты в функцыи/класе вехикла ничего с ракетой после запуска не делаеш, то не обязательно ее чему-то присваивать, просто спавнить можна.
Да, все работает отлично, как положенно. Спасибо Бэк оф эффекты выстрела я тоже уже сделал, осталось все отшлифовать и все. Покажу что получилось в следующем ролике)
Добавлено (30 Июня 15, 01:11) --------------------------------------------- В общем я тут много над чем шаманил и в этоге пришел к одной тоже интересной вещи. Я так и не допедрил как делать пыль из под колес. Сколько сидел сидел все там как то замудренно, та и старовато по коду уже, менять конечно же нужно. Тут конечно опять спрошу GP, но в этот раз немного не обычным способом.
В общем тут(16кб) код одного танка, у него сделано с этим все на 10баллов, но он ONSHoverTank и адаптировать его под ONSWheeledCraft я пока не силен. Вооооот
А пока пара самолетов с вертикальным взлетом и с превосходной детализацией вооружаются для боев
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
зачем эпики добавили эту ерунду в код? тут бы и одной запятой хватило
ЦитатаUberSoldier ()
е.т.с.
А не мог написать "и тд."?
ЦитатаGP ()
делеи есть не хорошо.
Лучше ими не пользоваться. На разных компах будет разная скорость спавна. UberSoldier, а нельзя ли у этих самолётов сделать простую полупрозрачную кабину (стекло), да так, чтобы вид от 1 лица был из кабины?
Мой IP сменился с 89.113.234.78/185.42.146.32 на 83.167.1.167. Теперь будет этот. Надолго. Порты те же. http-сервер .do impossible beat unbeatable
Можно, такие части я делаю на последок. Прост у меня уже рук не хватает все сразу делать. Есть ли простой способ делать тень от объектов на теран? Точнее я знаю способ, проекторы, но даже так, как по быстрому можно сделать тень от объекта в текстуру? Типа вот как с кубмапой для воды(отражалкой окружения), полюбому же есть какой-то способ что бы делать тени?
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
это не ерунда, а пропущеные параметры В функцыях с многими переменными вход/выход часто есть помеченые "optional" которые задавать не обязательно (пойдут по дефолту если не указать), и вот если нужно задать папраметр который идет после них то между запятыми ничего не ставитса. Если например заспавнить актор указав только клас а остальное пропустить, то он дефолтно появитса на месте актора который его заспавнил (если это например мутатор или тип игры или еще-какой абстрактный класс, то появитса оно в 0,0,0), с его углом поворота и им-же овнером. А можно в функцыи спавна все это сразу указать, можно указать только то что нужно. Можно конечно все параметры задавть и после спавна, но есть куча граблей особенно по сети, например сервер большынство проэктилей у клиента так и спавнит - одной функцыей в нужном месте, с нужным углом и овнером/инстигатором, и больше ничего не передает.
Добавлено (30 Июня 15, 19:54) --------------------------------------------- Если короче, то вызывыя такую
Код
function X_function(int A, optional int B, out int С) { . . . . }
A, C указывать обязательно
Код
. . . X_function(X, Y, Z)
а B нет
Код
. . . X_function(X,, Z)
Кстати очень удобно.
Добавлено (30 Июня 15, 19:58) --------------------------------------------- :accusingface: :accusingface: :accusingface:
(Вопрос зрителей) Можно ли сделать что бы монстры в инвайжене вели себя как обычные боты, анимация повреждения по ним и тому подобное. А то они какие то деревянные как столбы ездиют и колозия у них как у танка, только круглая. У персонажей зависимость от попадания хоть. В общем что можно толькового сделать для инвайжена?
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
Добавлено (30 Июня 15, 23:24) ---------------------------------------------
Цитата
так там в коде делать ничего не надо, заюзать только модель (прицепить ему "твое стандартное" шасси и все).
Ага, не получается так, он кармой ездиет, а у меня колесами, в общем проще говоря я как не пытался код перестроить все не получается, кусками тоже, я так понимаю в тике нужно дописывать это все, я понимаю что нужно делать синхронизацию даста с крутящим моментом и аттачить его к колесам. Пытался кусками отпилить части кода но он все равно не хочет работать или я совсем тупой.((( Посмотрел стандартную, так там вообще бред какой-то, не к селу не к городу.
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
тоесть ты не можеш просто взять в 3д-максе отрезать стандартные гусеницы и приделать свои (под балистик-овский код если не ошыбаюс?) ? какая разница чем он ездиет, всеравно в корню меш. А в том коде что ты кидал по ходу обычный (стандартный) танк, где просто кроме текстуры гусениц контролируютса кости колес (без кармы а вручную вверх/вниз).
Не не, от баллистика мне нужно только даст, остальное все мое. Т.е. не всю технику перекинуть под другой код, а копернуть существующий к себе, в данном случае этот даст(пыль) закинуть в мою технику.
Цитата
где просто кроме текстуры гусениц контролируютса кости колес (без кармы а вручную вверх/вниз)
Вот вот, это то мне и не нужно, мне нечего там контролить у меня же считай что машины.
Добавлено (02 Июля 15, 18:01) --------------------------------------------- У меня тут еще вопрос, можно ли ботам давать приоритет на уничтожение? Вот к примеру авионалет, можно ли сделать так что бы боты пытались первым уничтожить бомбардировщика, а уж потом все остальное (ну конечно если он в их поле зрения)
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
Где-то из кода редимеровского проэктия, должно роботать, так как разбиралось на цытаты при изготовление half-mind редимера. Единственное что можно будет поменять немного условие и если таймер уже заюзан то сделать где-нибудь еще (запускать в тике раз в 0.5 секунды например).
Код
function BeginPlay() { Super.BeginPlay(); : : SetTimer(0.5, true); }
function Timer() { local Controller C;
//Enemies who don't have anything else to shoot at will try to shoot redeemer down for (C = Level.ControllerList; C != None; C = C.NextController) if ( AIController(C) != None && C.Pawn != None && C.GetTeamNum() != Team && AIController(C).Skill >= 2.0 && !C.Pawn.IsFiring() && (C.Enemy == None || !C.LineOfSightTo(C.Enemy)) && C.Pawn.CanAttack(self) ) { C.Focus = self; C.FireWeaponAt(self); } }
Собсна про это я и говорю, только они у меня перестали это делать, как будто наелись уже. Вот и хочу пробнуть в принудительность.
А, ну тут ещё от их скила зависит, чем больше скил, тем больше вероятность того что они будут палить по самолету, но код я запелил, и теперь авио даже вылететь толком не успевает как уже вниз (добавил ещё +5 к динамике)
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
не, криворукость или упоротость невнемательность, должен был UberSoldier-а зацытироватиь, а из спойлера не цытировалось...
ЦитатаXCanG ()
Ну так поместить их в конец и ставить запятые только
ну суть втом, что никто не знает какие ты параметры захочеш задавать, а какие нет. Там просто есть 5 или больше значений, которые не обязательно вписывать, вот тебе надо например поменять второй и пятый, а кому-то только первый и третий... и что ставить в конец? А тем более если все парамтры одного типа (целое число например), как функцыии дамага понять что ты имел ввиду одной только цыфрой - радус ты вводиш или силу импульса, или урон, или еще что чего в ней нет - это определяет порядок, который прописываетса запятой. Для пустых переменных которые в конце можно ничего не ставить. Ну или между запятыми можно писать
Код
none
если для цыфр написать не none а ноль, то 0 перекроет стандартное значение, которое может быть и не 0. А вот если будет none, то ничего не поменяетса.
Добавлено (02 Июля 15, 21:57) --------------------------------------------- Признаюсь, когда только разбиралса в скрипте меня эти запятые тоже бесили. Но потом я поставил UDE и все стало на свои места.
Добавлено (02 Июля 15, 22:02) --------------------------------------------- Эти "optional" мне слабо напоминает перегруженые методы, если кто в курсе что это. Конечто это совсем не то, но в том-же направлении оптимизацыи юзабельности.
спокойно, нет, написал же что цытировал вручную, к твоему тексту из кнопки спойлера приписал в авторы Ксанга. Ну а на счет тех горошков я так и не понял что это.
Про UDE изволю напомнить главные требования: 1 - Надо сделать "Export all scripts" в едиторе. Иначе в UDE будет пусто. Пусто потому что исходников небудет. UDE нужны исходники. Чтоб роботать с кастомными кодами (моды и прочий контент) имхо их лучше експортировать потом и только то, что надо. 2 - Устанавливать надо так, чтоб папка UDE была в основной папке игры (рядом с Animations, System, Textures, и т.д.), при этом надо скопировать содержымое папки UDE в папку System, не переместить а именно чтоб и там и там, у меня без этого не компилировалось. Запускать UDE надо exe-шкой из папки UDE а не System (хотя потом и так зароботало). 3 - Если у кого подозреваютса проблемы с путями, поможет reg-fix (или reg-check ?), был в важных файлах. В любом случае на левом компе где стоял скопипастченый УТ и совсем в другом месте, при копипасте файлов UDE после фикса реестра все зароботало. 2 раза.