Difference between revisions of "Bethesda Tutorial Quest Aliases/ru"

Jump to navigation Jump to search
imported>Vitamant
imported>Vitamant
Line 49: Line 49:
Одно маленькое "но": все предметы, которые персонаж получит через свой псевдоним, останутся у него и после отключения псевдонима. Если тебе все же понадобится убрать такие предметы, следует сделать это при помощи скриптов. Помни об этом.
Одно маленькое "но": все предметы, которые персонаж получит через свой псевдоним, останутся у него и после отключения псевдонима. Если тебе все же понадобится убрать такие предметы, следует сделать это при помощи скриптов. Помни об этом.


=Fixing Bendu=
=Исправление Бенду=
{{Inuse/ru}}
Но довольно теории. Давайте изменим псевдоним Бенду так, чтобы вернуть то, что мы только что испортили:
But enough talk. Let's fix Bendu's alias so that his quest functionality lives here. As before, we have two approaches:


==Immortal Bendu==
==Бессмертие==
{{Inuse/ru}}
Нет ничего проще - просто отметь флажок "Essential" вверху окна псевдонима и Бэнду будет невозможно убить, пока он обладает этим псевдонимом. Когда квест будет завершен, он вновь станет смертным.
You can simply click the Essential checkbox at the top of the Alias window, and Bendu will now be unkillable while he is in this alias. When the quest stops, he'll drop out of the alias and again be mortal.  


==Handling the Death==
==Обработка смерти==
{{Inuse/ru}}
Что же касается провала квеста в случае смерти нашего квестодателя, то и тут нет ничего сложного. Точно также, как мы писали скрипт для прототипа Бенду, напишем и для его псевдонима. Обрати внимание, что первая строчка изменилась, так как скрипт будет принадлежать уже не персонажу, а псевдониму. Назовем же мы его "GSQQuestgiver" (квестодатель).
Or we can put a script on this alias to handle Bendu's death, just like we had previously scripted the base object. Note that we have to change the first line of the script so that it will attach to a ReferenceAlias instead of an actor. The script we would make this time would be called "GSQQuestgiver" and look like this:


<source lang="papyrus">
<source lang="papyrus">
Line 71: Line 68:
</source>
</source>


Note that we don't have to set the quest as a property this time around; every ReferenceAlias is aware of the quest that owns it, so we can access it with <code>GetOwningQuest()</code>.  
Также заметь, что в этот раз мы не стали устанавливать свойство для связи с квестом. Любой псевдоним (ReferenceAlias) знает, какому квесту принадлежит, и мы можем сослаться на него, вызвав функцию <code>GetOwningQuest()</code>.  


Now, setting a stage when an Actor dies is an exceedingly common task, so there's no need to make a specialized script for it. When you click the Add button to put a script on this alias, look for scripts that begin with "default" -- these are provided scripts that perform common tasks. They are generally named pretty descriptively, so you can guess what they do from what they're called. In this case, we want "defaultSetStageOnDeathRefAlias". In this case, we'll need to set properties:
Однако, это можно сделать и иным способом, без создания нового скрипта. Установить стадию квеста, если умрет персонаж - это настолько распространенная задача, что она вынесена в список стандартных задач. Когда ты добавляешь новый скрипт псевдониму, то видишь список скриптов. Найди те, что начинаются с "default". Выбери "defaultSetStageOnDeathRefAlias" и установи свойства:
* myQST: GSQ01
* myQST: GSQ01
* preReqStage: <leave blank>
* preReqStage: <оставь пустым>
* StageToSet: 200
* StageToSet: 200


(By using default scripts, we can drastically decrease the total number of scripts in the game, which has benefits for memory usage. Since you're modding for a PC that likely has copious memory, it may be less of a concern.)
Использование стандартных скриптов позволяет сократить их общее число и сэкономить немного памяти. Не то что бы это было архиважно, но лучше использовать их, если есть такая возможность.


=Changing the Name=
=Changing the Name=
Anonymous user

Navigation menu