Город Мастеров
IPB

Здравствуйте, гость ( Вход | Регистрация )

Профиль
Фотография
Рейтинг
 
Опции
Опции
Персональное Соглашение
Tarre Talliorne не имеет договора в данный момент.
Персональная информация
Tarre Talliorne
Level 8
35 лет
Пол не выбран
Smolenscum
Родились Дек-9-1982
Интересы
Толкин, веб-дизайн, программирование, НВН...
Другая информация
Класс: Псионик
Характер: Chaotic Good
Раса: Человек
Мастер: NWN: Скриптинг [Sn]
Мастер: Нет данных
Мастер: Нет данных
Проект N1: Нет данных
Проект N2: Нет данных
Статистика
Присоединился: 10.05.2004
Просмотры профиля: 2,417*
Последний раз замечен: 25th January 2006 - 22:41
Местное время: Jan 21 2018, 07:34
352 сообщения (0.07 сообщений в день)
Контактная информация
AIM Нет данных
Yahoo Нет данных
ICQ 265329904
MSN Нет данных
* Просмотры профиля обновляются каждый час

Tarre Talliorne

Members

***


Темы
Сообщения
Файлы
Комментарии
Друзья
Содержание
11 Aug 2004
Тема создана главнм образом для новичков, но и более опытным товарищая почитать тоже не помешает. Итак. Минимум флейма. Максимум инфы. Начну я (кто бы сомневался :-) )

1. LevelUpHenchman(). С помощью этой функции можно... повысить уровень ПС (применив ее к ПС, конечно) без распределения этим самым ПС всех плюшек. Действие фишки можно наблюдать в первой главе ХотУ. Когда в начальном диалоге (при заходе чаром малых уровней) выозникает выбор: повысить уровень самому или автомастически. Этот самый автоматический вариант и реализован с помощью LevelUpHenchman.

2. Тонкость конструкции if (condition) { . . . }.
Neverwinter Script Source
if (1) { return TRUE; }

вернет TRUE. Никогда не задумывались почему? Дело в том, что при "заявлении" условие автоматически приравнивается(==) к TRUE. TRUE в свою очередь численно равно 1 (FALSE = 0, в этом в можете убедиться, открыв nwscript.nss). Поэтому наше форма и возвращает 1. Посему
Neverwinter Script Source
if (GetLocalInt(oPC, "localInt")==1)

можно с легкостью заменить на
Neverwinter Script Source
if (GetLocalInt(oPC, "localInt"))


Не использовать в данном виде! См. пост _kaa_ и мой ответ.

3. Известно почти всем, но все же.
Neverwinter Script Source
int n1 = 1;
int n2 = 2;
int n3 = 3;
int n4 = 4;

то же, что и
Neverwinter Script Source
int n1 = 1, n2 = 2, n3 = 3, n4 = 4;

Аналогично и с float, string, effect и другими типами данных.

4. Упрощенная модель if {} else {}
Допустим,
Neverwinter Script Source
if (nA > 5)
{
nB = TRUE;
}
else
{
nB = FALSE;
}

то же, что

Neverwinter Script Source
nB = (nA > 5) ? TRUE : FALSE;


т.е. все, что до '?' - условие, все, что после вопроса до двоеточия - присвоение в случае истинности утвержения в скобках, после двоеточия - в случае ложности.

Продолжение следует. Если у вас есть то, чем можно поделиться и что заслуживает всеобщего внимания , прошу.
10 Jul 2004
Хитрость первая (вообще для Maya, но для 3дмМ тож можно приспособить): http://www.render.ru/tutor/maya/33/ . А я -то думал, как делают деревья - все, которые выходили у меня, жутко тормозили НВН :-) Занятно, не правда ли?
10 Jul 2004
Вообщем. У меня есть рынок, сделаенный плэйсиблами. И вот захотелось мне, чтобы на миникарте он отбражался не как зеленое пятно, а как зеленое пятно с уменьшенными модельками плэсов на нем. Для начала я просто хочу создать группу из обыновенных - ttr01(!) тайлов, а уж потом заменить те, на которых стоят плэйсы, кастомными с особыми слотами миникарты. Вообщем. Мои действия.
1. Открыл ttr01.set . Теперь по пунктам:
1.1. Добавил [GROUP57].
1.2. Сунул рандмоный ТЛК ИД StrRef=68731 (вроде там "крысиный писк 2")
1.3. Rows=7 Columns=9 - вроде правильно - сравните с рисунком. (IMG:http://tarre12345.narod.ru/map.gif)

1.4. ОБРАТИТЕ ВНИМАНИЕ! Верно ли я поступил: я начал отсчитывать тайлы (согласно логике) с ЛЕВОГО НИЖНЕГО угла. Т.е. я беру тайл 0 (самы левый и самый нижний), смотрю на строке состояния название его модели, ищу это название в сете, смотрю, какой номер у тайла с таким названием модели, а затем ставлю этот номер после = . Такую же картошку проделываю с остальными 62 тайлами.
В итоге получается.
Код

[GROUP57]
Name=bw_yarmorka
StrRef=68731
Rows=7
Columns=9
Tile0=51
Tile1=51
Tile2=55
Tile3=206
Tile4=89
Tile5=231
Tile6=231
Tile7=89
Tile8=114
Tile9=184
Tile10=185
Tile11=188
Tile12=124
Tile13=222
Tile14=125
Tile15=182
Tile16=126
Tile17=89
Tile18=1
Tile19=150
Tile20=126
Tile21=119
Tile22=124
Tile23=124
Tile24=119
Tile25=122
Tile26=231
Tile27=3
Tile28=122
Tile29=124
Tile30=124
Tile31=125
Tile32=117
Tile33=124
Tile34=114
Tile35=231
Tile36=128
Tile37=127
Tile38=123
Tile39=114
Tile40=123
Tile41=124
Tile42=126
Tile43=79
Tile44=89
Tile45=191
Tile46=124
Tile47=114
Tile48=120
Tile49=120
Tile50=125
Tile51=116
Tile52=119
Tile53=206
Tile54=195
Tile55=190
Tile56=126
Tile57=120
Tile58=116
Tile59=68
Tile60=119
Tile61=120
Tile62=207


2. Потом открыаю ITPTool. Открываю "ttr01_palstd.itp", затем Element=0 > List Main > Element = 0 (второй сверху - группы тайлов) > кликаю на List list > выбираю "add new element", поле ID оставляю пустым, "number of element data items" ставлю 2.
Первый "item":
DATA ITEM TYPE: UINT 32
DATA ITEM NAME: STRREF
DATA ITEM VALUE: 68731 (если помните, я в сете ставил StrRef=68731 - может буть, так они линкуются - итп и сет?)

Второй "item":
DATA ITEM TYPE: RESREF
DATA ITEM NAME: RESREF
DATA ITEM VALUE: ttr01_g02_01 (в сете у меня Tile0=51, а [TILE51] соответствует модельttr01_g02_01 - почему я сделал именно так? потому что заметил, что в других группах DATA ITEM VALUE: тоже ставится по назвнию модели первого тайла группы - или я не прав?)

3. Сохраняю, кидаю в общих хак. Загружаю НВН: создаю локу... В разделе группы, как и лолжно быть, появилась строка "Крысиный писк 2". Но группа эта состоит из 1 (!) тайла и никуда не хочеткрепиться. Всем : (Айсу в особенности) я о-очень подробно расписал свои действия, ибо нам (RAGE team) о-очень надо выпустить демку. Помогите, найдите ошибку в моих действиях.
Последние посетители


9 Oct 2016 - 22:40


9 Feb 2011 - 4:51


17 Apr 2010 - 17:36


6 Dec 2009 - 12:03


16 Aug 2008 - 16:13

Комментарии
Вам не оставили ни одного комментария Tarre Talliorne.

Друзья
Нет друзей для показа.
Текстовая версия Сейчас: 21st January 2018 - 07:34