случайная генерация локаций |
Здравствуйте, гость ( Вход | Регистрация )
случайная генерация локаций |
Jul 25 2006, 06:40
Сообщение
#26
|
|
Level 6 Класс: Разведчик Арфистов Характер: True Neutral Раса: Животное |
На всякий случай напишу следующую памятку: есть возможности "пропихнуть" чара сквозь дверь, или даже разрушить плотовую запертую дверь(сам я с таким не встречался, сколько не пробовал в .66, пишу это полагаясь на свидетельства очевидцев в версии .62), поэтому все закрытые, важные внутренние переходы между комнатами этой локации оформляйте в качестве дверей трансферов, за которыми тупик. Не используйте двери в качестве перемычек между внутренними комнатами, если боитесь что недобросовестный игрок побывает везде раньше, чем вам бы хотелось...
|
Jun 8 2010, 15:07
Сообщение
#27
|
|
Level 2 Класс: Обыватель Характер: Lawful Good Раса: Человек |
Могу предложить еще один вариант, в котором всего лишь нужно сделать комнату (просто для разных локаций ее копировать), в ней расставить все нужные предметы, создаем триггер, потом в его переменные ставим int "roomclean" = число (сколько раз очищать комнату). Затем на онЕнтер триггера ставим код :
Скрипт просто удаляет рандомно с шансом 1 к 2 предметы. Если нужно несколько таких комнат - просто копируем комнаты(локации) в меню слева. Триггер поставить перед входом в локацию. Neverwinter Script void main() { object oArea = GetArea(GetEnteringObject()); int nClean = GetLocalInt(oArea, "roomclean"); while(nClean>0) { nClean == nClean -1; object oClean = GetFirstObjectInArea(oArea); while(GetIsObjectValid(oClean)) { if(GetIsPC(oClean) == FALSE) { switch(d2()) { case 1: DestroyObject(oClean); break; case 2: } } oClean = GetNextObjectInArea(oArea); } } DeleteLocalInt(OBJECT_SELF, "roomclean"); } Скрипт занёс в базу. Сообщение отредактировал ReyBrujo - Jun 10 2010, 14:07 |
Текстовая версия | Сейчас: 23rd September 2024 - 06:43 |