Описание функций TES 4 Oblivion 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Описание функций TES 4 Oblivion



В этой главе размещены в алфавитном порядке все известные функции Обливиона (всего 359):

A

 

Activate

Синтаксис:

Activate ActivatorID (optional), NormalActivationFlag (optional)

Примеры:

Activate player Activate Activate player, 1

 

Функция Activate указывает объекту выполнить его действие по-умолчанию.
Если ActivatorID опущен, то команда Activate будет использовать «текущий активатор» вызывающего объекта. Это очень полезно внутри блока OnActivate, когда вам нужно, чтобы активация проходила в обычном режиме, за исключением определенных условий.
Это означает, что если вы вызовете

 

Activate

 

то это будет эквивалентно

 

ref actingref set actingref to GetActionRef Activate actingref

 

Если используется ActivatorID, вызывающий объект исполнит действие, привязанное к ActivatorID.

 

Тип объекта Активация
NPC Диалог
Контейнер Открыть
Дверь Открыть
Оружие, броня, и т.д. Поднять
Книга / Свиток Читать

Если флаг NormalActivationFlag опущен, вызывающий объект исполняет нужное действие, пропуская любые блоки OnActivate, которые могут быть на нем. Обычно так и используется команда Activate, т.к. чаще всего она вызывается как раз внутри блока OnActivate.

Если NormalActivationFlag установлен в 1, вызывающий объект будет активирован обычным способом, включая блок OnActivate. В основном этот флаг аннулирует активацию по умолчанию как представлено выше. Используйте данную возможность осторожно — если вы вызовете Activate на сам объект изнутри блока OnActivate, вы тем самым запустите бесконечный цикл.

При осторожном использовании функция Activate может оказаться очень полезной для принудительного вызова и использования как псевдо-функция вызова между заскриптованным объектом и заклинаниями. Такое использование не предполагалось и требует тщательного планирования.

Пример 1:
Если вы вызовете этот скрипт на двери, то дверь будет действовать так, как будто ее активировал сам игрок (т.е., если это загрузочная дверь, игрок будет телепортирован в пункт назначения двери).

 

Activate player


Пример 2:
Чтобы не переключило блок OnActivate, оно также вызовет Activate, как будто скрипта и нет.

 

begin OnActivate if MyCrazyCondition == 1 Activate else; делаем что-то еще endif end

Пример 3:
Этот скрипт запускает бесконечный цикл — как только заскриптованный объект активирован, блок OnActivate будет выполняться вечно.

float infinity begin OnActivate; НИКОГДА так не делайте!! set infinity to infinity +.1 message "Infinity = %.1f", infinity activate player 1 end

Пример 4:
Вот правильный способ использования NormalActivationFlag:

begin OnActivate; активируем другой объект, когда этот активирован игроком if IsActionRef player == 1 MyGate.Activate player 1 endif end

 

Относится к типу: Object Functions

 

AddAchievement

Синтаксис:

AddAchievement AchievementNumber

Пример:

AddAchievement 12

Используется только в XBox!
Добавляет указанное достижение в профиль игрока. Т.к. достижения прописаны в движке, эта функция не используется в модостроении.

 

AddFlames

Синтаксис:

[ObjectID.]AddFlames

Добавляет объект пламени FlameNode (ссылка на wiki) к вызываемому объекту.

.
Пламя выключено Пламя включено

 

См. также: FlameNode (wiki), CanHaveFlames, HasFlames, RemoveFlames
Относится к типу: Object Functions

 

AddItem

Синтаксис:

[ActorID|ContainerID.]AddItem ObjectID, Count

Примеры:

AddItem MyObject, 1
Ref MyItem Short count set MyItem to ArenaAkaviriLongSword set count to 1 player.additem MyItem Count

 

Функция AddItem добавляет предмет ObjectID в инвентарь вызывающего контейнера в количестве Count.
Примечания:

  • В качестве ObjectID могут быть использованы переменные типа ref, а для Count - переменные типа short.
  • Данная функция не включит блок OnAdd потому, что предмет создается внутри инвентаря, а не добавляется в него. Для создания объектов из консоли, если вам нужно включить блок OnAdd, используйте функцию PlaceAtMe и поднимите предмет с земли.

Консольное использование:
Используя AddItem с консолью, вы должны использовать FormID желаемого предмета, а не его EditorID.
Поэтому для того, чтобы добавить себе отмычку, вместо команды

player.additem lockpick 1

вы должны набрать в консоли

player.additem 00000A1

Примечание (Kedrigh, wiki): "FormID находится в CS и имеет вид: yyxxxxxx.
yy используется для ссылки на плагин, а xxxxxx - чтобы сослаться на элемент внутри плагина (и он не изменяется). Таким образом, если вы загружаете мастер-файл Oblivion в CS и, немного поработав, создали новый объект, то FormID этого объекта будет выглядеть как 01xxxxxx.
Часть FormID - yy - изменяется в зависимости от загруженных модов, которые вы отметили при загрузке."

Примечание (Garin): yy зависит от порядкового номера загруженного плагина, при загрузке они сортируются по дате.

Примечание (Visman): Если вы хотите скрыть в игре сообщение о добавлении предмета в инвентарь игрока, то используйте следующий код:

Message " " Message " " Player.AddItem <Item ID>, Count

 

См. также: RemoveItem, GetItemCount, RemoveAllItems
Oтносится к типу: Object Functions | Actor Functions

 

AddScriptPackage

Синтаксис:

[ActorID.]AddScriptPackage PackageID

Пример:

AddScriptPackage MQ07BeggarToTavern

Функция AddScriptPackage добавляет скриптовый пакет PackageID для вызывающего актера ActorID. Когда эта функция вызвана, этот пакет станет преобладающим над всеми другими пакетами.
Примечания:

  • Актер может иметь только один скриптовый пакет. При вызове этой функции дважды, второй пакет заменит первый.
  • Отметим, что в случае, когда добавленный пакет не принуждает актера к чему-то ("должен завершить" (must complete) и/или "должен достичь расположения" (must reach location)), он будет снят, когда актер в следующий раз переоценит этот пакет.

Справка: Список скриптов Обливиона, которые используют AddScriptPackage (WIKI):

 

AmuseiScript MartinScript TrigZoneP layerDoonce01DABoethiaSCRIPT01
ArmandChristopheScript MethredhelScript TrigZonePlayerDoonce01DABoethiaSCRIPT02
BanditSentryFemaleScript MQ09Script TrigZonePlayerDoonce01DABoethiaSCRIPT03
BanditSentryMaleScript MQ14StatueScript TrigZonePlayerDoonce01DABo ethiaSCRIPT04
bernadettepenelesscript MQ15AnaxesDoorSCRIPT TrigZonePlayerDoonce01DABoethiaSCRIPT05
CPRollingRock01SCRIPT MS45DarMaScript TrigZonePlayerDoonce01DABoethiaSCRIPT06
DASanguineSpell OrrinScript TrigZonePlayerDoonce01DABoethiaSCRIPT07
DavideSurilieScript TG03ChapelUndercroftGuardScript TrigZonePlayerDoonce01DABoethiaSCRIPT08
HieronymusLexScript TG11BlindMonkBossScript TrigZonePlayerDoonce01DABoethiaSCRIPT09
KurtTestMagicEffect2 ToutiusSextiusScript  

 

См. также: RemoveScriptPackage
Oтносится к типaм: AI Functions | Actor Functions

 

AddSpell

Синтаксис:

[ActorID.]AddSpell SpellID

Пример:

AddSpell AbWeaknessNormalWeapons

Добавляет заклинание вызывающему актеру. Заклинаниями также считаются болезни, дополнительные способности, благословения (powers). Когда добавляется способность или болезнь, отображается соответствующий магический эффект. Когда добавляется заклинание или благословение, показывается скастованное заклинание\благословение. Есть и другие важные отличия, смотрите Spell, чтобы узнать подробности.
Примечания:

· Addspell работает только с типами заклинаний, указанными в секции заклинаний редактора. Её нельзя использовать для заклинаний, добавленных с помощью скриптов. Для динамического добавления заклинания, основываясь на его уровне, используйте следующий скрипт в качестве руководства:

 

if (Player.GetLevel >= 25) player.addspell InnerFire25 elseif (player.Getlevel >= 20) player.addspell InnerFire20 elseif (player.Getlevel >= 15) player.addspell InnerFire15 elseif (player.Getlevel >= 10) player.addspell InnerFire10 elseif (player.Getlevel >= 5) player.addspell InnerFire05 else player.addspell InnerFire01 endif

· Будьте осторожны при использовании данной функции на неуникальных актерах. Добавление способности или заклинания на актёра изменит базовый объект, и все актёры, созданные из данного базового объекта, также подвергнуться изменению.

· Как и большинство функций, эта также имеет отличия при использовании в консоли - вместо SpellID надо указывать FormID.

· Обратите внимание, что большинство заклинаний не работают как способности, включая "Перо", "Бремя" и "Дезинтеграцию", так же как и любые заклинания, заставляющие цель реагировать на заклинателя, например "Поднять мёртвого", "Очаровать" или "Деморализовать".

См. также: RemoveSpell, List of existing scripts that use AddSpell (wiki)

Oтносится к типу: Magic Functions | Actor Functions

 

AddTopic

Синтаксис:

AddTopic TopicID

Пример:

AddTopic HiddenCave

Используйте функцию AddTopic, чтобы добавить тему TopicID в список известных тем игрока.
Только темы из этого списка появляются в перечне тем NPC во время диалога. Темы также можно добавить, используя список AddTopic в окне редактора диалогов.
См. также: List of functions that use AddTopic (wiki)
Oтносится к типу: Dialogue Functions

 

AdvancePCLevel (advLevel)

Синтаксис:

AdvancePCLevel
advLevel

Функция AdvancePCLevel используется для ручного повышения уровня игрока, при этом вызывается меню «повышение уровня».
Oтносится к типу: Player Functions

 

AdvancePCSkill (advSkill)

Синтаксис:

AdvancePCSkill Skill Amount
advSkill Skill Amount

Пример:

AdvancePCSkill Blade 2

Функция AdvancePCSkill повышает навык игрока (Skill) на величину Amount, как если бы игрок получил его при многократном использовании в игре или у тренера.
Эта функция стала объектом спора в обсуждении ModPCSkill. Пожалуйста, прочтите эту страницу перед использованием данной функции.
Прим. zOmb (ZomBoss): Тестовое дополнение:
AdvancePCSkill добавляет игроку очко скилла. Причём, если скилл в главных, то повышается и шкала повышения уровня. Вызов функции с отрицательным аргументом приводит к зависанию игры.

Oтносится к типу: Player Functions

 

Autosave

Синтаксис:

Autosave

Вызов функции Autosave приводит к немедленному автосохранению. Запись производится в тот же слот памяти, что и обычное автосохранение.

 

C

 

CanHaveFlames

Синтаксис:

[objectID.]CanHaveFlames

Функция CanHaveFlames возвращает 1, если объект может использовать пламя (светильник, например)
См. также: FlameNode (wiki), HasFlames, RemoveFlames, AddFlames
Относится к типу: Object Functions | Condition Functions

 

CanPayCrimeGold

Синтаксис:

[ActorID.]CanPayCrimeGold

Функция CanPayCrimeGold возвращает 1, если актер имеет достаточное количество золота в инвентаре, чтобы оплатить штраф за преступление, и 0, если нет.

См. также: GetCrimeGold, ModCrimeGold, SetCrimeGold
Относится к типу: Crime Functions | Condition Functions

 

Cast

Синтаксис:

[ActorID|ActivatorID.]Cast SpellID [TargetRefID]

Пример:

Cast ShrineAkatoshSpeedMagicka Player

При вызове функции Cast вызывающий объект кастует заклинание SpellID на цель TargetRefID (и только заклинания). Поведение этой функции зависит от дальности действия заклинания, от самой цели и от типа вызывающего объекта.

Примечания:

  • Эта функция может быть использована, чтобы заставить персонажа игрока скастовать заклинание на себя, однако нельзя заставить его кастовать заклинания на другие объекты или персонажей, например, при прикосновении или на удаленную цель.

· Использование данной функции при отключенном управлении игрока может вызвать крах игры.

· Если вызвать эту функцию на NPC, проигрывать анимацию кастования заклинания NPC будет нормально. Если же вызвать функцию на существе (creature), анимация проигрываться не будет, да и сама функция работать не будет.

· В качестве цели TargetRefID могут корректно использоваться лишь некоторые типы объектов, например, актеры и активаторы. Другие объекты, например, предметы, в качестве цели TargetRefID использовать не рекомендуется, так как магический заряд отправится не в направлении цели, а вдоль отрицательного направления оси Y.

· Эта функция не работает, когда NPC бросает заклинание на удаленную цель, расстояние до которой больше установленного диапазона. При этом он может попытаться приблизиться к цели на расстояние кастования заклинания и лишь тогда его скастовать, однако чаще всего он просто проигнорирует вызов данной функции.

Примечание (Visman):
В плагине "Assassins Creed - Altair's Gear" Nexon решил проблему кастования заклинания на персонажа игрока при использовании им определенного предмета, если заклинание отсутствует в его списке заклинаний. В приведенном ниже фрагменте в блоке OnEquip персонажу игрока сначала добавляется нужное заклинание:

begin OnEquip player.addspell ACpieceofedenSpell set Spellbool to 1 end

 

Далее в блоке GameMode добавленное заклинание кастуется "на себя", после чего удаляется из списка заклинаний персонажа:

 

begin GameMode if (Spellbool == 1) player.cast ACpieceofedenSpell Player set Spellbool to 0 player.removespell ACpieceofedenSpell endif end

 

Oтносится к типу: Magic Functions | Actor Functions

 

CloseCurrentOblivionGate

Синтаксис:

CloseCurrentOblivionGate iNoResetFlag (optional)

Когда вызывается функция CloseCurrentOblivionGate, то мир Обливиона, в котором находится персонаж игрока, сбрасывается. Он возвращается в то место, откуда вошел в Обливион и поворачивается лицом к воротам. Затем ворота закрываются и помечаются как уничтоженные (не используемые более). Другие актеры помещаются за ворота и связанный мир сбрасывается.
Актеры, не принадлежащие к данной локации, также помещаются за ворота и связанный мир сбрасывается.
Если опциональный флаг iNoResetFlag = 1, то мир Обливиона после закрытия врат сбрасываться не будет.

См. также: CloseOblivionGate, ForceCloseOblivionGate
Относится к типу: Miscellaneous Functions

 

CloseOblivionGate

Синтаксис:

CloseOblivionGate iNoResetFlag (optional)

Референсная функция. Если вызывающий объект – врата Обливиона, то они закрываются (более подробно - см. CloseCurrentOblivionGate).

См. также: CloseCurrentOblivionGate, ForceCloseOblivionGate
Относится к типу: Miscellaneous Functions

 

CompleteQuest

Синтаксис:

CompleteQuest QuestID

Пример:

CompleteQuest SQ09

Помечает квест как законченный. Единственный реальный эффект состоит в том, что квест будет отображаться в разделе «Завершенные» списка квестов.
См. также: StartQuest, StopQuest
Относится к типу: Quest Functions

 

CreateFullActorCopy

Синтаксис:

[ActorID.]CreateFullActorCopy

Пример 1: Функция CreateFullActorCopy создает копию указанного актера (ActorID, в данном случае игрока) и его базы:

player.CreateFullActorCopy

Пример 2: Функция создает копию вызывающего актера и возвращает ID нового объекта, поэтому может использоваться для того, чтобы задать ref-переменную, как это сделано в этом примере:

set newRef to CreateFullActorCopy

Копия представляет собой полный дубликат оригинального актера (на котором "висит" данный скрипт), включая инвентарь, но со следующими оговорками:

  • Объекты инвентаря дублируются также, как и в случае вызова функции DuplicateAllItems.
  • У копии нет пакетов ИИ или фракций.

См. также: DuplicateAllItems, DeleteFullActorCopy
Oтносится к типу: Miscellaneous Functions | Actor Functions

 

D

 

DeleteFullActorCopy

Синтаксис:

[refID.]DeleteFullActorCopy

Пример:

newRef.DeleteFullActorCopy

Функция DeleteFullActorCopy удаляет созданную копию актера (refID) полностью и его базовый объект.
Примечание: Работает как функция return — строки скрипта, следующие после вызова, выполняться не будут.
См. также: CreateFullActorCopy, DuplicateAllItems
Относится к типу: Miscellaneous Functions

 

Disable

Синтаксис:

[ObjectID|ActorID.]Disable

Функция Disable отключает вызывающий объект. Отключенные объекты не загружаются в мир, отключенные актеры не обрабатывают свой ИИ, но скрипты на отключенных объектах ВЫПОЛНЯЮТСЯ.
Функция Disable не удаляет объекты из игры, она просто прекращает их отрисовку. Не полагайтесь на Disable, чтобы увеличить производительность путём удаления объектов.

См. также: Enable, GetDisabled
Относится к типу: Miscellaneous Functions

 

DisableLinkedPathPoints

Синтаксис:

[ObjectID.]DisableLinkedPathPoints

Функция DisableLinkedPathPoints отключает все путевые узлы, привязанные к вызывающему объекту ObjectID. Это нужно, чтобы изменить нахождение пути на геометрии, изменяющейся во время игры, например, на разводных мостах (drawbridges), движущихся решётках (portcullises), разваливающихся опорах (crumbling bridges) и т.п.
Чтобы привязать узел пути к объекту, выделите его в редакторе и нажмите "R".
См. также: Category: Path Grids (wiki), EnableLinkedPathPoints
Относится к типу: Miscellaneous Functions

 

DisablePlayerControls

Синтаксис:

DisablePlayerControls

При вызове функции DisablePlayerControls игрок не может двигаться, ждать, активировать предметы или получать доступ к журналу.
Примечание: при этом игрок всё ещё может осматриваться вокруг.
См. также: EnablePlayerControls
Oтносится к типу: Player Functions

 

Dispel

Синтаксис:

[ActorID].Dispel MagicID

Примеры:

Dispel ShrineAkatoshSpeedMagicka
NPCRef.Dispel ShrineAkatoshSpeedMagicka

Функция Dispel удаляет указанное заклинание/магию (MagicID), наложенные на актера ActorID.
Примечание: Эта функция должна работать и работает как команда Return, если вы пытаетесь удалить заклинание в его текущем скрипте. Например, в следующем скрипте сообщение отображаться не будет:

scn EXSpellScript Begin ScriptEffectFinish player.dispel EXSpell messagebox "Этот текст отображаться не будет!" End

См. также: DispelAllSpells
Oтносится к типу: Magic Functions | Actor Functions

 

DispelAllSpells

Синтаксис:

[ActorID.]DispelAllSpells

Функция DispelAllSpells удаляет все текущие заклинания/магию, наложенные на актера (ActorID).
См. также: Dispel
Oтносится к типу: Magic Functions | Actor Functions

 

Drop

Синтаксис:

[ActorID.]Drop ObjectID Count

Пример:

Drop Torch02 2

При вызове функции Drop вызывающий актер ActorID выбрасывает указанный предмет(ы) (ObjectID) в мир к своим ногам в указанном количестве (Count).

См. также: DropMe, RemoveMe
Oтносится к типу: Object Functions | Actor Functions

 

DropMe

Синтаксис:

[ObjectID.]DropMe

При вызове функции DropMe из контейнера (инвентаря) выбрасывается указанный предмет ObjectID. Если его в контейнере нет, функция не имеет эффекта.
Примечания:

  • Эта функция работает как функция Return - строки скрипта, следующие за ней, выполнены НЕ будут (т.к. объект уничтожает cfv себя в процессе удаления из инвентаря).
  • В отличие от RemoveMe, функция не сохраняет уровни изношенности, заряда или скриптовые переменные предмета.

См. также: RemoveMe, Drop
Oтносится к типу: Object Functions

 

DuplicateAllItems

Синтаксис:

[ActorID|ContainerID.]DuplicateAllItems TargetContainerID

Пример:

DuplicateAllItems BlackBrugoRef

Функция DuplicateAllItems дублирует все предметы, находящиеся в вызывающем контейнере (ActorID|ContainerID), в целевом контейнере TargetContainerID. Заскриптованные объекты дублируются как новые, незаскриптованные (но в остальном идентичные) - как версии (копии) самих себя. Квестовые предметы также дублируются, так что используйте эту функцию осторожно. Многие квесты полагают, что квестовые предметы уникальны — создание их второй копии может привести к нежелательным последствиям.
См. также: CreateFullActorCopy, DeleteFullActorCopy
Oтносится к типу: Category: Items (wiki) | Actor Functions

 

DuplicateNPCStats

Синтаксис:

[ActorID.]DuplicateNPCStats NPCToCopyFromID

Пример:

myClone.DuplicateNPCStats player

Функция DuplicateNPCStats дублирует все характеристики, которые имеются у указанного персонажа (NPCToCopyFromID), на вызывающего NPC (ActorID), включая следующее:

  • Класс (class)
  • Уровень (level)
  • Навыки и атрибуты (Skills and attributes)

См. также: CreateFullActorCopy
Oтносится к типу: Miscellaneous Functions

 

E

 

Enable

Синтаксис:

[ObjectID.]Enable

Функция Enable включает вызывающий объект ObjectID, заблокированный ранее функцией Disable.
Все объекты включены в игре по умолчанию, а это означает, что они рендерятся в игре и, если они актеры, то отрабатываются их пакеты AI.
См. также: Disable, GetDisabled
Относится к типу: Miscellaneous Functions

 

EnableFastTravel

Синтаксис:

EnableFastTravel flag

Функция EnableFastTravel включает или отключает быстрое путешествие.
Если флаг (flag) установлен в "1", тогда разрешено, если в "0" = заблокировано до тех пор, пока снова не будет включено этой функцией.
Относится к типу: Miscellaneous Functions

 

EnableLinkedPathPoints

Синтаксис:

[ActorID.]EnableLinkedPathPoints

Функция EnableLinkedPathPoints включает все путевые узлы (пафгриды), связанные с объектом вызова ActorID.
Чтобы привязать точку пути к объекту, выберите в конструкторе точку пути и нажмите клавишу "R".
См. также: Category: Path Grids (wiki), DisableLinkedPathPoints
Относится к типу: Miscellaneous Functions

 

EnablePlayerControls

Синтаксис:

EnablePlayerControls

Функция EnablePlayerControls включает управление игрока, отключенное ранее функцией DisablePlayerControls
См. также: DisablePlayerControls
Oтносится к типу: Player Functions

 

EquipItem

Синтаксис:

[ActorID.]EquipItem ObjectID NoUnequipFlag

Примеры:

EquipItem FavoriteCuirass player.EquipItem CursedHelm 1

Вызов функции EquipItem заставляет актера ActorID одеть объект ObjectID. Если флаг NoUnequipFlag = 1, актер (включая и персонажа игрока), не сможет снять объект.

Примечания (Visman):

  1. Нельзя в одном и том же фрейме снять и одеть один и тот же зачарованный предмет (проверено на щитах в плагине "Щит на спине") - он будет только снят. (Возможно, обратная ситуация также не пройдет, т.е. одеть и снять, но это не проверялось).
  2. Если вы хотите скрыть сообщение, выводимое в игре при облачении предмета на игрока, то используйте следующий код:

 

Message " " Message " " Player.EquipItem <Item ID>


См. также: UnequipItem
Oтносится к типу: Object Functions | Actor Functions

 

EssentialDeathReload

Синтаксис:

EssentialDeathReload "Death message"

Пример:

EssentialDeathReload "Вы проиграли. Жоффре убит. Надежды больше нет."

Функция EssentialDeathReload заставляет игру перезагрузиться (также, как и после смерти персонажа игрока). Сначала появляется сообщение, затем меню перезагрузки.
Oтносится к типу: Miscellaneous Functions

 

EvaluatePackage (evp)

Синтаксис:

[ActorID.]EvaluatePackage PackageID evp PackageID

Используйте функцию EvaluatePackage на указанном актере (ActorID), чтобы вынудить его переоценить пакеты и выбрать указанный PackageID, который должен выполняться немедленно. Это может быть необходимо в тех случаях, когда в скрипте изменились какие-либо условия. Например, вы хотите, чтобы актер активировал рычаг, когда какой-нибудь флаг в скрипте установится в состояние "True" - "истина". Для того, чтобы актер активировал его сразу же после этого события, вам нужно вызвать EvaluatePackage и заставить актера немедленно переоценить пакеты, чтобы не ждать в течение целого часа.
Эта функция должна использоваться осмотрительно, поскольку это может занять длительное время в случае, если актер имеет длинный список пакетов и условий.
Oтносится к типу - AI Functions | Actor Functions

 

F

 

ForceActorValue (ForseAV)

Синтаксис:

[ActorID.]ForceActorValue StatName value [ActorID.]ForceAV StatName value

Параметры:

ActorID - ID персонажа, необязательный. StatName - название изменяемой характеристики Value - значение, которое будет присвоено

Пример:

ForceActorValue Strength 50

Функция ForceActorValue изменяет для указанного актера (ActorID) его текущую характеристику (StatName) до определенного значения (value) (не путайте с функцией SetActorValue, которая изменяет БАЗОВОЕ значение характеристики). Измененная характеристика будет отображаться в игре красным цветом (damaged - повреждение) или зеленым (restored - восстановление), чтобы информировать игрока, что это временная модификация. Неизмененные параметры будет отображаться синим цветом.
Основы:
Когда вы (или игра) используете GetActorValue, вы получаете сумму базового значения актера плюс значения трех модификаторов - игрового, магического и скриптового:

  1. Game Modifier используется для "постоянного" эффекта, типа Damage и Restore.
  2. Magic Modifier используется для "временного", развеваемого магического эффекта, такого как Drain и Fortify.
  3. Script Modifier используется для "временного" неразвеиваемого скриптового эффекта, такого как благословения и проклятия.

Функции ModActorValue и ForceActorValue изменяют только скриптовый модификатор. Изменения, сделанные этими функциями, не восстанавливаются автоматически внутриигровыми средствами, подобно естественному восстановлению здоровья или магии. Для этого вам нужно "уничтожить" их в скрипте.
В скриптах эти функции ведут себя так, как описано выше, но в консоли они ведут себя несколько иначе в связи с тем, что они использовались Bethesda для целевого тестирования объектов. См. описание для функции ModActorValue:

ModActorValue health, (value - GetActorValue health)

Как и в случае с ModActorValue, при вызове ForceActorValue из скрипта изменения будут временными.
См. также: Stats List (wiki), GetActorValue, GetBaseActorValue, ModActorValue, SetActorValue
Oтносится к типу: Actor Value Functions | Statistics Functions | Actor Functions

 

ForceCloseOblivionGate

Синтаксис:

ForceCloseOblivionGate

Функция ForceCloseOblivionGate мгновенно закрывает врата Обливиона — работает также, как и функция CloseOblivionGate, но анимация закрытия врат не проигрывается.
См. также: CloseOblivionGate, CloseCurrentOblivionGate
Oтносится к типу: Miscellaneous Functions

 

ForceFlee

Синтаксис:

[ActorID.]ForceFlee [ActorID.]ForceFlee CellID [ActorID.]ForceFlee CellID, ObjectRefID

Примеры:

ForceFlee ChorrolTheGreyMare ForceFlee ChorrolTheGreyMare, BongondRef

Вызов функции ForceFlee заставляет вызывающего актера (ActorID) убегать, независимо от того, сражается в данный момент актер или нет.

  • Если функция вызывается без параметров, актер будет выбирать сам, куда убегать и когда остановиться, т.е. так, как поступают обычные актеры.
  • Если функция вызывается с CellID, актер будет убегать, пока не достигнет указанной ячейки.
  • Если функция вызывается с ObjectRefID, актер будет убегать, пока не достигнет указанной цели (ObjectRefID) (в данном случае ячейка CellID будет игнорироваться, но для нормальной компиляции скрипта ее требуется обязательно указать).
  • Есть полезное побочное действие этой функции, заключающееся в том, что если вызвать ее без параметров на разговаривающем в данный момент актере, то он мгновенно прекратит разговор и оба актера немедленно возвратятся к своим текущим пакетам.

Oтносится к типу: AI Functions | Actor Functions

 

ForceTakeCover

Синтаксис:

[ActorID.]ForceTakeCover TargetID Duration

Примеры:

ForceTakeCover player 30

Функция ForceTakeCover вынуждает вызывающего актера (ActorID) отделиться от цели TargetID на указанное в секундах время (Duration).
Oтносится к типу: AI Functions | Actor Functions

 

ForceWeather

Описание: Функция ускоренной смены погоды
Синтаксис:

ForceWeather WeatherID WeatherOverrideFlag (optional)

Параметры:

WeatherID - ID объекта погоды WeatherOverrideFlag - необязательный, указывает, зафиксировать погоду или нет

Примеры:

ForceWeather Clear ForceWeather OblivionStorm 1 fw SigilWhiteOut

Функция ForceWeather позволяет установить указанную погоду (WeatherID) немедленно после вызова. Если необязательный флаг WeatherOverrideFlag указан и установлен в "1", то погода изменяться не будет до тех пор, пока не будет вызвана функция ReleaseWeatherOverride, в противном случае погода вернется к своему нормальному виду согласно текущей системы погоды в данной местности.
Тип погоды можно изменять с помощью двух функций - ForceWeather и SetWeather. Отличаются они только тем, что в первом случае переход произойдёт мгновенно, а во втором - плавно, в соответствии с настройками объекта погоды.

ID погоды для консольного использования (Console IDs):

Tamriel
CamoranWeather 000370CE Clear 00038EEE Cloudy 00038EFE DefaultWeather 0000015E Fog 00038EEF Overcast 00038EEC Rain 00038EF2 Snow 00038EED Thunderstorm 00038EF1 OblivionStormTamriel 000836D5 OblivionStormTamrielMQ16 0006BC8B
Oblivion
OblivionDefault 00032E15 OblivionElectrical 00067198 OblivionMountainFog 000671A1 OblivionSigil 000C0999 OblivionStormOblivion 00067199 SigilWhiteOut 000C42DE
Other
MS14Sky 0018BCCF

 

См. также: SetWeather, ReleaseWeatherOverride, GetCurrentWeatherPercent
Oтносится к типу: Weather Functions

 

G

 

GetActionRef

Синтаксис:

set refVar to GetActionRef

Функция GetActionRef возвращает ref-переменную объекта, который в данный момент взаимодействует с заскриптованным объектом. Доступно только тогда, когда объект активируется или включается. Функция возвращает значение только в одном фрейме сразу после взаимодействия с объектом. Это означает, что она в основном будет полезна внутри блоков OnActivate или OnTrigger.
В некоторых случаях, если заскриптованный объект взаимодействует одновременно с несколькими объектами (например, в зоне действия объекта находится несколько переключателей), функция возвратит только самый последний из объектов взаимодействия.
См. также: IsActionRef
Oтносится к типу: Reference Variable Functions

 

GetActorValue (GetAV)

Краткое описание: Возвращает текущее значение характеристики.
Синтаксис:

[ActorID.]GetActorValue StatName [ActorID.]GetAV StatName

Параметры:

ActorID - ID персонажа, необязательный StatName - название характеристики

Пример:

GetActorValue Strength

Функция GetActorValue возвращает текущее модифицированное значение характеристики (StatName) для указанного актера ActorID. GetActorValue может использоваться с любыми характеристиками, доступными персонажу игрока или актеру (NPC или существо).
См. также: Stats List (wiki), GetBaseActorValue, ModActorValue, ForceActorValue, SetActorValue
Oтносится к типу: Actor Functions | Actor Value Functions | Statistics Functions | Condition Functions

 

GetAlarmed

Синтаксис:

[ActorID.]GetAlarmed

Функция GetAlarmed возвращает истину (1), если вызывающий актер (ActorID) поднял тревогу.
Oтносится к типу: Crime Functions | Condition Functions | Actor Functions

 

GetAmountSoldStolen

Синтаксис:

GetAmountSoldStolen

Функция GetAmountSoldStolen возвращает полную сумму украденных товаров, которые игрок продал. Отметьте, что это количество золота, которое получил игрок по факту, а не базовая стоимость предметов.
См. также: ModAmountSoldStolen
Oтносится к типу: Player Functions | Condition Functions

 

GetAngle

Синтаксис:

[ActorID.]GetAngle axis

Пример:

GetAngle Z

Функция GetAngle возвращает текущий угол поворота объекта (ActorID) по выбранной оси (axis) (X, Y, или Z) в формате float относительно мировых координат.
Особые замечания (если функция вызвана на персонаже игрока):

  • Угол Z возвращается со значением от 0 до 360 град в зависимости от текущего положения головы персонажа.
  • Угол X возвращается (теоретически) в диапазоне от -90 до +90 градусов. В действительности игровой диапазон составляет -89....+89. Если игрок смотрит вверх, то предельное возвращаемое значение угла будет составлять -89 градусов, если же он смотрит вниз, на ноги, то предельное значение будет составлять +89.

Oтносится к типу: Movement Functions | Condition Functions

 

GetArmorRating

Краткое описание: Функция возвращает общий рейтинг брони.
Синтаксис:

[ActorID.]GetArmorRating

Параметры:

ActorID - ID персонажа, необязательный.

Функция GetArmorRating возвращает полный суммарный рейтинг всех доспехов, одетых в данный момент на указанного актера (ActorID).

См. также: GetArmorRatingUpperBody, GetObjectValue (OBSE)
Oтносится к типу: Statistics Functions | Condition Functions | Actor Functions

 

GetArmorRatingUpperBody

Синтаксис:

[ActorID.]GetArmorRatingUpperBody

Функция GetArmorRatingUpperBody не дает рейтинг брони (доспехов), но возвращает, какой тип (класс) брони носит актер в слоте верхней части тела.
Параметры: ActorID - ID персонажа, броню которого нужно проверить. Необязательный.

Возможные возвращаемые значения класса брони:

0 = нет брони 1 = легкая броня 2 = тяжелая броня

См. также: GetArmorRating, GetObjectValue (OBSE)
Oтносится к типу: Statistics Functions | Condition Functions | Actor Functions

 

GetAttacked

Синтаксис:

[ActorID.]GetAttacked

Функция GetAttacked возвращает 1, если вызывающий актер (ActorID) был атакован. Это значение сбрасывается, когда актер выходит из боя. Примечания:

· Не ясно, чем она отличается от функции IsInCombat.

· Не ясно, работает ли эта функция вообще...

См. также: IsInCombat
Oтносится к типу: Combat Functions | Condition Functions | Actor Functions

 

GetBarterGold

Синтаксис:

GetBarterGold

Тип: целое, неотрицательное
Функция GetBarterGold возвращает доступное для обмена количество денег (золота) у NPC. Фактически, это максимальная цена, за которую NPC может что-либо купить.
См. также: SetBarterGold, ModBarterGold
Oтносится к типу: Statistics Functions | Condition Functions

 



Поделиться:


Последнее изменение этой страницы: 2016-07-11; просмотров: 458; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.16.15.149 (0.239 с.)