![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#291
|
|||
Level 3 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Можно сохранять ResRef для подтверждения правильности локации. Но если пройти по модулю нужно один раз за версию - вопрос перешел в разряд теретических. Ведь какой-никакой метод, ты говришь, уже нашел. |
||
![]()
Сообщение
#292
|
|||||
4-х Кубовый ![]() Класс: Некромант Характер: Lawful Evil Раса: Человек NWN: Скриптинг [Sn] Проклятие Левора ![]() |
Шо цэ есть, ЗАДВОЕНИЕ? :unsure: Добавлено в [mergetime]1098827906[/mergetime]
Вот-вот. Отлично Shad! :yes: :good: |
||||
![]()
Сообщение
#293
|
|
Level 2 ![]() Класс: Монах Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] ![]() |
Я извиняюсь за резкость. Я не правильно выразился и благодарен тем, кто откликнулся. Уважаю ваш сайт и форум за нейтральность по отношению к шардам и их разборкам и открытость по отношению к игрокам. Ваш форум - это своеобразная "нейтральная территория", накоторой могут общаться все коммьюнити НВН.
Решение я нашел такое: Я сохраняю в БД какую-то локацию, потом каким-то внешним редактором (в моем случае FoxPro) правлю DBF файл и соэдаю в нем 64000 записи с последовательно увеличивающимся индексом и названием переменной (В моем случае MAP1 , 2 и т.д.), в которой присутствует индекс. Затем в скрипте загрузки модуля вставляю следующий текст: void CheckAreaTag() { object oMod = GetModule(); int iCur = GetLocalInt(oMod,"CurCount"); if (iCur < 64000) { WriteTimestampedLogEntry(" ~ Continue ~ "+IntToString(iCur)); int iBegin = iCur; iCur = iCur +2000; SetLocalInt(oMod,"CurCount",iCur); object oArea; object oTemp; location lLoc; string sVarName; int i; for (i = iBegin; i < iCur; i++) { sVarName = "MAP"+IntToString(i); lLoc = GetCampaignLocation("TEST",sVarName); oArea = GetAreaFromLocation(lLoc); if (GetIsAreaNatural(oArea)!=AREA_INVALID) WriteTimestampedLogEntry(sVarName + " id "+IntToString(i)+" ; "+"object "+ObjectToString(oArea)+" ; "+GetTag(oArea)+" ; "+GetName(oArea)+" ; "+GetResRef(oArea)); } DelayCommand(2.0f, CheckAreaTag()); } else WriteTimestampedLogEntry(" ~ End ~ "+ IntToString(iCur)); } void main() { WriteTimestampedLogEntry(" ~ Begin check area tag ~ "); CheckAreaTag(); } Получившийся текстовый лог-файл открываю в Exсel-e и сохраняю как таблицу (поля я специально разделяю знаком ; , так как Exсel понимает этот знак как разделитель. Дальше уже в Exсel-e можно сортировать , фильтровать и анализировать записи. Таким же образом можно получить сводную информацию обо всех объектах, находящихся на картах в модуле (не в палитре), например о НПС и плэйсэйблах |
![]()
Сообщение
#294
|
|||
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Тобур даже я вчера до двух ночи голову ломал. ;) Зря ты так :drag:
Все ок! ;) ТО что ты сейчас сказал настолько важно, к примеру для меня :crazy: Ты даже не представляешь :yes: Заходи к нам почаще! :drag: Все плохое забыли :good: И молодец, что победил проблему. Кинь ее в базу скриптов, очень людям поможешь. |
||
![]()
Сообщение
#295
|
|
4-х Кубовый ![]() Класс: Некромант Характер: Lawful Evil Раса: Человек NWN: Скриптинг [Sn] Проклятие Левора ![]() |
Тобур
Все ок ;). Ты - взрослый человек. :good: По делу... А дальше что? Ну есть у тебя экселевский файл. И что с ним делать дальше? Я думал тебе данные нужны для обратного использования потом в скрипте... :unsure: |
![]()
Сообщение
#296
|
|
Level 2 ![]() Класс: Монах Характер: Lawful Good Раса: Человек NWN: Скриптинг [PW] ![]() |
Изначально моя цель была найти карты, у которых совпадают тэги. Для этого мне надо было получить список тэгов всех карт в модуле - я его получил, хоть и извращенным способом. После этого достаточно отсортировать в экселе таблицу по полю тэга и пробежаться взглядом по ней, чтобы найти задвоенность (дубляж) тэга. Я нашел в 470 картах 4 дубляжа - это тот результат, который я и хотел получить :)
|
![]()
Сообщение
#297
|
|
Level 4 ![]() ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Орк NWN: Скриптинг [PW] ![]() |
Менее извратный способ - создать 2дашку и забивать в нее таги(или ресрефы) локаций. Всего то делов остается - пробежать все строчки одного столбца( с тагами карт ) :crazy:
|
![]()
Сообщение
#298
|
|
Level 3 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек ![]() |
Вот, кстати, ещё одно решение. Придумал днём, пока в инет доступа небыло: Можно взять теги прямо из файлов *.are модуля, так сказать напрямую. Я просмотрел несколько (5) файлов карт, из кампаний и новосозданого модуля. Во всех теги хранились после последовательности Tile_AnimLoop3 ровно через 6 байт.
|
![]()
Сообщение
#299
|
|||
4-х Кубовый ![]() Класс: Некромант Характер: Lawful Evil Раса: Человек NWN: Скриптинг [Sn] Проклятие Левора ![]() |
А следуя из этого, программульку-анализатор на Сях или Дельфях написать - как 2 пальца... ;) |
||
![]()
Сообщение
#300
|
|
Level 2 ![]() Класс: Обыватель Характер: True Neutral Раса: Рептилия ![]() |
Вопрос. Как убрать ВСЕ из инвентаря (нет ли функции соответствующей, аль чето такого)? :umnik:
|
![]()
Сообщение
#301
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Ищи в базе скриптов. Есть кусок кода.
|
![]()
Сообщение
#302
|
|
Level 10 ![]() ![]() ![]() Класс: Воин Характер: Lawful Neutral Раса: Человек NWN: Скриптинг [PW] ![]() |
Сидел вчера скриптил и вдруг у меня возник комплекс неполноценности...
Я хочу чтобы при активировании одного предмета - игроку открывался инвентарь сундука который стоит в недоступном ему месте. Тоесть кто-то в может в тот сундук положить что захочет а игрок когда активирует предмет ему откроется инвентарь того самого сундука где лежит предмет который кто то положил. Вобщем что то вроде почты:) Ну естественно беру команду OpenInventory(GetObjectByTag(ТэгСундука),GetItemActivator()); И нифига... Теперь вопрос - что я в этой жизни упустил? :swoon: |
![]()
Сообщение
#303
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
хм..как насчет того, что далековато до сундука (в другой локе, или просто растояние большое)
|
![]()
Сообщение
#304
|
|
Level 10 ![]() ![]() ![]() Класс: Воин Характер: Lawful Neutral Раса: Человек NWN: Скриптинг [PW] ![]() |
Эх, Лекс, ну ведь для других действий то он этот сундук хоть за 22 локи использовать будет. Там же не Nearest:) Пробовал поставить прям рядом. Стою у сундука кликаю на сундук - открывается инвентарь, кладу вещь, использую предмет - инвентарь не вызывается, хоть расшибись. :bad:
|
![]()
Сообщение
#305
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
хм.. (другие действия это фигня, открывай, закрывай его хоть на другом конце модуля. А вот для показа инвентаря они должны быть близко. Посмотри на хенчшу и игрока.)..кстати..может функция только с кричами работает??
|
![]()
Сообщение
#306
|
|
Level 10 ![]() ![]() ![]() Класс: Воин Характер: Lawful Neutral Раса: Человек NWN: Скриптинг [PW] ![]() |
Лекс да я и с кричами пробовал! И около сундука предмет активировал. И около крича. Вот нет и все тут. Ладно, чем вилами по воде возить лучше подождем пока кто нить справится :DB:
|
![]()
Сообщение
#307
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
попробую дома в своем СоУ 1.32 сделать
|
![]()
Сообщение
#308
|
|
4-х Кубовый ![]() Класс: Некромант Характер: Lawful Evil Раса: Человек NWN: Скриптинг [Sn] Проклятие Левора ![]() |
Аваддон
Хоть расшибись, но сундук не откроется (точнее не покажет свой инвентарь!), если ты, как чар, будешь дальше "рабочего" экрана от него находится. Это движковое. Пример. Открой инвентарь хенча, потом скажи ему (с открытым на экране инвентарем!) через радиальное меню, типа: "стой здесь". Отегай по-тихому... инвентарь захлопнется эдак через метров 15... |
![]()
Сообщение
#309
|
|
Level 10 ![]() ![]() ![]() Класс: Воин Характер: Lawful Neutral Раса: Человек NWN: Скриптинг [PW] ![]() |
Вот блин :vava: А как можно тогда отсрочить событие CreateItemOnObject? Delay его не берет
|
![]()
Сообщение
#310
|
|||
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
ммм точно ? у мя в одном месте прошла вот такая несуразная строчка...сработало DelayCommand(fDelay,ActionGiveItem( CreateItemOnObject(sRezult,oFirst,1),oFirst)); |
||
![]()
Сообщение
#311
|
|
Level 2 ![]() Класс: Чемпион Торма Характер: Lawful Good Раса: Человек ![]() |
Привет всем !
Я разработчик модуля "Новое Средиземье" , который расположен по адресу nwn.uagames.com . Т.к я не сильно разбираюсь в скриптах , то ,естественно куча багов . Уже не хватает сил :( Скриптер нужен , как воздух . Пожалуйста , если вы можете помочь - пишите мне на мыло chosen5@yandex.ru , либо в форуме http://members.lycos.co.uk/nmiddle/forums/ . Сейчас такие проблемы : При перезаходе у игроков восстанавливаются все ХП и спеллы . Если у игрока ХП от 0 , до -10 , то при переходе жизни восстанавливаются . Пробовал сделать блягодаря камню смерти , но вышло хуже некуда :( Не удаляется лут . После дня работы лута становиться так много , что сильно лагает :( Еще есть ряд других проблем :this: Please Help ! Сообщение отредактировал Velteron - Nov 7 2004, 23:03 |
![]()
Сообщение
#312
|
|
Level 13 ![]() ![]() ![]() ![]() Класс: Ниндзя Характер: Chaotic Evil Раса: Танар'ри ![]() |
н, АНЦЮРШЕ ЛСДПНЯРЭЧ Х ОНАЕДЮЛХ МЮД ЛНМЯРПЮЛХ, ОНЛНЦХРЕ ЛМЕ Я УЕМВЛЕМЪЛХ, ОНФЮКСИЯРЮ. ЙЮЙ ДНАЮБХРЭ Й цц БРНПНЦН УЕМВЛЕМЮ? ю КСВЬЕ, Х РПЕРЭЕЦН. с ЛЕМЪ ЯРНХЪР нПДШ юМДЕПДЮПЙЮ Х РЮЛ УЕМВЛЕМНБ ЛНФЕР АШРЭ ДБНЕ, Ю ХМНЦДЮ Х РПНЕ, МН Б ЛНДСКЕ ЯРЮМДЮПРМШИ ЯЙПХОР МЕ ОПНУНДХР - бШДЮЕРЯЪ ЯННАЫЕМХЕ Н РНЛ, ВРН ЛНФМН ХЛЕРЭ РНКЭЙН НДМНЦН УЕМВЛЕМЮ. :swoon:
Добавлено в [mergetime]1099878319[/mergetime] O-O--ps!!!!... Sory! It must be some encoding prblems/ I mean, how to get more than one henchman? I'got HoA but standart scrit don/work correct/ :swoon: |
![]()
Сообщение
#313
|
|||
Level 10 ![]() ![]() ![]() Класс: Воин Характер: Lawful Neutral Раса: Человек NWN: Скриптинг [PW] ![]() |
Хе-хе-хе... Это еще не проблемы.... :DB: Обращайся в тему Вопросы от самых маленьких,чтоль. Поможем чем можем:) На счет спеллов и хит-поинтов, вроде _kaa_ скрипт выкладывал, там где они заносятся в базу данных. |
||
![]()
Сообщение
#314
|
|
Level 13 ![]() Класс: Маг Характер: Chaotic Good Раса: Человек МАСТЕР Пера ![]() |
Помогите, пожалуйста! Присоединился ко мне НПС, ходит за мной с момента присоединения только до тех пор, пока я не выйду в другую локацию. Он, во первых - выйти не может, а во вторых, даже если я захожу обратно - не обращает на меня внимания. Однако остается присоединенным... Как это лечится и, если можно, поясните, что я сделала не так?
|
![]()
Сообщение
#315
|
|
Level 10 ![]() ![]() ![]() Класс: Воин Характер: Lawful Neutral Раса: Человек NWN: Скриптинг [PW] ![]() |
С хенчами это к ДБ... :this:
|
![]() ![]() |
Текстовая версия | Сейчас: 18th May 2025 - 06:27 |