![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#2451
|
|
Level 3 ![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек ![]() |
QUOTE(Zirrex @ Aug 16 2006, 02:34) [snapback]89707[/snapback] windhover, карта при этом белого цвета? Если да, то использован набор тайлов "Микросет". Иначе же можно карту затирать постоянно у персонажа, который вошел на локацию. Это делается с помощью функции: NSS // Expose/Hide the entire map of oArea for oPlayer. // - oArea: The area that the map will be exposed/hidden for. // - oPlayer: The player the map will be exposed/hidden for. // - bExplored: TRUE/FALSE. Whether the map should be completely explored or hidden. void ExploreAreaForPlayer(object oArea, object oPlayer, int bExplored=TRUE) Да нет, там миникарта черная. Затирать - немного не то, нужно чтобы карта постоянно была закрыта, а так даже если на хетбит вешать скрипт с этой функцией - карта в пределах видимости ПС открывается, когда он отходит с места - на том месте закрывается и открывается в новом, и т.д. Видимо скриптами не получится (IMG:style_emoticons/kolobok_light/sad.gif) |
![]()
Сообщение
#2452
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
Создаётся точная копия тайлсета, но с пустыми значениями минимап (или заменёнными на чёрный квадрат).
|
![]()
Сообщение
#2453
|
|
Level 3 ![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек ![]() |
QUOTE(virusman @ Aug 16 2006, 23:08) [snapback]89772[/snapback] Создаётся точная копия тайлсета, но с пустыми значениями минимап (или заменёнными на чёрный квадрат). Да это уже в контент надо лезть, как я понимаю (IMG:style_emoticons/kolobok_light/unsure.gif) Думал, может скриптами можно обойтись. |
![]()
Сообщение
#2454
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
QUOTE(windhover @ Aug 17 2006, 02:15) [snapback]89776[/snapback] Да это уже в контент надо лезть, как я понимаю unsure.gif Думал, может скриптами можно обойтись. Это надо отредактировать файл имя_тайлсета.set. Там просто затери все иконки и все. А файл этот текстовой. |
![]()
Сообщение
#2455
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Aiwan, и какой же файл затирать? Они имеют очень туманные названия. Потом, если вытереть оттуда всю информацию, то лишатся карт и все остальные локации, которые используют данный набор тайлов. По-моему это не выход. Разработчикам нужно было сделать в настройках локации опцию "Отобрать или не отображать карту".
|
![]()
Сообщение
#2456
|
|
Mystery ![]() Класс: Маг Характер: Lawful Evil Раса: Тварь NWN: Контент Амен ![]() |
Zirrex, затирается не файл, а ссылка на него в тайлсете.
|
![]()
Сообщение
#2457
|
|
Level 9 ![]() Класс: Друид Характер: True Neutral Раса: Эльф NWN: Скриптинг [PW] Амен ![]() |
Объясните на примере. Я что-то не понимаю где именно затирать.
|
![]()
Сообщение
#2458
|
|
Mystery ![]() Класс: Маг Характер: Lawful Evil Раса: Тварь NWN: Контент Амен ![]() |
Айван уже писал:
QUOTE(Aiwan @ Aug 17 2006, 09:23) [snapback]89787[/snapback] Это надо отредактировать файл имя_тайлсета.set |
![]()
Сообщение
#2459
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Берем к примеру файл tti01.set, переименовываем его в новый или оставляем старый. Если старый то у всех лок не буит карты. Если новый то только на новой. К примеру tti02.set. Открываем, ищем название и правим:
CODE UnlocalizedName=No_map_area Ищем все файлы карт ImageMap2D: CODE ImageMap2D=no_map Могеш сделать no_map.tga и нарисовать там дулю. И все. А. Не забуть itp переименовать и горизонт. И все. Новый тайлсет. (IMG:style_emoticons/kolobok_light/smile.gif) |
![]()
Сообщение
#2460
|
|
Mystery ![]() Класс: Маг Характер: Lawful Evil Раса: Тварь NWN: Контент Амен ![]() |
От себя добавлю - если уже есть области, котторые нужно перенести на новый тайлсет, из модуля экстрактим файлы с расширением .are и соответствующими тегами, открыть их в любом шестнадцетиричном редакторе и в колонке с ASCII найти и заменить префикс тайлсета.
После этого открыть на редактирование модуль и в директории temp, куда тулсет разворачивает его при редактировании, заменить старые файлы новыми, отредактированными. Сохранить модуль, не изменяя в нем более ничего. Перенос произведен (IMG:style_emoticons/kolobok_light/smile.gif) Айв, перемести последние посты в контент, а? Там они более уместны будут. |
![]()
Сообщение
#2461
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Пусть повисят несколько дней.
|
![]()
Сообщение
#2462
|
|
Level 3 ![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек ![]() |
Благодарю всех за столь исчерпывающие объяснения.
Всетаки решил остановиться на варианте с скриптом и неполным скрытием карты, так как в некоторых случаях карту надо открывать(например игрок купил карту определенной местности). И сразу возникает вопрос: сильно ли отобразиться на производительности, если на хетбите всех локаций будет висеть скрипт, затирающий карту? QUOTE(Zirrex @ Aug 18 2006, 15:32) [snapback]89882[/snapback] ... Разработчикам нужно было сделать в настройках локации опцию "Отобрать или не отображать карту". Ага, а сколько еще есть вещей, которые "...нужно было сделать" (IMG:style_emoticons/kolobok_light/declare.gif) |
![]()
Сообщение
#2463
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
Ну, можно сделать проверку на наличие игрока в локации, тогда скрипт будет срабатывать тока в одной локации.
Но всеж, ИМХО как-то не катит затирание на хертбит, не лучше ли сделать затерание карты при выходе с локи? |
![]()
Сообщение
#2464
|
|
Level 3 ![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек ![]() |
QUOTE(-fenix- @ Aug 19 2006, 01:06) [snapback]89944[/snapback] Ну, можно сделать проверку на наличие игрока в локации, тогда скрипт будет срабатывать тока в одной локации. Но всеж, ИМХО как-то не катит затирание на хертбит, не лучше ли сделать затерание карты при выходе с локи? Смысл в том, чтобы игрок не ходил по карте, поэтому ее надо постоянно затирать, если затирать при выходе/входе в локу она будет скрыта при следующем заходе, а когда игрок находиться в локации - будет открываться. А если сделать так: Скрипт запускается при входе игрока в локу, через каждые 10 сек проверяет наличие игрока, если есть - затирает карту, если нет - останавливается, или, с помощью Alternative Core таймер создавать? Сообщение отредактировал windhover - Aug 19 2006, 13:42 |
![]()
Сообщение
#2465
|
|
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
QUOTE(windhover @ Aug 19 2006, 01:33) [snapback]89943[/snapback] И сразу возникает вопрос: сильно ли отобразиться на производительности, если на хетбите всех локаций будет висеть скрипт, затирающий карту? Нет. Вспомни, что у каждого созданного в игре монстра на хатбите уже стоит скрипт, и довольно непростой, так что затирание катры будет каплем в море, к тому же, если это сингл, то можешь использовать только хатбит модуля и затирать только карту, в которой находится игрок. |
![]()
Сообщение
#2466
|
|
Level 3 ![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек ![]() |
QUOTE(azathoth @ Aug 19 2006, 13:38) [snapback]89984[/snapback] Нет. Вспомни, что у каждого созданного в игре монстра на хатбите уже стоит скрипт, и довольно непростой, так что затирание катры будет каплем в море, к тому же, если это сингл, то можешь использовать только хатбит модуля и затирать только карту, в которой находится игрок. О, точно, хетбит модуля! Вообщем надо попробовать.. модуль сингловый Благодарю покорнейше (IMG:style_emoticons/kolobok_light/thank_you.gif) |
![]()
Сообщение
#2467
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Можно использовать хертбит ЛОКАЦИИ. Зачем юзать всего модуля?
NSS object oPC = GetFirstPC();
if (GetArea(oPC) != OBJECT_SELF) return; |
![]()
Сообщение
#2468
|
|
Level 17 ![]() Класс: Волшебник Характер: Neutral Good Раса: Человек NWN: Скриптинг [PW] Axistown SR 1.9 NWNX ![]() |
QUOTE Можно использовать хертбит ЛОКАЦИИ. Зачем юзать всего модуля? Если такая локация одна - да. Если много - лучше использовать модульный.
|
![]()
Сообщение
#2469
|
|
Level 5 ![]() ![]() Класс: Убийца Характер: Chaotic Neutral Раса: Полуэльф ![]() |
Привет,хотел бы узнать,есть ли ограничения на использование ассигн команд?То есть, можно ли мне попросить не крича,а например, плэйс или итем ассигнить ту или иную команду.
Привет,хотел бы узнать,есть ли ограничения на использование ассигн команд?То есть, можно ли мне попросить не крича,а например, плэйс или итем ассигнить ту или иную команду. |
![]()
Сообщение
#2470
|
|
Level 5 ![]() ![]() Класс: Друид Характер: Lawful Neutral Раса: Человек ![]() |
Мне кажеться нельзя, как ты себе представляеш плейс будет выполнять команду, ну например ActionMoveToObject. (IMG:style_emoticons/kolobok_light/crazy.gif)
Хотя я не спец могу и ошибаться. А тебе что конкретно надо? Сообщение отредактировал Milfes - Aug 20 2006, 00:04 |
![]()
Сообщение
#2471
|
|
Level 5 ![]() ![]() Класс: Убийца Характер: Chaotic Neutral Раса: Полуэльф ![]() |
QUOTE(Milfes @ Aug 20 2006, 00:01) [snapback]90082[/snapback] Мне кажеться нельзя, как ты себе представляеш плейс будет выполнять команду, ну например ActionMoveToObject. :crazy: Хотя я не спец могу и ошибаться. А тебе что конкретно надо? например,убить или добавить визуальный эффект.В данном случае, а вообще, знать бы конкретно. |
![]()
Сообщение
#2472
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
можно, если я тебя правильно понял. Особых ограничений не встречал (писались же большие катсцены на триггерах, там по паре сотен строк. Косяки бывали, но вроде команды все выполняются)
QUOTE(Waromon @ Aug 20 2006, 02:13) [snapback]90094[/snapback] Вообще - да, команды плектаблы выполняют, но не все. (например, как выше уже сказано было ActionMoveToObject) ты невнимателен. Речь ж о том, чтобы это через Assign для другого (НПС) делать. |
![]()
Сообщение
#2473
|
|
Level 4 ![]() ![]() Класс: Некромант Характер: Chaotic Evil Раса: Нежить ![]() |
2 Noah
А тыб взял да и опробовал. (IMG:style_emoticons/kolobok_light/smile.gif) Вообще - да, команды плектаблы выполняют, но не все. (например, как выше уже сказано было ActionMoveToObject) |
![]()
Сообщение
#2474
|
|
Level 5 ![]() ![]() Класс: Друид Характер: Lawful Neutral Раса: Человек ![]() |
QUOTE например,убить или добавить визуальный эффект Можно при помощи функции ApplyEffectToObject. |
![]()
Сообщение
#2475
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Milfes, часто для синхронизации этого мало и приходится или писать на самом НПС, или если пишется для стороннего объекта, через структуры типа:
AssignCommand(oNPC,ActionDoCommand(ApplyEffectToObject(...))) например. |
![]() ![]() |
Текстовая версия | Сейчас: 28th April 2025 - 01:08 |