ZenGin Программы Модификации Ассеты Черновик Анимации PFX/VFX Регистрация Вход
AI_AimAt() ? G G
Функция исскуственного интеллекта.
Атакующий Npc целится из оружия дальнего радиуса поражения в целевого Npc.
AI_AlignToFP() ? G G
Функция исскуственного интеллекта.
Npc выравнивается на Freepoint по направлению стрелки заданной в Spacer.
AI_AlignToWP() ? G G
Функция исскуственного интеллекта.
Npc выравнивается на Waypoint по направлению стрелки заданной в Spacer.
AI_Ask() ? G G
Функция исскуственного интеллекта.
Определяет функцию вызываемую при утвердительном и отрицательном ответах.
AI_AskText() ? G G
Функция исскуственного интеллекта.
Определяет как Npc будет отвечать на сказанную фразу.
AI_Attack() ? GG
Функция исскуственного интеллекта.
Npc начинает сражаться.
AI_CanSeeNpc() ? G G
Функция исскуственного интеллекта.
Npc может увидеть другого Npc.
AI_CombatReactToDamage() ? G G
Функция исскуственного интеллекта.
Реакция Npc на повреждение во время боя.
AI_ContinueRoutine() ? GG
Функция исскуственного интеллекта.
Npc продолжает выполнение распорядка дня.
AI_Defend() ? GG
Функция исскуственного интеллекта.
Npc парирует удар противника.
AI_Dodge() ? GG
Функция исскуственного интеллекта.
Npc отклоняется назад.
AI_DrawWeapon() ? GG
Функция исскуственного интеллекта.
Npc обнажает экипированное оружие.
AI_DropItem() ? GG
Функция исскуственного интеллекта.
Npc выбрасывает из рюкзака указанный предмет.
AI_DropMOB() ? GG
Функция исскуственного интеллекта.
Npc выбрасывает имеющийся MOB.
AI_EquipArmor() ? GG
Функция исскуственного интеллекта.
Npc экипирует указанные доспехи из инвентаря.
AI_EquipBestArmor() ? GG
Функция исскуственного интеллекта.
Npc одевает лучшие доспехи из имеющихся в инвентаре.
AI_EquipBestMeleeWeapon() ? GG
Функция исскуственного интеллекта.
Npc экипирует лучшее оружие ближнего боя.
AI_EquipBestRangedWeapon() ? GG
Функция исскуственного интеллекта.
Npc экипирует лучшее оружие дальнего боя.
AI_FinishingMove() ? GG
Функция исскуственного интеллекта.
Npc убивает другого Npc.
AI_Flee() ? GG
Функция исскуственного интеллекта.
Npc убегает от противника.
AI_GotoFP() ? GG
Функция исскуственного интеллекта.
Npc перемещается в указанный Freepoint.
AI_GotoItem() ? GG
Функция исскуственного интеллекта.
Npc перемещается к предмету инвентаря.
AI_GotoNextFP() ? GG
Функция исскуственного интеллекта.
Npc перемещается в следующий указанный Freepoint.
AI_GotoNpc() ? GG
Функция исскуственного интеллекта.
Npc перемещается к другому Npc.
AI_GotoSound() ? GG
Функция исскуственного интеллекта.
Npc перемещается к источнику звука.
AI_GotoWP() ? GG
Функция исскуственного интеллекта.
Npc перемещается в указанный Waypoint.
AI_LookAt() ? GG
Функция исскуственного интеллекта.
Npc смотрит на объект или точку.
AI_LookForItem() ? GG
Функция исскуственного интеллекта.
Поиск предметов в инвентаре.
AI_LookAtNpc() ? GG
Функция исскуственного интеллекта.
Npc смотрит на другого Npc.
AI_Output() ? GG
Функция исскуственного интеллекта.
Функция диалога.
AI_OutputSVM() ? GG
Функция исскуственного интеллекта.
Функция SVM диалога.
AI_OutputSVM_Overlay() ? GG
Функция исскуственного интеллекта.
Функция перекрывающего SVM диалога.
AI_PlayAni() ? GG
Функция исскуственного интеллекта.
Npc проигрывает анимацию.
AI_PlayAniBS() ? GG
Функция исскуственного интеллекта.
Npc проигрывает анимацию для определения состояния тела.
AI_PlayCutscene() ? GG
Функция исскуственного интеллекта.
Проигрывание игрового ролика для Npc.
AI_PlayFX() ? G
Функция исскуственного интеллекта.
Проигрывание PFX эффектов.
AI_PointAt() ? GG
Функция исскуственного интеллекта.
Npc указывает на объект или точку.
AI_PointAtNpc() ? GG
Функция исскуственного интеллекта.
Npc указывает на другого Npc.
AI_PrintScreen() ? G
Функция исскуственного интеллекта.
Вывод на экран текстовой строки.
AI_ProcessInfos() ? GG
Функция исскуственного интеллекта.
Запуск диалога с вариантами ответов.
AI_QuickLook() ? GG
Функция исскуственного интеллекта.
Npc бросает быстрый взгляд на другого Npc.
AI_ReadyMeleeWeapon() ? GG
Функция исскуственного интеллекта.
Npc подготавливает оружие ближнего боя.
AI_ReadyRangedWeapon() ? GG
Функция исскуственного интеллекта.
Npc подготавливает оружие дальнего боя.
AI_ReadySpell() ? GG
Функция исскуственного интеллекта.
Npc подготавливает заклинание.
AI_RemoveWeapon() ? GG
Функция исскуственного интеллекта.
Npc прячет оружие.
AI_SetNpcsToState() ? GG
Функция исскуственного интеллекта.
Переводит всех окружающих Npc в указанное состояние.
AI_SetWalkmode() ? GG
Функция исскуственного интеллекта.
Установка режима перемещения Npc.
AI_ShootAt() ? GG
Функция исскуственного интеллекта.
Npc стреляет из оружия дальнего боя в другого Npc.
AI_Snd_Play() ? G
Функция исскуственного интеллекта.
Воспроизведение звукового файла для Npc.
AI_Snd_Play3D() ? G
Функция исскуственного интеллекта.
Воспроизведение звукового файла в 3D для Npc.
AI_StandUp() ? GG
Функция исскуственного интеллекта.
Перевод Npc в рабочую стойку с анимацией.
AI_StandUpQuick() ? GG
Функция исскуственного интеллекта.
Перевод Npc в рабочую стойку без анимации.
AI_StartState() ? GG
Функция исскуственного интеллекта.
Перевод Npc в новое состояние.
AI_StopAim() ? GG
Функция исскуственного интеллекта.
Npc прекращает целится из оружия дальнего боя.
AI_StopFX() ? G
Функция исскуственного интеллекта.
Остановка проигрывания PFX эффектов.
AI_StopLookAt() ? GG
Функция исскуственного интеллекта.
Npc прекращает смотреть на другого Npc или объект.
AI_StopPointAt() ? GG
Функция исскуственного интеллекта.
Npc прекращает указывать на другого Npc или объект.
AI_StopProcessInfos() ? GG
Функция исскуственного интеллекта.
Завершение режима диалога.
AI_TakeItem() ? GG
Функция исскуственного интеллекта.
Npc берет предмет инвентаря.
AI_TakeMOB() ? GG
Функция исскуственного интеллекта.
Npc берет MOB.
AI_Teleport() ? GG
Функция исскуственного интеллекта.
Npc переносится на указанное место в локации.
AI_TurnAway() ? GG
Функция исскуственного интеллекта.
Npc поворачивается к другому Npc спиной.
AI_TurnToNpc() ? GG
Функция исскуственного интеллекта.
Npc поворачивается к другому Npc лицом.
AI_TurnToSound() ? GG
Функция исскуственного интеллекта.
Npc поворачивается лицом к источнику звука.
AI_UnequipArmor() ? GG
Функция исскуственного интеллекта.
Npc убирает экипированные доспехи в инвентарь.
AI_UnequipWeapons() ? GG
Функция исскуственного интеллекта.
Npc убирает экипированное оружие инвентарь.
AI_UnreadySpell() ? GG
Функция исскуственного интеллекта.
Npc убирает активное заклинание в инвентарь.
AI_UseItem() ? GG
Функция исскуственного интеллекта.
Npc использует предмет инвентаря.
AI_UseItemToState() ? GG
Функция исскуственного интеллекта.
Npc использует предмет инвентаря до указанного состояния анимации.
AI_UseMOB() ? GG
Функция исскуственного интеллекта.
Npc использует MOB до указанного состояния анимации.
AI_Wait() ? GG
Функция исскуственного интеллекта.
Npc переводится в режим ожидания на несколько секунд.
AI_WaitForQuestion() ? GG
Функция исскуственного интеллекта.
Npc переводится в режим ожидания ответа.
AI_WaitMs() ? GG
Функция исскуственного интеллекта.
Npc переводится в режим ожидания на несколько милисекунд.
AI_WaitTillEnd() ? GG
Функция исскуственного интеллекта.
Npc ждет ответа на свою фразу.
AI_WhirlAround() ? GG
Функция исскуственного интеллекта.
Npc быстро поворачивается к другому Npc лицом.
AI_WhirlAroundToSource() ? GG
Функция исскуственного интеллекта.
Npc быстро поворачивается лицом к источнику.
Apply_Options_Audio() ? GG
Функция игрового меню.
Применить аудио настройки.
Apply_Options_Controls() ? GG
Функция игрового меню.
Применить настройки клавиатуры.
Apply_Options_Game() ? GG
Функция игрового меню.
Применить настройки параметров игры.
Apply_Options_Performance() ? GG
Функция игрового меню.
Применить настройки производительности.
Apply_Options_Video() ? GG
Функция игрового меню.
Применить настройки видео.
ConcatStrings() ? GG
Функция преобразования типов.
Объединение двух строк.
CreateInvItem() ? GG
Функция инвентаря.
Создать в инвентаре Npc указанный предмет.
CreateInvItems() ? GG
Функция инвентаря.
Создать в инвентаре Npc указанные предметы.
Doc_Create() ? GG
Функция документа.
Создать новый документ.
Doc_CreateMap() ? GG
Функция документа.
Создать новую карту локации.
Doc_Font() ? GG
Функция документа.
Задать шрифт для документа.
Doc_MapCoordinates() ? GG
Функция документа.
Определение координат для карты локации.
Doc_Open() ? GG
Функция документа.
Отобразить фоновый рисунок документа на экране.
Doc_Print() ? GG
Функция документа.
Отобразить текст документа на экране.
Doc_PrintLine() ? GG
Функция документа.
Вывести строку текста на странице документа.
Doc_PrintLines() ? GG
Функция документа.
Вывести многострочный текст на странице документа.
Doc_SetFont() ? GG
Функция документа.
Задать шрифт для страницы.
Doc_SetLevel() ? GG
Функция документа.
Задать игровую локацию для карты.
Doc_SetLevelCoords() ? G
Функция документа.
Задать границы области отображаемой на карте.
Doc_SetMargins() ? GG
Функция документа.
Установить отступ страницы.
Doc_SetPage() ? GG
Функция документа.
Настроить параметры страницы.
Doc_SetPages() ? GG
Функция документа.
Задает количество страниц для документа.
Doc_Show() ? GG
Функция документа.
Показать созданный документ на экране.
EquipItem() ? GG
Функция инвентаря.
Экипировать Npc предметом инвентаря.
ExitGame() ? GG
Общая игровая функция.
Закончить сеанс игры.
ExitSession() ? G
Общая игровая функция.
Закончить сеанс игры.
FloatToInt() ? GG
Функция преобразования типов.
Преобразование числа с плавающей точкой в целое.
FloatToString() ? GG
Функция преобразования типов.
Преобразование числа с плавающей точкой в строку.
Game_InitEngintl() ? G
Общая игровая функция.
Инициализация игры основанной на Акелловской локализации.
Game_InitEnglish() ? G
Общая игровая функция.
Инициализация англоязычной версии игры.
Game_InitGerman() ? G
Общая игровая функция.
Инициализация немецкой версии игры.
Hlp_CutscenePlayed() ? GG
Вспомогательная функция.
Информирует, проигрывался ли игровой ролик.
Hlp_GetInstanceID() ? GG
Вспомогательная функция.
Получить идентификатор инстанции Npc или объекта инвентаря.
Hlp_GetNpc() ? GG
Вспомогательная функция.
Получить ссылку на Npc.
Hlp_IsItem() ? GG
Вспомогательная функция.
Проверяет принадлежность предмета инвентаря к соответствующему типу.
Hlp_IsValidItem() ? GG
Вспомогательная функция.
Проверка предмета инвентаря на существование.
Hlp_IsValidNpc() ? GG
Вспомогательная функция.
Проверка Npc на существование.
Hlp_Random() ? GG
Вспомогательная функция.
Генерирование случайного числа.
Hlp_StrCmp() ? GG
Вспомогательная функция.
Сравнение двух строк.
InfoManager_HasFinished() ? GG
Функции диалогов.
Проверяет завершен ли диалог.
Info_AddChoice() ? GG
Функции диалогов.
Добавляет в меню диалога новую строку.
Info_ClearChoices() ? GG
Функции диалогов.
Удалить строки в диалоге.
IntToFloat() ? GG
Функции преобразования типов.
Преобразование целого числа в число с плавающей точкой.
IntToString() ? GG
Функции преобразования типов.
Преобразование целого числа в строку.
IntroduceChapter() ? GG
Общие игровые функции.
Вывести на экран окно новой главы.
Log_AddEntry() ? GG
Функция журнала квестов.
Сделать в теме новую запись.
Log_CreateTopic() ? GG
Функция журнала квестов.
Создать в разделе новую тему.
Log_SetTopicStatus() ? GG
Функция журнала квестов.
Установить статус темы.
Mdl_ApplyOverlayMDS() ? GG
Функция анимации модели.
Применить новую анимацию к Npc.
Mdl_ApplyOverlayMDSTimed() ? GG
Функция анимации модели.
Временно применить новую анимацию к Npc.
Mdl_ApplyRandomAni() ? GG
Функция анимации модели.
Запустить случайные анимации.
Mdl_ApplyRandomAniFreq() ? GG
Функция анимации модели.
Изменить частоту смены случайных анимаций.
Mdl_ApplyRandomFaceAni() ? GG
Функция анимации модели.
Запустить случайную лицевую анимацию.
Mdl_RemoveOverlayMDS() ? GG
Функция анимации модели.
Отключить указанную анимацию у Npc.
Mdl_SetModelFatness() ? GG
Функция анимации модели.
Настройка толщины модели Npc.
Mdl_SetModelScale() ? GG
Функция анимации модели.
Настройка масштаба модели Npc.
Mdl_SetVisual() ? GG
Функция анимации модели.
Настройка MDS модели Npc.
Mdl_SetVisualBody() ? GG
Функция анимации модели.
Настройка визуализации модели Npc.
Mdl_StartFaceAni() ? GG
Функция анимации модели.
Запуск лицевой анимации.
Mis_AddMissionEntry() ? GG
Функция миссии.
Создать новую миссию.
Mis_GetStatus() ? GG
Функция миссии.
Получить текущий статус миссии.
Mis_OnTime() ? GG
Функция миссии.
Проверка срока выполнения миссии.
Mis_RemoveMission() ? GG
Функция миссии.
Удалить миссию.
Mis_SetStatus() ? GG
Функция миссии.
Установить статус миссии.
MOB_CreateItems() ? GG
Функция инвентаря.
Создать в контейнере предметы инвентаря.
MOB_HasItems() ? GG
Функция инвентаря.
Получить количество предметов инвентаря в контейнере.
Npc_AreWeStronger() ? GG
Функция Npc.
Определение более сильного Npc.
Npc_CanSeeItem() ? GG
Функция Npc.
Определяет может ли Npc видеть предмет инвентаря.
Npc_CanSeeNpc() ? GG
Функция Npc.
Определяет может ли Npc видеть другого Npc.
Npc_CanSeeNpcFreeLOS() ? GG
Функция Npc.
Определяет может ли Npc видеть другого Npc по прямой.
Npc_CanSeeSource() ? GG
Функция Npc.
Определяет может ли Npc видеть источник звука.
Npc_ChangeAttribute() ? GG
Функция Npc.
Изменение значения атрибута Npc.
Npc_CheckAvailableMission() ? GG
Функция Npc.
Проверка доступных миссии у Npc.
Npc_CheckInfo() ? GG
Функция Npc.
Определяет, есть ли у Npc важная для игрока информация.
Npc_CheckOfferMission() ? GG
Функция Npc.
Проверка миссии в которой Npc может что-либо предложить.
Npc_CheckRunningMission() ? GG
Функция Npc.
Проверка активных миссий.
Npc_ClearAIQueue() ? GG
Функция Npc.
Удаление всех AI команд из очереди.
Npc_ClearInventory() ? G
Функция Npc.
Очищает весь инвентарь Npc.
Npc_CreateSpell() ? GG
Функция Npc.
Npc активирует заклинание.
Npc_DeleteNews() ? GG
Функция Npc.
Удаляет новость для Npc.
Npc_ExchangeRoutine() ? GG
Функция Npc.
Смена распорядка дня Npc.
Npc_GetActiveSpell() ? GG
Функция Npc.
Возврат номера активного заклинания.
Npc_GetActiveSpellCat() ? GG
Функция Npc.
Возврат номера категории активного заклинания.
Npc_GetActiveSpellIsScroll() ? G
Функция Npc.
Проверяется, является ли активное заклинание свитком.
Npc_GetActiveSpellLevel() ? GG
Функция Npc.
Возвращает уровень активного заклинания Npc.
Npc_GetAttitude() ? GG
Функция Npc.
Получить текущее отношении Npc к другому Npc.
Npc_GetBodyState() ? GG
Функция Npc.
Возврат состояния в котором находится Npc.
Npc_GetComrades() ? GG
Функция Npc.
Проверка, есть ли у Npc друзья.
Npc_GetDetectedMob() ? GG
Функция Npc.
Возврат имени активного MOB объекта.
Npc_GetDistToItem() ? GG
Функция Npc.
Получить расстояние между Npc и предметом инвентаря.
Npc_GetDistToNpc() ? GG
Функция Npc.
Получить расстояние между двумя Npc.
Npc_GetDistToPlayer() ? GG
Функция Npc.
Получить расстояние между Npc и главным героем.
Npc_GetDistToWP() ? GG
Функция Npc.
Получить расстояние между Npc и Waypoint.
Npc_GetEquippedArmor() ? GG
Функция Npc.
Получить ссылку на экипированные доспехи Npc.
Npc_GetEquippedMeleeWeapon() ? GG
Функция Npc.
Получить ссылку на экипированное оружие ближнего боя у Npc.
Npc_GetEquippedRangedWeapon() ? GG
Функция Npc.
Получить ссылку на экипированное оружие дальнего боя у Npc.
Npc_GetGuildAttitude() ? GG
Функция Npc.
Получить отношение гильдий двух Npc.
Npc_GetHeightToItem() ? G
Функция Npc.
Получить высоту между Npc и предметом инвентаря.
Npc_GetHeightToNpc() ? G
Функция Npc.
Получить высоту между двумя Npc.
Npc_GetInvItem() ? GG
Функция Npc.
Получить ссылку на предмет инвентаря Npc.
Npc_GetInvItemBySlot() ? G
Функция Npc.
Получить количество указанных предметов в инвентаре Npc.
Npc_GetLastHitSpellCat() ? G
Функция Npc.
Получить категорию последнего примененного заклинания Npc.
Npc_GetLastHitSpellID() ? G
Функция Npc.
Получить номер последнего примененного заклинания Npc.
Npc_GetLookAtTarget() ? G
Функция Npc.
Получить ссылку на Npc на которого смотрит другой Npc.
Npc_GetNearestWP() ? GG
Функция Npc.
Получить название Waypoint в котором находится Npc.
Npc_GetNewsOffender() ? GG
Функция Npc.
Получить ссылку на приступника события.
Npc_GetNewsVictim() ? GG
Функция Npc.
Получить ссылку на жертву события.
Npc_GetNewsWitness() ? GG
Функция Npc.
Получить ссылку на свидетеля события.
Npc_GetNextTarget() ? GG
Функция Npc.
Выполнить активный поиск цели.
Npc_GetNextWP() ? GG
Функция Npc.
Получить имя соседнего Waypoint по отношению к Npc.
Npc_GetPermAttitude() ? GG
Функция Npc.
Получить постоянное отношение одного Npc к другому.
Npc_GetPortalGuild() ? G
Функция Npc.
Получить номер гильдии владельца помещения.
Npc_GetPortalOwner() ? G
Функция Npc.
Получить ссылку на Npc владельца помещения.
Npc_GetReadiedWeapon() ? GG
Функция Npc.
Получить ссылку на оружие, которое Npc держит в руке.
Npc_GetStateTime() ? GG
Функция Npc.
Получить сколько секунд Npc находится в текущем состоянии анимации.
Npc_GetTalentSkill() ? GG
Функция Npc.
Получить уровень навыка.
Npc_GetTalentValue() ? GG
Функция Npc.
Получить количество единиц навыка.
Npc_GetTarget() ? GG
Функция Npc.
Проверка существования у Npc цели для атаки.
Npc_GetTrueGuild() ? GG
Функция Npc.
Получить номер гильдии Npc.
Npc_GiveInfo() ? GG
Функция Npc.
Проверяет, есть ли у Npc информация для Npc.
Npc_GiveItem() ? GG
Функция Npc.
Npc получает предмет инвентаря от другого Npc.
Npc_HasBodyFlag() ? GG
Функция Npc.
Проверить, установлен ли у Npc указанный флаг состояния.
Npc_HasDetectedNpc() ? GG
Функция Npc.
Проверить поддержку чувств у Npc.
Npc_HasEquippedArmor() ? GG
Функция Npc.
Проверить наличие у Npc экипированных доспехов.
Npc_HasEquippedMeleeWeapon() ? GG
Функция Npc.
Проверить наличие у Npc экипированного оружия ближнего боя.
Npc_HasEquippedRangedWeapon() ? GG
Функция Npc.
Проверить наличие у Npc экипированного оружия дальнего боя.
Npc_HasEquippedWeapon() ? GG
Функция Npc.
Проверить наличие у Npc экипированного оружия.
Npc_HasItems() ? GG
Функция Npc.
Возвращает количество указанных предметов в инвентаре у Npc.
Npc_HasNews() ? GG
Функция Npc.
Проверить знает ли Npc указанную новость.
Npc_HasOffered() ? GG
Функция Npc.
Проверяет есть ли у одного Npc предмет для передачи другому.
Npc_HasRangedWeaponWithAmmo() ? GG
Функция Npc.
Проверяет есть ли у Npc в руках или в инвентаре оружие дальнего боя с боеприпасами.
Npc_HasReadiedMeleeWeapon() ? GG
Функция Npc.
Проверяет держит ли Npc в руках оружие ближнего боя.
Npc_HasReadiedRangedWeapon() ? GG
Функция Npc.
Проверяет держит ли Npc в руках оружие дальнего боя.
Npc_HasReadiedWeapon() ? GG
Функция Npc.
Проверяет держит ли Npc в руках оружие.
Npc_HasSpell() ? GG
Функция Npc.
Проверяет может ли Npc использовать заклинание.
Npc_HasTalent() ? GG
Функция Npc.
Проверяет владеет ли Npc указанным талантом.
Npc_IsAiming() ? GG
Функция Npc.
Проверяет целится ли Npc в другого Npc оружием дальнего боя или магией.
Npc_IsDead() ? GG
Функция Npc.
Проверяет мертв ли Npc.
Npc_IsDetectedMOBOwnerByGuild() ? GG
Функция Npc.
Проверяет какой гильдии принадлежит MOB, который использует Npc.
Npc_IsDetectedMobOwnerByNpc() ? GG
Функция Npc.
Проверяет какому владельцу принадлежит MOB, который использует Npc.
Npc_IsDrawingSpell() ? G
Функция Npc.
Возвращает номер заклинания, которое использует Npc.
Npc_IsDrawingWeapon() ? GG
Функция Npc.
Возвращает номер оружия, которое Npc держит в руках.
Npc_IsInCutscene() ? GG
Функция Npc.
Определяет, находится ли Npc в игровом ролике во время его проигрывания.
Npc_IsInFightMode() ? GG
Функция Npc.
Определяет, находится ли Npc в боевом режиме.
Npc_IsInPlayersRoom() ? G
Функция Npc.
Определяет, находится ли Npc в помещении, которое принадлежит главному герою.
Npc_IsInRoutine() ? GG
Функция Npc.
Проверяет выполняет ли Npc указанный распорядок дня.
Npc_IsInState() ? GG
Функция Npc.
Запрос на текущее состояние анимации фигуры Npc.
Npc_IsNear() ? GG
Функция Npc.
Определяет, что Npc находится на расстоянии не далее 3 метров.
Npc_IsNewsGossip() ? GG
Функция Npc.
Проверяет, является ли новость для Npc сплетней.
Npc_IsNextTargetAvailable() ? GG
Функция Npc.
Выполнить активный поиск цели для Npc без инициализации переменных.
Npc_IsOnFP() ? GG
Функция Npc.
Проверяет, находится ли Npc в Freepoint точке с указанным именем.
Npc_IsPlayer() ? GG
Функция Npc.
Проверяет, находится ли Npc главным героем.
Npc_IsPlayerInMyRoom() ? GG
Функция Npc.
Проверяет, находится ли главный герой в помещении другого Npc, или гильдии этого Npc.
Npc_IsVoiceActive() ? GG
Функция Npc.
Определяет, разговаривает ли Npc в данный момент.
Npc_IsWayBlocked() ? GG
Функция Npc.
Проверяет наличие припятствий на пути Npc.
Npc_KnowsInfo() ? GG
Функция Npc.
Проверяет знает ли Npc указанную информацию или нет.
Npc_KnowsPlayer() ? GG
Функция Npc.
Проверяет знаком ли Npc с главным героем.
Npc_LearnSpell() ? GG
Функция Npc.
Npc выучил заклинание и может его использовать.
Npc_MemoryEntry() ? GG
Функция Npc.
Функция записывания новостей для Npc.
Npc_MemoryEntryGuild() ? GG
Функция Npc.
Функция записывания новостей для всей гильдии.
Npc_OwnedByGuild() ? GG
Функция Npc.
Проверка на принадлежность предмета инвентаря указанной гильдии.
Npc_OwnedByNpc() ? GG
Функция Npc.
Проверка на принадлежность предмета инвентаря указанному Npc.
Npc_PercDisable() ? GG
Функция Npc.
Функция отключения восприятия у Npc.
Npc_PercEnable() ? GG
Функция Npc.
Функция включения восприятия у Npc.
Npc_PerceiveAll() ? GG
Функция Npc.
Функция разрешает Npc воспринимать все объекты в зоне действия восприятия.
Npc_PlayAni() ? GG
Функция Npc.
Воспроизвести анимацию для Npc.
Npc_RefuseTalk() ? GG
Функция Npc.
Функция проверяет истек ли у Npc счетчик отказа от диалога.
Npc_RemoveInvItem() ? GG
Функция Npc.
Удаление предмета из инвентаря Npc и из игры.
Npc_RemoveInvItems() ? GG
Функция Npc.
Удаление указанного количества предметов из инвентаря Npc и из игры.
Npc_SendPassivePerc() ? GG
Функция Npc.
Функция посылки пассивного восприятия от Npc.
Npc_SendSinglePerc() ? GG
Функция Npc.
Функция посылки восприятия от Npc.
Npc_SetActiveSpellInfo() ? GG
Функция Npc.
Задает любое значение для активного заклинания.
Npc_SetAttitude() ? GG
Функция Npc.
Установить постоянное отношение одного Npc ко всем остальным.
Npc_SetKnowsPlayer() ? GG
Функция Npc.
Установить, что Npc знаком с главным героем.
Npc_SetPercTime() ? GG
Функция Npc.
Установка времени реакции Npc для активного восприятия.
Npc_SetRefuseTalk() ? GG
Функция Npc.
Установка счетчика отказа от диалога для Npc.
Npc_SetStateTime() ? GG
Функция Npc.
Функция установки времени нахождения Npc в указанном состоянии.
Npc_SetTalentSkill() ? GG
Функция Npc.
Установить уровень навыка.
Npc_SetTalentValue() ? GG
Функция Npc.
Установить количество единиц владения навыком.
Npc_SetTarget() ? GG
Функция Npc.
Установить Npc внутреннюю цель для поражения.
Npc_SetTeleportPos() ? G
Функция Npc.
Запомнить последнее положение Npc при телепортации.
Npc_SetTempAttitude() ? GG
Функция Npc.
Установить временное отношение Npc к другим Npc.
Npc_SetToFightMode() ? GG
Функция Npc.
Перевод Npc в режим боя с выбранным оружием.
Npc_SetToFistMode() ? GG
Функция Npc.
Перевод Npc в боевой режим.
Npc_SetTrueGuild() ? GG
Функция Npc.
Установить принадлежность Npc к гильдии.
Npc_StartItemReactModules() ? GG
Функция Npc.
Проверка модулей ItemReact для реакции на предметы инвентаря.
Npc_StopAni() ? G
Функция Npc.
Остановить проигрывание анимации Npc.
Npc_WasInState() ? GG
Функция Npc.
Запрос на предыдущее состояние фигуры Npc.
Npc_WasPlayerInMyRoom() ? GG
Функция Npc.
Проверка главного героя на нахождение в помещении Npc или гильдии.
Perc_SetRange() ? GG
Общие игровые функции.
Установка дальности пассивного восприятия.
PlayVideo() ? GG
Функция видео.
Показать видео файл.
PlayVideoEx() ? G
Функция видео.
Показать видео файл с выходом из сессии игры.
Print() ? GG
Функция вывода текста.
Вывод на экран строки текста.
PrintDebug() ? GG
Функция вывода текста.
Вывод строки текста через zSpy.
PrintDebugCh() ? GG
Функция вывода текста.
Вывод строки текста через zSpy для канала.
PrintDebugInst() ? GG
Функция вывода текста.
Вывод строки текста через zSpy для инстанции.
PrintDebugInstCh() ? GG
Функция вывода текста.
Вывод строки текста через zSpy для инстанции и канала.
PrintDialog() ? GG
Функция вывода текста.
Вывод строки текста в окно диалога.
PrintMulti() ? GG
Функция вывода текста.
В случайном порядке выводит одну из пяти строк указанных в качестве аргументов.
PrintScreen() ? GG
Функция вывода текста.
Вывод на экран строки текста с настройкой шрифта, размера и др.
Rtn_Exchange() ? GG
Функция распорядка дня.
Функция смены распорядка дня.
SetPercentDone() ? GG
Общая игровая функция.
Установить процент отображения полосы в окне загрузки игры.
Snd_GetDistToSource() ? GG
Функция звука.
Получить расстояние до источника звука.
Snd_IsSourceItem() ? GG
Функция звука.
Проверить, является ли предмет у Npc источником звука.
Snd_IsSourceNpc() ? GG
Функция звука.
Проверить, является ли Npc источником звука.
Snd_Play() ? GG
Функция звука.
Воспроизвести звуковой эффект.
Snd_Play3D() ? GG
Функция звука.
Воспроизвести звуковой эффект для Npc.
TA() ? GG
Функция распорядка дня.
Задать функцию распорядка дня.
TA_BeginOverlay() ? GG
Функция распорядка дня.
Начать выполнять описанный распорядок дня.
TA_CS() ? GG
Функция распорядка дня.
Функция, выполняемая последней в списке функций распорядка дня.
TA_EndOverlay() ? GG
Функция распорядка дня.
Закончить выполнять описанный распорядок дня.
TA_Min() ? GG
Функция распорядка дня.
Задать функцию распорядка дня по времени.
TA_RemoveOverlay() ? GG
Функция распорядка дня.
Удалить заявленный распорядок дня.
Tal_Configure() ? GG
Общая игровая функция.
Переопредилить значение таланта.
Update_ChoiceBox() ? GG
Функция игрового меню.
Сохранить новые значения аудио или видео параметров.
Wld_AssignRoomToGuild() ? GG
Функция игрового мира.
Установить гильдию владельцем пространства.
Wld_AssignRoomToNpc() ? GG
Функция игрового мира.
Установить Npc владельцем пространства.
Wld_DetectItem() ? GG
Функция игрового мира.
Функция инициализирует глобальную переменную Item.
Wld_DetectNpc() ? GG
Функция игрового мира.
Функция инициализирует глобальную переменную Npc.
Wld_DetectNpcEx() ? GG
Функция игрового мира.
Функция инициализирует глобальную переменную Npc с исключением главного героя из поиска.
Wld_DetectNpcExAtt() ? G
Функция игрового мира.
Функция инициализирует глобальную переменную Npc с исключением главного героя из поиска и учетом отношения Npc к гильдии.
Wld_DetectPlayer() ? GG
Функция игрового мира.
Проверка существования главного героя.
Wld_ExchangeGuildAttitudes() ? GG
Функция игрового мира.
Установить взаимоотношения между гильдиями.
Wld_GetDay() ? GG
Функция игрового мира.
Получить текущий день.
Wld_GetFormerPlayerPortalGuild() ? GG
Функция игрового мира.
Получить номер гильдии которой принадлежит покинутое помещение.
Wld_GetFormerPlayerPortalOwner() ? GG
Функция игрового мира.
Получить ссылку на Npc которому принадлежит покинутое помещение.
Wld_GetGuildAttitude() ? GG
Функция игрового мира.
Получить отношение между гильдиями.
Wld_GetMOBState() ? GG
Функция игрового мира.
Получить состояние MOB.
Wld_GetPlayerPortalGuild() ? GG
Функция игрового мира.
Получить номер гильдии которой принадлежит помещение.
Wld_GetPlayerPortalOwner() ? GG
Функция игрового мира.
Получить сылку на Npc которому принадлежит помещение.
Wld_InsertItem() ? GG
Функция игрового мира.
Разместить в игровом мире предмет инвентаря.
Wld_InsertNpc() ? GG
Функция игрового мира.
Разместить в игровом мире Npc.
Wld_InsertNpcAndRespawn() ? GG
Функция игрового мира.
Разместить в игровом мире Npc с респауном.
Wld_InsertObject() ? GG
Функция игрового мира.
Разместить в игровом мире виртуальный объект.
Wld_IsFPAvailable() ? GG
Функция игрового мира.
Поиск Freepoint по имени в радиусе 20 метров.
Wld_IsMOBAvailable() ? GG
Функция игрового мира.
Поиск MOB по имени в радиусе 10 метров.
Wld_IsNextFPAvailable() ? GG
Функция игрового мира.
Поиск следующего Freepoint по имени в радиусе 20 метров.
Wld_IsRaining() ? G
Функция игрового мира.
Проверить идет ли дождь.
Wld_IsTime() ? GG
Функция игрового мира.
Функция определяет, входит ли текущее время в указанный диапазон.
Wld_PlayEffect() ? GG
Функция игрового мира.
Проиграть визуальный эффект.
Wld_RemoveItem() ? GG
Функция игрового мира.
Удалить из мира предмет инвентаря по ссылке.
Wld_RemoveNpc() ? GG
Функция игрового мира.
Удалить из мира Npc по ссылке.
Wld_SendTrigger() ? GG
Функция игрового мира.
Послать триггер объекту игрового мира.
Wld_SendUntrigger() ? GG
Функция игрового мира.
Послать антриггер объекту игрового мира.
Wld_SetGuildAttitude() ? GG
Функция игрового мира.
Установить отношение между гильдиями.
Wld_SetMOBRoutine() ? GG
Функция игрового мира.
Перевести MOB в определенное состояние анимации.
Wld_SetObjectRoutine() ? GG
Функция игрового мира.
Перевести объект в определенное состояние анимации.
Wld_SetTime() ? GG
Функция игрового мира.
Установить текущее время игрового мира.
Wld_SpawnNpcRange() ? GG
Функция игрового мира.
Создать группу Npc вокруг другого Npc.
Wld_StopEffect() ? G
Функция игрового мира.
Остановить проигрывание визуального эффекта.

3D Модели

Содержание +

3DS Max Анимации и 3D-поверхности -

Динамическая модель состоит из иерархии костей (скелет), одной или нескольких 3D-поверхностей, привязанных к этому скелету, а также соответствующего набора анимаций. Иерархия костей, 3D-поверхности и анимация создаются в 3D Studio Max. Для того, чтобы ZenGin смог обработать созданную анимацию, её необходимо экспортировать с помощью специального плагина для 3D Studio Max ("zenexp.dle"). Файлы экспортируются в формате *.ASC и должны быть сохранены в папке "GOTHIC\_WORK\DATA\ANIMS\", чтобы ZenGin смог их найти.

При создании 3D-поверхностей, иерархии костей и анимации, которые впоследствии будут импортироваться движком игры, нужно обратить внимание на следующие особенности:

  1. В ASC файлах, используемых для модели, одинаковые узлы иерархии модели должны называться одинаково. Следующие названия приведут к ошибкам:
    • Файл "jump_up.ASC" содержит узел ZM_Hand_R.
    • Файл "jump_back.ASC" содержит узел ZM_HandR.
  2. Начальная часть имени узла указывает на то, каким образом этот узел должен использоваться. Ниже приведен список используемых префиксов.
  3. Примечание
    Каждый узел должен начинаться с одного из этих префиксов, в противном случае узел будет проигнорирован.
    • BIP01 - Узлы с таким именем игнорируют 3D-поверхность, в которую они встроены, и просчитывают только ее анимацию.
    • ZM_* - Узлы 3D-поверхности. Из таких узлов в движок Gothic импортируются только 3D-поверхности. Узлы этого типа должны всегда замыкаться на узел Bip01. Анимация узла игнорируется.
    • ZS_* - Слот-узлы. В этих узлах 3D-поверхности динамически связываются один с другим. Узлы этого типа должны всегда замыкаться на узел Bip01. Анимация этих узлов просчитывается.
  4. Масштабирование во время анимации запрещено.
  5. Единственные виды объектов, которые учитываются - это объекты геометрии и вспомогательные объекты. Оба вида объектов обрабатываются одинаково.

Анимация частей тела:

Узлы, которые должны быть зафиксированы во время проигрывания анимации движком, обозначаются словом FIX или FIXSUB. FIX фиксирует только анимацию одного узла, тогда как FIXSUB вдобавок фиксирует анимацию всех дочерних узлов. Это правило распространяется только на узлы с префиксом BIP01 или ZS_*.

Пример:

Для экспорта 3D-геометрии и анимации используется плагин 3DS-MAX-ASCII Exporter. При этом 3D-геометрию и анимацию необходимо сохранять в разные *.ASC файлы (см. Спецификацию MDS).

Примечание
Иерархия костей экспортируется в любом случае.

Для экспорта 3D-геометрии, а также анимации, в экспортере должны быть активированы следующие опции (не указанные опции нужно, соответственно, отключить):

Для экспорта только 3D-геометрии в экспортере должны быть активированы следующие опции:

Для экспорта только анимации в экспортере должны быть активированы следующие опции:

Формат MDS +

Сценарий динамической модели выглядит примерно следующим образом:

Рассмотрим разделы скрипта по отдельности.

meshAndTree +

Первым аргументом в сценарии необходимо указать *.ASC файл, содержащий описание скелета в нейтральной позе и 3D-геометрию модели. При экспорте из 3D Studio Max обязательно укажите, какие данные должен содержать файл.

meshAndTree ("Hum_Body_Naked0.ASC" DONT_USE_MESH)

Вторым аргументом является ключевое слово DONT_USE_MESH, которое можно опустить. Если аргумент прописан, то каждая новая инстанция в игре будет создаваться без 3D-геометрии. Такой подход используется для моделей персонажей и монстров, для которых может быть создана различная 3D-геометрия, определяемая в скриптах. Если все новые инстанции будут использовать одну и ту же 3D-геометрию, то второй аргумент указывать не нужно. В данном случае будет использована 3D-геометрия, указанная в качестве первого аргумента конструкции meshAndTree.

registerMesh +

Если модель использует различную 3D-геометрию (броня, одежда и т.д.), то такая геометрия должна быть объявлена с помощью команды registerMesh. В качестве аргумента указывается *.ASC файл, содержащий регистрируемую 3D-геометрию и скелет.

registerMesh ("Hum_Body_Naked0.ASC") registerMesh ("Hum_Body_CookSmith.ASC")

aniEnum +

Конструкция, отвечающая за воспроизведение фаз анимации, с указанием некоторых параметров. Существует различные способы определения анимации. Однако, для программной логики игры разницы между ними нет.

ani +

Пример:

ani ("s_stand" 1 "s_stand" 0.5 0.5 M. "pause.asc" F 0 -1)

Синтаксис:

ani (ANI_NAME LAYER NEXT_ANI BLEND_IN BLEND_OUT FLAGS ASC_NAME ANI_DIR START_FRAME END_FRAME)

Описание параметров:

ANI_NAME
Имя фазы анимации. При наименовании необходимо учитывать одно правило. Фазы анимации делятся на различные группы. Принадлежность к группе определяется по префиксу:
  • s_: State-Ani (состояние анимации)
  • t_: Transition-Ani (переход состояния анимации)
LAYER
Слой анимации (от 1 до 9999999...).
Правило
В одно и то же время в одном слое может воспроизводиться только одна анимация. Анимации разных слоев могут воспроизводиться одновременно. При этом слой с большим порядковым номером имеет приоритет и перекрывает слой с меньшим номером.
NEXT_ANI
Фаза анимации, которая будет проигрываться после окончания текущей фазы. Фаза состояния имеет приставку s_, т.е. в этом случае ANI_NAME равняется NEXT_ANI. Фазы перехода имеют приставку имени t_, т.е. в этом случае ANI_NAME должно иметь приставку t_, а NEXT_ANI приставку s_. Случайные фазы анимации в качестве NEXT_ANI имеют пустую строку.
BLEND_IN
Время в секундах, в течении которого проигрывается анимация. От 0% до 100%. Например: Если BLEND_IN = 0.75 секунд, то мы получим следующее:
  • При t=0 секунд (происходит запуск анимации в 0 кадре) проигрывание анимации - 0%;
  • При t=0.5 секунд проигрывание анимации - 66%;
  • При t=0.75 проигрывание анимации = 100%;
  • При t=1 проигрывание анимации остается 100%.
BLEND_OUT
Время в секундах, в течение которого проигрывание анимации возвращается от 100% (или текущего значения) до 0%. Возвращение анимации начинается только после проигрывания последнего кадра анимации.
FLAGS
Поле FLAGS является строкой, состоящей из одной буквы. Если флаг не устанавливается, то необходимо ставить точку . . Лишние точки игнорируются.
Флаги бывают следующих видов:
  • M: Перемещение модели, которое задано в 3D Studio Max, передается при проигрывании визуальному объекту (Vob), в котором находится модель. Если этот флаг отсутствует, анимация не вызывает перемещение модели в игре.
  • R: Вращение модели, условия аналогичны флагу М.
  • E: Этот флаг следит за тем, чтобы анимация не запускалась до тех пор, пока текущая анимация в том же слое не достигнет последнего кадра и не закончится. Рассмотрим следующий пример с анимациями, для которых уже существуют *.ASC-файлы:
    • ani "s_walk"
    • ani "t_walk_2_stand"
    • ani "s_stand"
    Для анимации t_walk_2_stand есть смысл поставить флаг E. Так как эта фаза анимации имеет свой *.ASC файл, она должна точно подходить предыдущей фазе t_walk_2_stand. Если флаг E будет отсутствовать, то запуск следующей фазы анимации t_walk_2_stand будет выполнен в игре сразу после отпускания клавиши передвижения, в результате непроигранные кадры из BLEND_OUT фазы будут пропущены, это приведет к оборванности движения, что будет смотреться не очень красиво. С флагом Е, наоборот, сначала проиграется анимация s_walk, и лишь затем начнется проигрывание анимации перехода t_walk_2_stand в состояние остановки персонажа. Все ясно?

  • F: Если этот флаг установлен, то позиция высоты модели не выравнивается относительно высоты земли, на которой модель находится. (F от слова "Fly - парящий").
  • I: Флаг - простая анимация (Idle). Такая анимация незначительно перемещает модель и позволяет движку игры оптимизировать проигрывание этой фазы анимации. Пример: анимация человека, который спокойно стоит и дышит.
ASC_NAME
Имя ASC-файла 3D Studio Max.
ANI_DIR
Направление, в котором будет проигрываться фаза анимации. Возможные значения:
  • R - Реверсивное
  • F - Прямое.
START_FRAME / END_FRAME
Начальный и конечный фрейм фазы анимации. Значение -1 говорит, что проигрываются все фреймы до конца, как задано ASC файлом.

aniAlias +

Пример:

aniAlias ("t_strafe_r" 1 "s_stand" 0.1 0.1 M. "t_strafe_l" R)

Синтаксис:

aniAlias (ANI_NAME LAYER NEXT_ANI BLEND_IN BLEND_OUT FLAGS ALIAS_NAME ANI_DIR)

Команда aniAlias определяет фазу анимации, которая уже создана и используется, но может быть применена с другими параметрами.

Пример:

ani ("t_strafe_l" 1 "s_stand" 0.1 0.1 M. "Strafe_Left.asc" F 0 -1) aniAlias ("t_strafe_r" 1 "s_stand" 0.1 0.1 M. "t_strafe_l" R)

Эти две фазы анимации различаются только параметром ANI_DIR и именами соответственно.

ALIAS_NAME
Имя фазы анимации, послужившей основой для анимации, с новыми параметрами.

aniBlend +

Пример:

aniBlend ( "t_stand_2_run" "s_run" )

Синтаксис:

aniBlend (ANI_NAME NEXT_ANI BLEND_IN BLEND_OUT)

Команда aniBlend определяет фазу перехода между анимациями. Для этой фазы анимации ASC файла не существует, в ней происходит только интерполяционный переход к следующей фазе анимации. Значения BLEND_IN и BLEND_OUT аналогичны рассмотренным в команде ani.

NEXT_ANI
Имя следующей фазы анимации, в которую должен быть выполнен плавный переход.

aniSync +

Пример:

aniSync ( "t_run_2_walk" "s_walk" )

Синтаксис:

aniSync ( ANI_NAME NEXT_ANI )

Эта команда похожа на aniBlend, только NEXT_ANI начинается не с кадра 0, а относительно состояния анимации этого слоя.

Пример:

ani ("s_Walk" 1 "s_Walk" 0.1 0.1 M "Hum_WalkAmbient_A01.asc" F 1 49 FPS:10) aniSync ("t_walk_2_run" "s_Run" ) ani ("s_Run" 1 "s_Run" 0.1 0.1 MI "Hum_RunAmbient_M01.asc" F 1 50)

Здесь является активной фаза анимации s_walk в слое 1, и она проиграна на 45%. Затем выполняется фаза t_walk_2_run, в которой осуществляется переход на фазу s_run, причем не с кадра 0, а с 45% длины всех кадров. Таким образом, разные движения можно склеить друг с другом без нарушения общей логики движения (в примере переход с шага на бег). Но в этом случае склеиваемые анимации должны логически стыковаться одна с другой, например, шаг и бег должны начинаться с одной ноги.

aniBatch +

Пример:

aniBatch ("t_1h_slash1") { *aniBatch ("t_1h_slash1_top") *aniBatch ("t_1h_slash1_bot") }

Синтаксис:

aniBatch (ANI_NAME) { *aniBatch (BATCH_ANI_NAME) [...] }

С помощью этой команды можно преобразовать несколько фаз анимации к одной фазе анимации (максимальное значение 4). Если запускается фаза t_1h_slash1 (см. пример выше), то движок Готики запускает обе внутренние фазы анимации t_1h_slash1_top и t_1h_slash1_bot одновременно. Может использоваться для разделения фаз анимаций верхней и нижней частей туловища человека.

aniComb +

Пример:

ani ("c_bow_1" 4 "" 0.1 0.1 .. "bow_shoot.asc" F 41 41) ani ("c_bow_2" 4 "" 0.1 0.1 .. "bow_shoot.asc" F 43 43) ani ("c_bow_3" 4 "" 0.1 0.1 .. "bow_shoot.asc" F 47 47) ani ("c_bow_4" 4 "" 0.1 0.1 .. "bow_shoot.asc" F 49 49) aniComb ("s_bow_aim" 1 "s_bow_aim" 0.1 0.1 M. "c_bow_" 4)

Синтаксис:

aniComb (ANI_NAME LAYER NEXT_ANI BLEND_IN BLEND_OUT FLAGS ASC_NAME NUM_ANI)

Эта команда представляет фазу анимации, которая происходит от интерполяции нескольких фаз анимации с равным количеством фреймов. Последним параметром этой фазы анимации NUM_ANI является количество предшествующих фаз анимации ani.

aniMaxFPS +

Пример:

aniMaxFPS (12.5)

Синтаксис:

aniMaxFPS (FPS_VALUE)

Команда aniMaxFPS задает максимальную скорость кадров фазы анимации (frame rate). Параметр FPS_VALUE – это число с плавающей точкой.

aniDisable +

Пример:

aniDisable ("t_perception")

Синтаксис:

aniDisable (ANI_NAME)

Команда aniDisable запрещает проигрывание фазы анимации с именем ANI_NAME по какому либо событию, например, нажатие клавиши и т.д.

Блок событий фазы анимации +

Блок событий фазы анимации опционален и следует сразу за фазой анимации ani. Событие - это определенное действие, которое запускается во время проигрывания фазы анимации в определённом кадре или кадрах.

Пример:

{ *eventSwapMesh (-1 "zs_LongSword" "zs_RightHand") *eventSound (10 "step.wav" 1.0) ... }

Обрабатываются следующие события:

*eventSwapMesh (FrameNumber "узел_1" "узел_2")

В кадре FrameNumber производится перестановка мешей на указанных узлах.

*eventPFX (FrameNumber [pfxHandle] "pfxName" "nodeName" [ATTACH])

Запускает эффект частиц с именем pfxName в кадре FrameNumber. Этот эффект может быть привязан к узлу с именем nodeName модели. Однако, узел может и не указываться. Если в качестве имени узла используется пустая строка " ", то эффект относится к узлу BIP01 модели. Опциональный параметр ATTACH определяет, должен ли источник эффекта быть в узле только при запуске, или же он должен быть привязан к узлу на время жизни всего эффекта. Возможны следующие состояния:

Опционально можно указать обработчик pfxHandle для запущенного эффекта частиц. Обработчик указывается, если эффект частиц является неограниченным во времени, и он отключается событием eventPFXStop. В событии выключения эффекта как раз и указывается этот обработчик, он представляет собой целое положительное число.

*eventPFXStop (FrameNumber pfxHandle)

Это событие останавливает ранее запущенный эффект частиц с указанием выбранного при запуске обработчика pfxHandle в нужном кадре FrameNumber.

*eventSFX(FrameNumber "sfxName" [R:x] [EMPTY_SLOT])

Это событие запускает звуковой эффект. sfxName является либо именем звуковой инстанции скриптов, либо именем Wave файла (расширение .wav не указывается), который начинает проигрываться с кадра FrameNumber. Если дальность слышимости звука должна отличаться от установленной по умолчанию, то её можно задать параметром R:х, где х - дальность слышимости в см. Все запущенные звуковые эффекты модели по умолчанию занимают один звуковой канал, так называемый слот. Запуск нового звукового эффекта отменяет текущий эффект. Если звуковой эффект запустить с параметром EMPTY_SLOT, то под него будет выбран следующий свободный слот, и текущий эффект не будет прерван.

*eventSFXGrnd (FrameNumber "sfxName" [R:x] [EMPTY_SLOT])

Это событие запускает звуковой эффект. sfxName является именем звуковой инстанции скриптов, которое дополнено именем материала. Остальные параметры аналогичны рассмотренным выше.

*eventMMStartAni (FrameNumber "aniName" ["nodeName"] [I:intensity] [H:holdTime])

Это событие запускает анимационный визуальный эффект MorphMesh, начиная с кадра FrameNumber, который находится на узле с именем nodeName и с анимацией aniName. Если параметр nodeName не указан, то анимация запускается по умолчанию на узле BIP01 HEAD (анимация лица). Могут быть указаны параметры интенсивности intensity (0..1..?) и(или) времени удержания holdtime (в sec) анимации, если эти параметры в MMS файле не устраивают.

*eventCamTremor (FrameNumber floatRange floatDuration floatMinAmplifier floatMaxAmplifier)

Это событие запускает эффект землетрясения (дрожание камеры) во фрейме FrameNumber, остальные float параметры определяют эффект землетрясения.

Примечания +

Следует обращать внимание на следующие особенности:

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

*events в блоке событий фазы анимации должны быть отсортированы в порядке возрастания FrameNumber.

При больших по амплитуде анимациях хотелось бы, чтобы персонаж в случае столкновения с объектами отчетливо от них отделялся, однако при незначительных по амплитуде анимациях хотелось бы переместить персонаж как можно ближе к объекту. Решение состоит в том, чтобы ввести анимацию второй категории. В MDS файле для такой анимации можно указать CVS:хх фактор (CollisionVolumeScale), который по умолчанию, как и FPS:хх фактор, равняется 1. Установка его значения, например, на 0.5 или 0.1 уменьшила бы объем, занимаемый фазой анимации, и персонаж смог бы быть приближен к объекту. Фазы анимации, для которых может использоваться этот параметр, являются статическими, например, труп персонажа, сидящий или спящий персонаж.

Model ("Player") { meshAndTree ("Hum_Body_Naked0.ASC" DONT_USE_MESH) registerMesh ("Hum_Body_Naked0.ASC") registerMesh ("Hum_Body_CookSmith.ASC") aniEnum { modelTag ("DEF_HIT_LIMB" "zs_RightHand") ani ("s_stand" 1 "s_stand" 0.5 0.5 M. "stand_pause2.asc" F 0 -1) ani ("t_strafe_l" 1 "s_stand" 0.1 0.1 M. "Strafe_Left.asc" F 0 -1) aniBlend("t_stand_2_run" "s_run") aniSync ("t_run_2_walk" "s_walk") aniAlias ("t_strafe_r" 1 "s_stand" 0.1 0.1 M. "t_strafe_l" R) aniBatch ("t_1h_slash1") { *aniBatch ("t_1h_slash1_top") *aniBatch ("t_1h_slash1_bot") } ani ("t_1h_shield_ready" 5 "" 0.2 0.2 .. "shield_ready.asc" F 0 -1) { *eventSwapMesh(13 "zs_Shield" "zs_LeftArm") } ... } }


Теги: Анимация, Функции анимации

Добавил: Neromont (08.04.2019)

Просмотров: 96

Автор: Dieter Hildebrandt

Рейтинг: 5.0/1

Всего комментариев: 0
avatar
Информационное окноx