vasy40, А ты там не читал на моддер форуме? Я там объяснял как сделать чтобы использовалась анимация. И как поцепить на одежду.
---------------------------------------------
Цитата vasy40
Верна ли команда PlayIdle p100? -100 это анимация,которая проигрывается при левитации Граф посмотри пожалуйста что с этим можно сделать.
Щас тебе сделаю тест мод.
--------------------------------------------- vasy40, Вот esp файл, он правда на фол3. Но думаю не проблема просмотреть в FNVEdit. В этом esp файле ответы на все твои вопросы
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Vi[RUS], Да, скрипт этот, как я и думал всё сделано через аи пекет, можешь дать айди предмета на котором стоял скрипт?
--------------------------------------------- Vi[RUS], Для начала создадим глобальную переменную, gameplay -> globals -> ПКМ -> new создадим с айди Var и выберем long.
Итак, вот скрипт на активатор:
Code
Short Next Short DoOnce
Float Timer
Begin OnActivate if ( DoOnce == 0 ) Set DoOnce to 1 Set Next to 1 endif End
Begin GameMode if ( Next == 1 ) DisablePlayerControls 1 1 1 1 1 1 1 Set Timer to Timer + GetSecondsPassed if ( Timer >= 1 )
Set DoOnce to 1 Set Next to 2 Set Timer to 0 endif endif
if ( Next == 2 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 7 ) Set Var to 1 Set Next to 3 Set Timer to 0 endif endif End
Далее создаёшь пути Xmarker'ами
И даёшь им Ref ссылки такого вида "Move01MarkerRef" и ставишь на маркере2 триггер со скриптом:
Code
Short DoOnce Float Timer
Begin OnTrigger Player if ( DoOnce == 0 ) Set Var to 0 Set DoOnce to 1 endif End
Begin GameMode if ( DoOnce == 1 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 1 ) ;PlaySound "можешь поставить =)" Set Timer to 0 Set DoOnce to 2 endif endif
if ( DoOnce == 2 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 5 ) Set Timer to 0 Set DoOnce to 3 endif endif
if ( DoOnce == 3 ) Set Timer to Timer + GetSecondsPassed if ( Timer >= 2 ) Set Var to 2 Set Timer to 0 Set DoOnce to -1 endif endif End
На остальные триггеры в маркерах ставишь скрипты такого вида (пример на триггере третьего маркера):
Code
SCN Move03TriggerScript
Short DoOnce
Begin OnTrigger Player if ( DoOnce == 0 ) Set Var to 3 ;Player.MoveTo "Move03MarkerRef" Set DoOnce to 1 endif End
И так далее, на последний поставь такой скрипт:
Code
SCN Move5TriggerScript
Short DoOnce
Begin OnTrigger Player if ( DoOnce == 0 ) Set Var to 5 EnablePlayerControls Set DoOnce to 1 endif End
Создай квест и повесь на него скрипт (делал тебе для примера):
Code
Float YAchsePosition Float YAchse Float XAchsePosition Float XAchse Short Next
Begin GameMode ;Move01MarkerRef if ( Var == 1 ) ;========================================= ;\ например прямо и скорость увеличивается ;=========================================== Set YAchsePosition to GetPos Y Set YAchse to YachsePosition -8 SetPos Y Yachse endif
if ( Var == 1 ) if ( Next == 0 ) TransportSoundBoxRef.MoveTo Player ;Ref ссылка активатора Set Next to 1 endif endif
;Move02MarkerRef if ( Var == 2 ) ;========================================= ;\ например влево и скорость увеличивается ;=========================================== Set XAchsePosition to GetPos X Set XAchse to XachsePosition +10 SetPos X Xachse endif
if ( Var == 2 ) if ( Next == 1 ) TransportSoundBoxRef.MoveTo Player Set Next to 2 endif endif
;Move03MarkerRef if ( Var == 3 ) ;========================================= ;\ например вправо и скорость увеличивается ;=========================================== Set YAchsePosition to GetPos Y Set YAchse to YachsePosition -10 SetPos Y Yachse endif
if ( Var == 3 ) if ( Next == 2 ) TransportSoundBoxRef.MoveTo Player Set Next to 3 endif endif
;Move04MarkerRef if ( Var == 4 ) Set XAchsePosition to GetPos X Set XAchse to XachsePosition -20 SetPos X Xachse endif
if ( Var == 4 ) if ( Next == 3 ) TransportSoundBoxRef.MoveTo Player Set Next to 4 endif endif
;Move05MarkerRef if ( Var == 5 ) Set XAchsePosition to GetPos X Set XAchse to XachsePosition +2 SetPos X Xachse endif
if ( Var == 5 ) if ( Next == 20 ) Set Next to -1 endif endif
End
Должно работать, я не проверял, так как нет обустроенной локации для проверки. Пробуй.
Может через аи пакет и легче, но я вобще почти не работал с аи пакетами на скриптах движения гг.
Добавлено (04.10.2011, 16:09) --------------------------------------------- Vi[RUS], Ещё одно но, когда гг нажимал на активатор, должны срабатывать такие строчки (добавишь их к активатору):
Code
MetroCar.disable ; поезд ищезает player.additem MetroCarArmor 1 1 ; в инвентаре появляется одежда в виде поезда player.equipitem MetroCarArmor 1 1 ; и сразу одевается
Значит в конце там где стоит EnablePlayerControls нужно добавить после этой строчки, такие строчки:
Code
MetroCar.enable ; поезд появляется в той точке откуда мы приехали player.removeitem 1 1 ; удалить из инвентаря эту одужду поезд
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
vasy40, На шмоте не проверял но и скриптом сделать не сложно. На щет тупотит, я уже сказал, я просто забыл кинуть в архив анимацию, так то анимация прописана, тебе нужно поставить в тот путь свою анимацию и все будит работать.
Добавлено (05.10.2011, 09:51) --------------------------------------------- Mercutio, Ну скрипт для триггера, действие противоположное disable:
Хм, за активатором закреплено меню. В меню две опции. Одна - ничего не делать (после чего меню исчезает). Вторая заменить батарею. Так вот, для второго пункта, необходим скрипт, который проверял наличие батарейки (BatareykaID) в инветаре ГГ и если она отсутствует выводил сообщение " у вас нет батарейки", а если присутствует то делал видимыми объекты помеченные как initiale disable.
Вот:
Code
short button
begin OnActivate
if ( IsActionRef player == 1 )
ShowMessage IdmessageBBB
endif
end
Begin gameMode
set button to getbuttonpressed
if button == 0 if ( player.getitemcount BatareykaID >= 1 ) object1Ref.enable object2Ref.enable else if ( player.getitemcount BatareykaID < 1 ) showmessage idmessageXXX
elseif button == 1 endif endif endif End
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Изменение репутации для пользователя Graf
GrafOffline
Сообщение №463
| Тема: Скрипты
написано: 5 октября 2011, 14:30
if ( IsActionRef player == 1 ) ; если активировал гг
ShowMessage IdmessageBBB ; появляется мессаг с выбором
endif
end
Begin gameMode
set button to getbuttonpressed
if button == 0 ; 1 выбор if ( player.getitemcount BatareykaID >= 1 ) ; если у гг 1 батарейка то два объекта появляются object1Ref.enable object2Ref.enable else ; в другом случае if ( player.getitemcount BatareykaID < 1 ) ; если батарейки меньше одной showmessage idmessageXXX ; выбивает сообщение
elseif button == 1 ; второй выбор "Отмена" endif endif endif End
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
KAIN48, Самые лучшие варианты, это взять броню супер-мутантов и сделать как бы, как силовую броню которая доступна только при определенной рассы, а остальную броня отключить.
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Как включить отображение травы в окне рендеринга? (Galko)Никак! Из-за того что...
Трава "входит в состав" текстуры ландшафта (Land Texture) . То есть - текстурой красится поверхность создаваемого мира. В редакторе показывается только цвет (текстурный набор) , но не модели травы. А вот уже в самой игре движок просчитывает данные из профиля травы (плотность посадки, высоту. наклон, колебания и прочь. ) и распределяет, согласно этим данным, модели травы по поверхности ландшафта, закрашенной данной текстурой . Примерно так, в-общем.
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
vasy40, У меня там стоит два эффекта, один скрипт эффект на левитацию а второй скрипт на анимацию.
Цитата vasy40
типа Begin On add Equip Player.item id message id;Крылья одеты и активированы end Begin On add Unequip Player.item id message id;Крылья сняты и отключены end
Нет, блок Begin Onadd действует при получении вещи в инвентарь, и ты его неправильно написал... Нужно писать примерно так:
Code
begin OnEquip player
ShowMessage aaaArmorInventorySMessage
end
begin OnUnEquip player
ShowMessage aaaArmorInventorySMessage2
end
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Imperator3, Сделай проверку на перк, я так понял перк добавляется при получении компаньёна. Сделай проверку на наличие перка у гг и если есть, через две секунды перемещение.
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Поскольку тебя, скорее всего, совершенно не интересует соместимость с другими модами - клади эту вещь прямо ей в карман. Но если вдруг заинтересует - создай новый контейнер, помести в него что добавляешь на продажу, назначь Мойру владельцем контейнера и поставь экземпляр контейнера в той же зоне, где находится Мойра.
А не лучше ей в её контейнер кинуть?
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Ipatow, Я всегда кидал в её контенер и не кто не жалывался, сколько я модов делал таких, что бы у мойры продавались вещи а всё как было так и есть, как респаун был так и есть.
Цитата Ipatow
отредактируешь её MerchantContainer - обломаешь все моды
Каким образом?
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...