Sazans_Theme, Спасибо, а я делал второй кнопкой с конца.
Добавлено (19.08.2012, 21:50) --------------------------------------------- Снова вопрос (я уже, наверное, всех достал): как сделать, чтобы при получении нового уровня можно было распределить по навыкам только 15 очков?
Добавлено (21.08.2012, 12:06) --------------------------------------------- Так, с этим вопросом вроде разобрался, теперь другой - как сделать так, чтобы перк давался сразу при запуске игры?
rizys-mod, в смысле того что надо сделать свой, новый квест, стартующий с начала игры, и в скрипте слинкованным с этим квестом прописать "старт" перка. Так?
Вновь пара вопросов: 1) Как сделать так, чтобы после обезвреживания мины (не своей) повышалась переменная? Часть про повышение понятна, а вот с миной... 2) Возможно сделать объект движущийся по траектории (влево-вправо)? Читал, что статика не двигается, но может другой объект может?
Вис, подумал и решил, при обезврежении можно увеличивать переменную на 1, если её подобрал гг (подобралась твоя мина, и поэтому переменная не защитается, если твою мину обезвредить) а добавить переменную просто, добавь строчку в стандартный скрипт.
Команда "Rizys-mod" - разработка плагинов на Fallout.
подумал и решил, при обезврежении можно увеличивать переменную на 1, если её подобрал гг (подобралась твоя мина, и поэтому переменная не защитается, если твою мину обезвредить)
Можно поподробнее?
Изменение репутации для пользователя rizys-mod
rizys-modOffline
Сообщение №492
написано: 22 августа 2012, 12:56
| Отредактировано: rizys-mod - 22 августа 2012, 12:56
if detonated == 0 if getDistance player <= 16 do 1 set detonated to 1 endif endif
if skillPassed == 1 ;don't run stuff in game mode unless recently activated set button to getButtonPressed ;grab the button state, you don't know when this will be set if button > -1 ;if a valid response is received start doing stuff if button == 0 ShowMessage TrapMineHarvest ;player chose to deactivate and harvest the mine disable player.addItem weapMineFrag 1 ; <============ заменишь на свою мину endif set skillPassed to 0 ;stop running stuff endif endif
А ты просто создешь другую мину, со стандартным скриптом, а на стандартной мине сделаешь свой скрипт, с добавлением своей мины и увеличением переменной.
Команда "Rizys-mod" - разработка плагинов на Fallout.
Итак, с первым вопросом вроде разобрался, но не до конца. Нужно, чтобы объект перемещался с коллизией. Дело в том, что этот объект движущаяся мишень, при попадании в которую повышается переменная. Посмотрел тему по перемещению объекта с коллизией, но как я понял на Movable Static повесить скрипт нельзя. Или же можно?
Цитата rizys-mod
другую мину, со стандартным скриптом
). Вновь положив эту мину и подняв её мы получаем нашу мину и переменная вновь повышается.
Блок "гейммод" непрерывно повторяется - настолько часто, насколько хватает процессора. Блок "онлоад" исполняется только в момент материализации объекта. Это главное отличие; есть и другие, но потому типов блоков и не один десяток...
Блок "гейммод" непрерывно повторяется - настолько часто, насколько хватает процессора. Блок "онлоад" исполняется только в момент материализации объекта. Это главное отличие; есть и другие, но потому типов блоков и не один десяток...
Спасибо
Изменение репутации для пользователя Galko
GalkoOffline
Сообщение №505
написано: 24 августа 2012, 17:10
| Отредактировано: Galko - 24 августа 2012, 17:21
Вис, учись размышлять и анализировать OnLoad по-аглицки - это переводится как "При загрузке". GameMode - соответственно с английского будет "Игровой режим". Begin - это "Начало" Названия блоков просто так не даются, а определяют собой какие-то моменты и уже по названию можно ориентироваться что и когда срабатывает К примеру: Begin GameMode - блок выполняется непрерывно, пока игрок находится в игровом режиме (а не в режиме меню,когда например открыт инвентарь или игра стоит на паузе) Begin OnLoad - блок выполняется, когда заскриптованный объект появляется (загружается) в игру Begin OnActivate - блок выполняется при активации заскриптованного объекта Begin OnTrigger - блок выполняется, когда происходит столкновение с заскриптованным объектом Ну и так далее...
Galko, это всё понятно, что OnLoad при загрузке, а GameMode игровой режим. Но то что
Цитата Galko
выполняется непрерывно, пока игрок находится в игровом режиме
я бы не догадался. А теперь вопрос: что я делаю неправильно? Задача такова: чтобы при использовании 20 стимуляторов медицина повышалась на 1. Я создал переменную AAAzazaza691StimPak. Сделал новый эффект стимулятору и повесил на него скрипт
Code
Begin ScriptEffectStart
Set AAAzazaza691Naviki.AAAzazaza691StimPak to AAAzazaza691Naviki.AAAzazaza691StimPak + 1
END
Затем в скрипте квеста создал другую переменную AAAzazaza691Medicine и прописал такой скрипт:
Code
Begin GameMode IF AAAzazaza691Stimpak>=2 Set AAAzazaza691Medicine to AAAzazaza691Medicine + 1 Set AAAzazaza691Stimpak to 0 endif IF AAAzazaza691Medicine>=10 player.ModAV medicine 1 endif End
И где моя ошибка?
Изменение репутации для пользователя JupiterJour
JupiterJourOffline
Сообщение №507
написано: 26 августа 2012, 16:25
| Отредактировано: Joopeeter - 26 августа 2012, 16:32
Вис, ты не уточнил, что и как не работает. В скрипте я вижу, что при достижении переменной AAAzazaza691Medicine значения 10 навык медицины буде повышаться на 1 при каждом прогоне скрипта (для квестового гейммода это по умолчанию каждые 5 сек.). Если навык должен быть повышен один раз за игру, то надо так:
Code
short DoOnce Begin GameMode IF AAAzazaza691Stimpak>=2 Set AAAzazaza691Medicine to AAAzazaza691Medicine + 1 Set AAAzazaza691Stimpak to 0 endif if DoOnce==0 IF AAAzazaza691Medicine>=10 player.ModAV medicine 1 set DoOnce to 1; всё, в следующий раз проверка if DoOnce==0 не даст снова повысить навык endif endif End
Если после повышения надо начать счёт сначала, то short DoOnce надо убрать, а вместо set DoOnce to 1 надо вставить Set AAAzazaza691Medicine to 0. Кстати, неясно, зачем там две переменных.
Если же до повышения вообще не доходит, то проверь флаги в эффекте. В базовом вроде бы должен стоять Self, в стимуляторе - "на себя".
Проверь, срабатывает ли эффект вообще. Кольнись стимпаком и введи с консоли ShowQuestVars [ID квеста в виде цифр]. Покажутся квестовые переменные. Повысились?
Цитата Вис
Ну там переменную Medicine повышать должны не только стимуляторы.
Всё равно не ясно, что мешает "не только стимулятору" и стимулятору повысить непосредственно медицинскую переменную. Ну, тебе видней.
Как начать диалог между 2-мя НПС? Диалоговый анимационный пакет я сделал, сделал сами диалоги, в разделе Conversation. Но когда на триггере я захожу, один подходит к другому, говорит "Привет", и диалог не начинается. В чем ошибка?