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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
205 страниц V  « < 18 19 20 21 22 > »   
Ответить в эту темуОткрыть новую тему
> Вопросы новичков, Абсолютные глупости
baskan
сообщение Dec 7 2004, 17:12
Сообщение #461


Level 7
**

Класс: Бард
Характер: Lawful Good
Раса: Фея



Вопрос по скриптам..У меня в слоте OnClientInter стоит два скрипта(один на субрассы, другой на защиту акка)
один начинаеться с
void Subrace(object oPC)
{
Второй
void main()
{

Так вот я их пишу в слоте, сохраняю, все норм, но в игре, у меня перестают работать подрассы, а если поставить в этот слот один скрипт подрасс все норм...Как мне сделать чтобы и тот и тот скрипт работал?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
maxxim
сообщение Dec 7 2004, 18:33
Сообщение #462


Level 3
*

Класс: Чемпион Торма
Характер: Lawful Good
Раса: Человек



QUOTE (Аваддон @ Dec 7 2004, 16:39)
Гы гы гы.. Да это не то что бы бага. Это так просто. Уголь надо добывать не из мешка а из залежей угля.:)

ой, вот это я поц :)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lemegeton
сообщение Dec 7 2004, 18:36
Сообщение #463


Level 10
Иконки Групп

Класс: Монах
Характер: Lawful Good
Раса: Человек
NWN: Контент



Хм, наверное неверно сформулировал. Вопрос еще глупее чем абсолютная глупость.

Добавляю в spell.2da строчку (спелл появляется в игре), но не могу понять, как ему назначить скрипт?
Пробовал создать файл с именем таким, каким я его обозначил в 2da + nss, сложил в кучку в хак, хак подключил - спел появился, скрипт не вызвался.

Может я :slow: ?

baskan:

Как это у тебя на OnClientEnter стоит ДВА скрипта?!

QUOTE
...я их пишу в слоте...


КАК??? Через запятую, что-ли? Поправте меня, многоуважаемые, если я не прав, но IMHO только один скрипт можно вызывать по событию... Или я что-то пропустил в этой жизни?

Если меня перглючило и просто второй скрипт (который фунция main) запускает первый (который функция Subrace), то действительно не понятно, чего это он не запускается. Выкладывай код.

Маловероятно, но если все-таки можно поставить два скрипта на одно событие, то, наверное, второй скрипт тоже должен содержать (начинаться с) функцию void main().

Сообщение отредактировал Lemegeton - Dec 7 2004, 18:50
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Dec 7 2004, 19:51
Сообщение #464


Level 19
Иконки Групп

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



Всем спасибо. :yes: Робы отображаются, музыка почти готова к редактированию.
Назрел следующий вопрос:
можно ли одеть игрока в неснимаймую броню и шлем с самого начала игры? (простой cursed нежелателен)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение Dec 7 2004, 20:50
Сообщение #465


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



QUOTE (baskan @ Dec 7 2004, 16:12)
Так вот я их пишу в слоте, сохраняю, все норм, но в игре, у меня перестают работать подрассы, а если поставить в этот слот один скрипт подрасс все норм...Как мне сделать чтобы и тот и тот скрипт работал?

Ты должен понимать, что ни одна функция кроме void main() сама по себе не запустится в скрипте по событию, где бы она не стояла! Здесь ты должен из "внутреностей" void main() вызвать функцию Subrace(oPC);. Делается это примерно так...
Neverwinter Script Source
void Subrace(object oPC)
{
    .............
}
void main()
{
    object oPC = GetEnteringObject();
    ............
    Subrace(oPC);
    ............
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
MasterMage
сообщение Dec 7 2004, 21:04
Сообщение #466


Level 8
***

Класс: Маг
Характер: Lawful Good
Раса: Полуэльф



плизззззззз, напишите полный скрипт с объяснением, как перепрыгуть NPC`у в другую локацию...не получается эту локацию задать:(
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lemegeton
сообщение Dec 7 2004, 21:42
Сообщение #467


Level 10
Иконки Групп

Класс: Монах
Характер: Lawful Good
Раса: Человек
NWN: Контент



В любом (в пределах разумного) скрипте:

CODE
...
   objectoHome = GetObjectByTag("mn_Portal");
   location lHome = GetLocation(oHome);
   JumpToLocation(lHome);
...


"Сложная" версия для того, чтобы было понятней.

Существует объект с тэгом mn_portal. Это любой размещаемый объект, можно (и желательно) WayPoint (точка пути). Объект может быть размещен где угодно. Даже на другой зоне (area).

Во-первых получаем сам объект:


Тип данных object хранит объект (на самом деле лишь ссылку на него, но это не важно).

object oHome = GetObjectByTag("mn_Portal");

Функция GetObjectByTag возвращает "ссылку" на объект с тэгом, заданным параметром.

В данном случае мы передаем тэг объекта "mn_portal" (string) получаем объект с тэгом "mn_portal" (object).

Во вторых получаем координаты объекта:

location lHome = GetLocation(oHome);

Тип данных location хранит координаты (и много чего другого).

Функция GetLocation возвращает координаты объекта, заданного параметром.

В данном случае, параметром является объект с тэгом "mn_portal" (object), и получаем полные координаты размещаемого объекта (location).

В-третьих совершаем само перемещение:

JumpToLocation(lHome);

Функция JumpToLocation перемещает объект OBJECT_SELF (в основном это будет PC) в место как можно ближе к координатам, указаным в параметре. Т.е. если в точке приземления будет стол, то перс окажется рядом со столом. Если точка перемещения окажется слишком близко, объект перемещения может просто сделать шаг.

Сообщение отредактировал Lemegeton - Dec 7 2004, 21:43
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Dec 7 2004, 22:42
Сообщение #468


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



QUOTE (Lemegeton @ Dec 7 2004, 21:36)
Поправте меня, многоуважаемые, если я не прав, но IMHO только один скрипт можно вызывать по событию... Или я что-то пропустил в этой жизни?

Хоть сотню :)
Neverwinter Script Source
ExecuteScript(string sScript, object oTarget)

QUOTE (Vhall’rafein @ Dec 7 2004, 22:51)
можно ли одеть игрока в неснимаймую броню и шлем с самого начала игры? (простой cursed нежелателен)

Neverwinter Script Source
void ActionEquipItem(object oItem, int nInventorySlot)

Дальше на хербите проверяй, если нет итема с таким-то тагом в слоте таком то, то пинай в зад РС и ...
Neverwinter Script Source
ExecuteScript("надеть_долбанный_шлем")

Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 7 2004, 22:48
Сообщение #469


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Нет, Айв, он имеет ввиду через UserEvent. Но ответ как ни странно верный. Хоть сотню. Те можно юзать номера ивентов не тольлько стандартные, но и твои. Но запускать их придется в ручную.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lemegeton
сообщение Dec 8 2004, 17:58
Сообщение #470


Level 10
Иконки Групп

Класс: Монах
Характер: Lawful Good
Раса: Человек
NWN: Контент



QUOTE
Хоть сотню...


Поподробнее, если можно... Я думал, что один скрипт вызывается, из которого нужно вызывать другие, а если можно сразу несколько...

Ну помогите же ламеру...

:help: :help: :help:

Добавляю в spell.2da строчку (спелл появляется в игре), в строчке указываю имя скрипта, но не могу понять, как ему назначить скрипт? Пробовал создать файл с именем таким, каким я его обозначил в 2da + nss, сложил в кучку в хак, хак подключил - спел появился, скрипт не вызвался.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 8 2004, 19:30
Сообщение #471


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



что-то я не догоняю, что тебе надо (про вызывющиеся скрипты)


про спелл.2да я пока не шарю... Но сам хочу узнать, как все там делается
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lemegeton
сообщение Dec 8 2004, 19:58
Сообщение #472


Level 10
Иконки Групп

Класс: Монах
Характер: Lawful Good
Раса: Человек
NWN: Контент



Lex: Да, ладно, проехали. Просто Aiwan сказал, что хоть сотню скриптов можно на одно событие вешать, а я думал, что только один и через него вызывать другие. Но это, собственно, не шибко-то и нужно. :crazy:

Мне сейчас гораздо важнее узнать, как новые спеллы делать. На старом форуме тема про 2да была, так она на самом интересном месте прервалась. Именно про спеллы. Как новым спеллам скрипты назначать??? :xz:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 8 2004, 20:04
Сообщение #473


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



если я правильно все понимаю, то в спелл 2да прописано, какой скрипт запустится, если кастовать спелл. Трабла в том, что он не запускается? (а может он не верно работает, ты проверял, он именно не запускается?)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lemegeton
сообщение Dec 8 2004, 20:19
Сообщение #474


Level 10
Иконки Групп

Класс: Монах
Характер: Lawful Good
Раса: Человек
NWN: Контент



Да. Проверял. Он ИМЕННО не запускается. (Я подставлял код из другого спела, подставлял SpeakString и т.д. :D ). Я точно что-то делаю не так, а что - не знаю.

Сообщение отредактировал Lemegeton - Dec 8 2004, 20:53
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Dec 8 2004, 23:42
Сообщение #475


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Lemegeton сделай тему про скрипты и спеллы. Актуально многим будет. Там и поговорим все.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Dec 9 2004, 11:32
Сообщение #476


Level 10
***

Класс: Воин
Характер: Lawful Neutral
Раса: Человек
NWN: Скриптинг [PW]



Тут возникла серия вопросов:

1. Есть НПС у которого диалог. Игрок может выбрать что ответить, а может просто нажать "Esc" и диалог убереться. Как отследить что игрок снимает диалог?

2. В тулсете под палитрой есть чекбокс "Show Plot". Если на нем поставить галочку появляется Plot Wizard, Non Plot Wizard. Что это такое и с чем его едят?

3. Остальные вопросы в тему "Скрипты" отпишу.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Dec 9 2004, 14:00
Сообщение #477


Level 19
Иконки Групп

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



можно ли привязать одежду к определенному полу? (женской модели у плаща нет:/)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DBColl
сообщение Dec 9 2004, 15:11
Сообщение #478


4-х Кубовый
Иконки Групп

Класс: Некромант
Характер: Lawful Evil
Раса: Человек
NWN: Скриптинг [Sn]
Проклятие Левора



QUOTE (Аваддон @ Dec 9 2004, 10:32)
1. Есть НПС у которого диалог. Игрок может выбрать что ответить, а может просто нажать "Esc" и диалог убереться. Как отследить что игрок снимает диалог?

Последняя вкладка в диалог эдиторе там типа события End Normal и End Abort...
QUOTE (Аваддон @ Dec 9 2004, 10:32)
2. В тулсете под палитрой есть чекбокс "Show Plot". Если на нем поставить галочку появляется Plot Wizard, Non Plot Wizard. Что это такое и с чем его едят?

Это для того, чтобы писать простые (принеси, убей) квесты визардом. Никогда не пользовался, хотя разобраться, вроде разобрался с ним. Ничего сложного.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Dec 9 2004, 15:12
Сообщение #479


Level 10
***

Класс: Воин
Характер: Lawful Neutral
Раса: Человек
NWN: Скриптинг [PW]



QUOTE (Vhall’rafein @ Dec 9 2004, 14:00)
можно ли привязать одежду к определенному полу? (женской модели у плаща нет:/)



Можно. В CEP это возможно при помощи нововведения в свойствах предмета: "Use Limitation: Gender".
Если у тебя не CEP то это можно сделать скриптово. Например нам надо сделать чтобы Мужскую Одежду, не могли одевать женщины. У нас есть 2 мужских шмотки. На событие модуля OnPlayerEquipOtem ставим нижеследующий скрипт:
Neverwinter Script Source
void main()
{
object oItem = GetPCItemLastEquipped();
object oPC = GetPCItemLastEquippedBy();
string sTag = GetTag(oItem);
if (sTag=="тэг_первой_мужской_одежды"||sTag=="тэг_второй_мужской_одежды" && GetGender(oPC)==GENDER_FEMALE)
/* GENDER_FEMALE - женщина, GENDER_MALE - мужчина. Знак && = "и", знак || = или.
Тоесть можно хоть сто шмоток вписать путем sTag=="1ый_мужской_костюм" || sTag=="2ой_мужской_костюм" || sTag=="3ий_мужской_костюм"
... и так далее, потом && GetGender(oPC)== Пол который не может это одевать (Женский)*/

{
AssignCommand(oPC,ActionUnequipItem(oItem));
SendMessageToPC(oPC,"Вы не можете носить мужскую одежду");
}
}


Сообщение отредактировал Аваддон - Dec 9 2004, 15:13
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Dec 9 2004, 16:13
Сообщение #480


Level 19
Иконки Групп

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



Хм... проверим. Сенк. :yes:
Вот хотелось бы спросить, есть ли достойный учебник по скриптингу? а-ля "Введение в Скриптинг"? Нужно самое основное. АЗЫ, как говорит Айван :)

//и совсем ламерский вопрос: как включить консоль в НВН?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Dec 9 2004, 16:40
Сообщение #481


Level 10
***

Класс: Воин
Характер: Lawful Neutral
Раса: Человек
NWN: Скриптинг [PW]



Консоль включается тильдой " ~ ". Если она не включается - нажми Ctrl+Alt (или ка ку тебя раскладка переключается) и опять попробуй. Она включается только когда клавиатура на англ.
Так же консольные команды НЕОБЯЗАТЕЛЬНО писать в конслоль можно ее писать в строке чата, добавив перед ней ##.
Например ##dm_givegold
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Dec 9 2004, 16:59
Сообщение #482


Level 19
Иконки Групп

Класс: Обыватель
Характер: True Neutral
Раса: Дварф
NWN: Контент



А можно ли выключить grid в тулсете?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Dec 9 2004, 17:15
Сообщение #483


Level 10
***

Класс: Воин
Характер: Lawful Neutral
Раса: Человек
NWN: Скриптинг [PW]



Да, сверху четвертая закладка File...Edit...View...Environment>Display Grid
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lemegeton
сообщение Dec 9 2004, 19:46
Сообщение #484


Level 10
Иконки Групп

Класс: Монах
Характер: Lawful Good
Раса: Человек
NWN: Контент



Vhall’rafein: По всем моим вылазкам за инфой я понял, что более-менее достойного туториала (да и вообще какого-либо) для NWScript не существует. Остается только Lexicon (чистый English, хотя кто-то и пытался переводить) да учебники введения в С++.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Аваддон
сообщение Dec 9 2004, 20:35
Сообщение #485


Level 10
***

Класс: Воин
Характер: Lawful Neutral
Раса: Человек
NWN: Скриптинг [PW]



nws очень похож на php
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

205 страниц V  « < 18 19 20 21 22 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 8th July 2025 - 19:47