Помощь со скриптом
|
|
Сазан |
Дата: Суббота, 2012-07-21, 23:41 | Сообщение # 1 |
Группа: Друзья
| Наверное, я уже достал Но опять возникла проблемка: Суть вчем: игрок заходит в АПЛ (квест), жмет на консоль. Там выскакиевает мессадж, (да-нет), жмем да, игрока телепортит наружу. Дисаблятся действия игрока. А адльше из АПЛ должна вылетать атомная ракета. Скрипт на атомной бомбе:
Code scn HHAtomBombMoveScript
float Timer short Step float StartPosition float ZPosVar float ZPos
Begin GameMode if (Step == 0) set StartPosition to (GetPos Z) set Step to 1 elseif (Step == 1) if ( HHAtomBombZWayRef.GetDisabled == 1 ) set ZPosVar to (GetPos Y) set ZPos to (ZPosVar +4) SetPos Z ZPos set Timer to (Timer + GetSecondsPassed) if (Timer >= 14) SetPos Z StartPosition set Timer to 0 endif endif endif End
Скрипт на активаторе-консоли:
Code SCN HHAtomBombConsoleScript
Short State Float Timer short button
Begin OnActivate if (State == 0) Set State to 1 Activate endif End
Begin GameMode if ( State == 1 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 0.5 ) DisablePlayerControls HHAtomBombZWayRef.Disable Set Timer to 0 Set State to 2 endif endif
if ( State == 2 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 1 ) Set Timer to 0 Set State to 3 endif endif
if ( State == 3 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 3 ) Set Timer to 0 Set State to 4 endif endif
if ( State == 4 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 3 ) Set Timer to 0 Set State to 5 endif endif
if ( State == 5 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 3.5 ) showmessage HHAtomBombMenu Set Timer to 0 Set State to 6 endif endif
if ( State == 6 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 4 ) Set Timer to 0 Set State to 7 endif endif
if ( State == 7 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 4.5 ) HHAtomBombZWayRef.Enable EnablePlayerControls Set Timer to 0 Set State to 0 endif endif
End
Begin GameMode
set Button to GetButtonPressed
if ( button == 0 ) player.moveto HHAtomBombZWayRef enableplayercontrols elseif ( button == 1) endif End Проблема вот в чем: игрока мувит к маркеру наружу, но ракеты уже нет. Вообще нигде. Уже перепробовал все, где ошибка - не пойму. Прошу помощи.
Cinema 4D
|
Статус: Offline |
| |
djsave |
Дата: Воскресенье, 2012-07-22, 03:07 | Сообщение # 2 |
Ни шагу назад !!!!
Группа: Администраторы
| Моск ща чет не пашет - я тут с лазером запарился. Но судя по тому что ты хочешь то я бы сделал по другому : Активируем консоль - ее скрипт нас перемещает на маркер куда там надо. Маркер стоит в тригере - скрипт тригера запускает ракету и отключает себя все просто и все счастливы. Правильное понимание алгоритма действий это уже 80% скрипта. и не юзай так часто таймеры, то что тебе надо можно вообще без них сделать.
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |
Сазан |
Дата: Воскресенье, 2012-07-22, 20:00 | Сообщение # 3 |
Группа: Друзья
| djsave, спасибо, попробую.
Добавлено (2012-07-22, 16:32) --------------------------------------------- И все-таки она вертится летит! осталось только увеличить скорость + добавить пламя внизу, и звук полета.
Добавлено (2012-07-22, 18:07) --------------------------------------------- Какой командой можно использовать в скрипте Explosion'ы? IMod не подходит. Нужно, чтобы через определенное время полета бомбы раздавался взрыв. Именно, как при взрыве мегатонны в Тенпенни Тауэр. Я искал там - так ничего и не нашел, лишь эффекты (пыль, тряска и т.д.)
Добавлено (2012-07-22, 20:00) --------------------------------------------- Опять же, все нашел, и во всем разобрался. Теперь вопрос, довольно-таки простой: как отменить теперь все это? Ракета летит, взрывается, атомная вспышка, ба-бах. Но! Это все повторяется. Как остановить процесс? Code scn HHAtomBombMoveScript
float Timer short Step float StartPosition float ZPosVar float ZPos
Begin GameMode if (Step == 0) set StartPosition to (GetPos Z) set Step to 1 elseif (Step == 1) if ( HHAtomBombZWayRef.GetDisabled == 1 ) set ZPosVar to (GetPos Z) set ZPos to (ZPosVar +25) SetPos Z ZPos set Timer to (Timer + GetSecondsPassed) if (Timer >= 10) imod MegatonNukeISFX HHAtomBombRef.PlaceAtMe MegatonNuke 1 if (timer >= 11) HHAtomBombRef.Disable if HHAtomBombRef.GetDisabled set Timer to 0 Endif endif endif endif endif End
Все, опять во всем разобрался.
Cinema 4D
Сообщение отредактировал Сазан - Воскресенье, 2012-07-22, 20:36 |
Статус: Offline |
| |
Macoron |
Дата: Воскресенье, 2012-07-22, 20:52 | Сообщение # 4 |
Группа: Администраторы
| Сазан, Мы за тобой не успеваем
Если ото всех воняет говном, может, это ты обосрался? Mr. Freeman, Part 58
|
Статус: Offline |
| |
Сазан |
Дата: Воскресенье, 2012-07-22, 21:16 | Сообщение # 5 |
Группа: Друзья
| Macoron, это я на отдыхе, времени полно. Как отключить эффект MegatonNuke? Он постоянно повторяется, и это не есть хорошо.
Cinema 4D
|
Статус: Offline |
| |
djsave |
Дата: Понедельник, 2012-07-23, 00:40 | Сообщение # 6 |
Ни шагу назад !!!!
Группа: Администраторы
| что значит отключить ? а как ты его включил ? Если для включения писал imod бла бла бла , то отключаешь rimod бла бла бла.
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |
Сазан |
Дата: Понедельник, 2012-07-23, 01:48 | Сообщение # 7 |
Группа: Друзья
| HHAtomBombRef.PlaceAtMe MegatonNuke 1 - это не аймод. Он регулярно идет на повтор. Не знаю, как отключить. Добавлено (2012-07-23, 01:48) --------------------------------------------- Исправил проблему командой MarkForDelete
Cinema 4D
|
Статус: Offline |
| |
djsave |
Дата: Понедельник, 2012-07-23, 01:50 | Сообщение # 8 |
Ни шагу назад !!!!
Группа: Администраторы
| а ну тогда да. Кто же знал что ты и как включил.
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |
djsave |
Дата: Понедельник, 2012-07-23, 01:51 | Сообщение # 9 |
Ни шагу назад !!!!
Группа: Администраторы
| Насколько я понимаю ты делаешь под 3й фол ?
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |
Сазан |
Дата: Понедельник, 2012-07-23, 11:10 | Сообщение # 10 |
Группа: Друзья
| djsave, да, под его самого. Не очень люблю НВ. Уж ничего с собой не поделать.
Cinema 4D
|
Статус: Offline |
| |
djsave |
Дата: Понедельник, 2012-07-23, 15:28 | Сообщение # 11 |
Ни шагу назад !!!!
Группа: Администраторы
| Мне тоже по душе больше 3й фол, но вот функционал - больше все же в вегасе - поэтому работаем под него.
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |
Macoron |
Дата: Понедельник, 2012-07-23, 15:44 | Сообщение # 12 |
Группа: Администраторы
|
Если ото всех воняет говном, может, это ты обосрался? Mr. Freeman, Part 58
|
Статус: Offline |
| |
Сазан |
Дата: Понедельник, 2012-07-23, 19:02 | Сообщение # 13 |
Группа: Друзья
| Macoron, класс!
Cinema 4D
|
Статус: Offline |
| |
djsave |
Дата: Вторник, 2012-07-24, 17:03 | Сообщение # 14 |
Ни шагу назад !!!!
Группа: Администраторы
| Сазан, да ты строчишь так что прям не успеваешь подумать над твоими вопросами. Ну так ракета то летит ? Что там бомбить то собрался ?
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |
Сазан |
Дата: Среда, 2012-07-25, 17:22 | Сообщение # 15 |
Группа: Друзья
| djsave, да это квест к моду на новое Убежище Понял, что стандартные "простенькие" квесты уже народу надоели. Народ требует хлеба и зрелищ. Нужен атомный взрыв над Ривет-Сити. ракета летит, взрыв есть, эффекты есть. Злые анклавовцы:D Решили запустить атомную бомбу прямо в Цитадель.
Cinema 4D
|
Статус: Offline |
| |
djsave |
Дата: Среда, 2012-07-25, 20:58 | Сообщение # 16 |
Ни шагу назад !!!!
Группа: Администраторы
| да это точно - а после взрыва конец мода или локацию цитадели переделываешь ?
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |
Сазан |
Дата: Среда, 2012-07-25, 23:27 | Сообщение # 17 |
Группа: Друзья
| djsave, нет, мы взрываем бомбу в воздухе.
Cinema 4D
|
Статус: Offline |
| |
djsave |
Дата: Четверг, 2012-07-26, 07:35 | Сообщение # 18 |
Ни шагу назад !!!!
Группа: Администраторы
| ух пироманьяки.
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |
Озон |
Дата: Вторник, 2014-09-02, 21:58 | Сообщение # 19 |
Группа: Друзья
| Скрипты Фолла пока еще осваиваю. Готовлю вычислительный центр, а там у нас был лифт. С дверями в принципе сложностей не будет. А вот команду телепорта игрока в другую ячейку (то бишь новый этаж) что-то не нашёл. Подобный скрипт видел, но он не фурычит. Идея проста - при нажатии кнопки у игрока выбор, на какой этаж отправится. И каждый выбор делает действие - телепортация игрока в другую ячейку, где уже стоит копия лифта ) В Морре с этим было просто по скриптам. Тут я что-то не догнал.
|
Статус: Offline |
| |
djsave |
Дата: Вторник, 2014-09-02, 22:15 | Сообщение # 20 |
Ни шагу назад !!!!
Группа: Администраторы
| С самим плеером то все просто а вот как быть с его напарниками ? Для плеера можно юзать команду : Код Player.moveto doorvzhopuref doorvzhopuref - это как можно догадаться маркер куда будет перемещен ГГ. Но напарники то не переместятся, так что с лифтами необходимо быть предельно осторожно или делать потайные двери для напарников.
Гули! -вскричали рейдеры. Мясо! -вскричали гули. Опыт! -обрадовался игрок.
|
Статус: Offline |
| |