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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
205 страниц V  « < 86 87 88 89 90 > »   
Ответить в эту темуОткрыть новую тему
> Вопросы новичков, Абсолютные глупости
Daemonix
сообщение Oct 1 2005, 13:59
Сообщение #2171


Level 10
***

Класс: Мастер Оружия
Характер: Lawful Good
Раса: Человек



Darkelf
Напиши мне на мыло ugr@inbox.ru. Я тебе пришлю кое-какие туториалы.

Сообщение отредактировал Daemonix - Oct 1 2005, 14:00
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
zmey
сообщение Oct 3 2005, 11:30
Сообщение #2172


Level 4
**

Класс: Маг
Характер: Chaotic Evil
Раса: Дракон



Здрасьте! Пишу сюда вопрос по скриптам, потому, что считаю себя новичком. А то в скриптах скажут: посмотри то-то, измени там-то...а конкретики никакой.

Вопрос нумер раз. Нужон такой скрипт: на вход в локу. на предмете в инвентаре перса последовательно перебираются переменные, и если переменная = 1, то В МОДУЛЕ(в другой локе) дестроится объект с тегом (имя переменной). Затем берется следующая переменная и так пока все не будут перебраны.

вопрос номер два: на вход в локу. на предмете в инвентаре последовательно перебираются переменные, и если переменная больше нуля, то в журнал перса заносится запись (имя переменной) с номером (значение переменной). затем берется следующая переменная.

Я ЦИКЛЫ НЕ ПОНИМАЮ, ТОЧНЕЕ, УСЛОВИЯ ИХ ВЫПОЛНЕНИЯ!!!!!!!! :shout:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Oct 3 2005, 12:36
Сообщение #2173


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

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



QUOTE (zmey @ Oct 3 2005, 12:30)
Я ЦИКЛЫ НЕ ПОНИМАЮ, ТОЧНЕЕ, УСЛОВИЯ ИХ ВЫПОЛНЕНИЯ!!!!!!!!

Теперь понятно?

do Loop (цикл до - цикл с постусловием)

В своей практической деятельности человек постоянно сталкивается с задачами, при решении которых требуется многократно повторять одни и те же действия. Для составления алгоритмов решения таких задач используют циклы. Цикл – повторяющиеся действия. Циклы бывают с предусловием (do - while), с постусловием (while - do), и со счетчиком (for). У каждого цикла есть тело цикла - это группа выполняемых операторов заключенных в оперативные скобки. Все эти операторы будут выполняться каждый раз, как будет верно условие вхождения в цикл. Если в теле цикла один оператор, то оперативные скобки можно не ставить.

Сейчас мы поговорим о циклах с постусловием. Этот цикл так называется, потому что условие входа в цикл стоит после тела цикла, т.е с начало выполняются операторы, а потом проверяется условие. При таком построении цикл выполнится хотя бы один раз. Структура цикла с постусловием выглядит так:
do { оператор(ы); } while (условие); Читается это так: “выполнить оператор(ы) пока условие верно ”.

Важно: Если в условии стоит переменная, то ее тип должен быть объявлен перед циклом.

Neverwinter Script Source
// структура
   do
   {
      оператор(ы);
   }
   while (условие);


// использование
int i; // определяем тип переменной

do
{ //начало тела цикла

     PrintInteger(i); // первый оператор
     i++;             // второй оператор

} // конец тела цикла

while (i < 5); // условие входа в цикл (i < 5)


while Loop (цикл пока – цикл с предусловием)

Цикл с предусловием отличается только тем, что условие стоит в начале тела цикла – значит данный цикл может не выполнится ни разу.

Важно: Если в условии стоит переменная, то ее тип должен быть объявлен перед циклом.
Neverwinter Script Source
// структура

   while (условие)
   {
       оператор(ы);
   }


// использование
int i; // определяем тип переменной

while (i < 5) // условие входа в цикл
{
     // оператор...
     i++;
}


for Loop (цикл для – цикл со счетчиком)

Когда известно число повторений удобно использовать цикл for.
Neverwinter Script Source
// структура

   for (выражение 1; выражение 2; выражение 3)
   {
       оператор(ы);
   }


Выполнение цикла for, представляется тремя выражениями:

• выражение 1 объявляет счетчик цикла, его начальное значение.

Важно: Счетчик цикла является переменной, поэтому перед её использованием нужно определить её тип.

• выражение 2 - это условие для выполнения цикла. Если выражение 2 оценивается в лож, то цикл прерывается. Это выражение может быть оставлено пустым, чтобы создать неполный цикл, если вы хотите в ручную прервать цикл использующий оператор break.

• выражение 3 - это оператор приращения. Он будет выполняться всякий раз после выполнения операторов в теле цикла. Он может выглядеть, как i++ и как i--. Проще говоря этот оператор показывает в какую сторону (положительную или отрицательную) изменять выражение 1.

Neverwinter Script Source
int i; // определяем тип переменной

for (i = 0; i < 5; i++) // условие цикла. i будет изменяться от 0 до 4                       
{
     // оператор(ы) ...
     // в этом цикле i будет иметь значение 0, 1, 2, 3 и 4
}


Пример представленный выше читается так: “Для i начиная с 0 до 4 выполнить операторы”. А действовать он будет так – в первый раз переменная i установится на 0, дальше проверится меньше ли i 5, после чего будут выполнены операторы в оперативных скобках. После выполнения операторов переменная i увеличится на 1 – это произойдет благодаря оператору приращения (i++), после чего снова будет проверенно выражение 2. Как только выражение 2 не выполнится цикл прервется.

zmey, зачем тебе перебирать переменные, разве ты не знаешь название нужной тебе? К тому же если у тебя их не сколько, то может быть 2 или больше переменных со значением 1, к тому же поиск переменных идет по имени, а имена могут быть всякии!

Aiwan: плюсом одарить не могу, так как уже недавно наградил. Но "взял на карандаш" ... :D

Сообщение отредактировал Aiwan - Oct 4 2005, 06:13
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Oct 3 2005, 22:30
Сообщение #2174


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

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



QUOTE (-fenix- @ Oct 3 2005, 13:36)
лож

вроде как единственная ошибка в тексте при беглом осмотре. Молодец.
Чуть больше примеров (тот же скрипт удаления всех вещей в инвентаре)
и будет совсем хорошо!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Geck0
сообщение Oct 4 2005, 00:39
Сообщение #2175


Level 2
*

Класс: Рейнджер
Характер: True Neutral
Раса: Полуэльф



Можно поинтересоваться существует ли конвертер видео-файлов обчного формата, в bik используемый в NWN и многих других игрушках... Поделитесь ссылкой плиз, если есть.

И существует ли перевод на русский язык всех функций скриптов? Если - да, можно ли линку узнать.

Сообщение отредактировал Geck0 - Oct 5 2005, 00:23
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Isendel
сообщение Oct 5 2005, 21:40
Сообщение #2176


Level 10
***

Класс: Бард
Характер: Chaotic Good
Раса: Эльф



А можно ли сделать, чтобы при входе в модуль игроку ставилось опр. имя, раса (но не класс)? Или так, чтобы можно было входить только определенным чаром, но при этом выбрать класс. Ну или в крайнем случае и без класса обойтись.
???
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Oct 5 2005, 22:26
Сообщение #2177


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

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



QUOTE (Isendel @ Oct 5 2005, 22:40)
А можно ли сделать, чтобы при входе в модуль игроку ставилось опр. имя, раса (но не класс)?

Нет.

QUOTE (Isendel @ Oct 5 2005, 22:40)
Или так, чтобы можно было входить только определенным чаром, но при этом выбрать класс.

Чтобы можно было войти да,

Например так, на OnAreaTransitionClick двери или на OnClick тригера, у которых настроен переход!
Neverwinter Script Source
void main()
{
object oClicker = GetClickingObject();
object oTarget = GetTransitionTarget(OBJECT_SELF);
int iRace = GetRacialType(oClicker);

if(iRace == RACIAL_TYPE_HUMAN)
{
    SetAreaTransitionBMP(AREA_TRANSITION_RANDOM);
    AssignCommand(oClicker,JumpToObject(oTarget));
}
else
{
    AssignCommand(OBJECT_SELF, SpeakString("Вы не попадете в эту область"));
}
}

Пройдут только люди.

а про выбор класса не понял, но скорее всего нет.

Сообщение отредактировал -fenix- - Oct 6 2005, 05:02
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Oct 5 2005, 23:02
Сообщение #2178


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

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



QUOTE (Isendel @ Oct 6 2005, 00:40)
А можно ли сделать, чтобы при входе в модуль игроку ставилось опр. имя, раса (но не класс)?

Конечно можно.
Neverwinter Script Source
void main()
{
    object oPC = GetEnteringObject();
    string sName = "Вася Пупкин";
    string sMessage = "Ваше имя не нравится мне!";
    if (GetIsPC(oPC) && GetName(oPC)!=sName)
      {
      PopUpDeathGUIPanel(oPC, FALSE, TRUE, 0, sMessage);
      return;
      }
}
Geck0 перевода нет и не будет. Кроме перевода Валео.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Geck0
сообщение Oct 6 2005, 00:11
Сообщение #2179


Level 2
*

Класс: Рейнджер
Характер: True Neutral
Раса: Полуэльф



QUOTE (Aiwan @ Oct 5 2005, 23:02)
Geck0 перевода нет и не будет. Кроме перевода Валео.

Перевод Валлео это который на RPG Planet? За 2003 год вроде, да?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Isendel
сообщение Oct 6 2005, 10:51
Сообщение #2180


Level 10
***

Класс: Бард
Характер: Chaotic Good
Раса: Эльф



А ставить на локу или на модуль?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
AliceDiren
сообщение Oct 6 2005, 11:45
Сообщение #2181


Level 7
**

Класс: Маг
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [Sn]



Isendel , то что сказал Aiwan - на модуль. Не стоит убивать героя за то, что он попал не в ту локу :) . На локу можно просто не пустить, но это тоже было описано Fenix'ом.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Isendel
сообщение Oct 6 2005, 11:47
Сообщение #2182


Level 10
***

Класс: Бард
Характер: Chaotic Good
Раса: Эльф



И еще я хотел бы узнать, как при входе в модуль, делать игроку в журнале сообщение.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
AliceDiren
сообщение Oct 6 2005, 11:57
Сообщение #2183


Level 7
**

Класс: Маг
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [Sn]



Neverwinter Script Source
void AddJournalQuestEntry(
    string szPlotID,
    int nState,
    object oCreature,
    int bAllPartyMembers=TRUE,
    int bAllPlayers=FALSE,
    int bAllowOverrideHigher=FALSE);

В скрипте на OnClientEnter что-нибудь вроде:
Neverwinter Script Source
object oPC = GetEnteringObject();
AddJournalQuestEntry("Таг квеста в журнале", 1, oPC);
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
_kaa_
сообщение Oct 6 2005, 12:42
Сообщение #2184


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

Класс: Волшебник
Характер: Chaotic Good
Раса: Дракон
NWN: Скриптинг [PW]



QUOTE (Isendel @ Oct 6 2005, 12:47)
И еще я хотел бы узнать, как при входе в модуль, делать игроку в журнале сообщение.

Читай тут, доступней некуда :)
http://www.wrg.ru/forums/index.php?showtopic=1752
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Oct 6 2005, 15:26
Сообщение #2185


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

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



QUOTE (Isendel @ Oct 6 2005, 14:47)
И еще я хотел бы узнать, как при входе в модуль, делать игроку в журнале сообщение.

Это все расписано в мануале моем. Не пойму, влом читсть? Вот я скоро запрещу отвечать на вопросы, которые уже разобрали подробно. Цените время людей.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vitalist
сообщение Oct 7 2005, 15:17
Сообщение #2186


Level 4
**

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Поделитесь скриптом, который при окончание разговора открывает нужные двери.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Oct 7 2005, 16:20
Сообщение #2187


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

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



На совершенные действия
Neverwinter Script Source
void main()
{
SetLocked(GetObjectByTag("ТАГ двери"), FALSE);
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vitalist
сообщение Oct 8 2005, 12:23
Сообщение #2188


Level 4
**

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Fenix, сенкс!
В св-ах NPC можно поставить галочку на "Без прерывания" - это, я так понял, низя прервать диалог ESC'ом. Тогда почему его можно прервать у меня, хотя галку ставил?!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Oct 8 2005, 12:31
Сообщение #2189


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

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



QUOTE (Vitalist @ Oct 8 2005, 15:23)
В св-ах NPC можно поставить галочку на "Без прерывания" - это, я так понял, низя прервать диалог ESC'ом. Тогда почему его можно прервать у меня, хотя галку ставил?!

Нет. Прервать нельзя только в катсцене.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vitalist
сообщение Oct 8 2005, 15:44
Сообщение #2190


Level 4
**

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



А для чего тогда эта "без прерывания"?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
NedWarN
сообщение Oct 8 2005, 15:47
Сообщение #2191


Level 5
**

Класс: Маг
Характер: Lawful Good
Раса: Тварь



QUOTE
А для чего тогда эта "без прерывания"?

Скрипты, рождены для того чтобы "Тупить", ета функцыя помогает Неписю, не отвелактся. А в НВН прервать можно что угодно.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Oct 8 2005, 15:48
Сообщение #2192


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

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



QUOTE (Vitalist @ Oct 8 2005, 16:44)
А для чего тогда эта "без прерывания"?

Для шардов, чтобы два чела не могли одновременно разговаривать с одним НПС.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
NedWarN
сообщение Oct 8 2005, 15:51
Сообщение #2193


Level 5
**

Класс: Маг
Характер: Lawful Good
Раса: Тварь



QUOTE
Для шардов, чтобы два чела не могли одновременно разговаривать с одним НПС.

Етого я не знал, пасиба.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vitalist
сообщение Oct 8 2005, 18:27
Сообщение #2194


Level 4
**

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Значит, такая вот ситуация:
Есть один NPC1, при разговоре с которым задаеться переменная. Она отвечает за начало разговора с другим NPC2. Если с ним поговорить сразу, то все нормально, но если поговорить с еще одним другим NPC3 (при этом первый NPC дестроиться), то ничего не происходит... Я пробовал поставить туже переменную в разговор со вторым - тот же результат. Как рациональней это сделать? Типа, устроить проверку у NPC2 на две переменный: NPC1 или другая от NPC3...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Вишес
сообщение Oct 8 2005, 18:43
Сообщение #2195


Level 13
****

Класс: Ниндзя
Характер: Chaotic Evil
Раса: Танар'ри



Может ты локальную переменную на кого вешаешь? Если на Первую непись то понятно по чему теряется.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

205 страниц V  « < 86 87 88 89 90 > » 
Ответить в эту темуОткрыть новую тему
6 чел. читают эту тему (гостей: 6, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 22nd July 2025 - 21:12