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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
205 страниц V  « < 68 69 70 71 72 > »   
Ответить в эту темуОткрыть новую тему
> Вопросы новичков, Абсолютные глупости
Vitalist
сообщение Jul 27 2005, 19:36
Сообщение #1726


Level 4
**

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



-fenix-, мог бы ты ещё написать КУДА мне это вводить? И вот ещё: нужно чтобы просто убралась вся экипировка и инвентарь.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 27 2005, 20:57
Сообщение #1727


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

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



QUOTE (Vitalist @ Jul 27 2005, 19:36)
-fenix-, мог бы ты ещё написать КУДА мне это вводить?

Кидать это в OnClientEnter модуля.
QUOTE (Vitalist @ Jul 27 2005, 19:36)
И вот ещё: нужно чтобы просто убралась вся экипировка и инвентарь.

Тогда оставь только удаление, а раздачу предметов сотри!
Neverwinter Script Source
void main()
{
object oPC = GetEnteringObject(); // это PC
object oStore = GetModule(); // это модуль
int PCClass = GetClassByPosition(1, oPC); // класс PC

if(GetLocalInt(oStore, "DAL") != 1)// проверка

{
  SetLocalInt(oStore, "DAL", 1);
  object oItem = GetFirstItemInInventory (oPC);
  while(GetIsObjectValid(oItem)) // чистим инвентарь у PC
    {
    DestroyObject(oItem);
    oItem = GetNextItemInInventory (oPC);
    }
  int i=0;
  while(i<14)// чистим слоты у PC
    {
    DestroyObject(GetItemInSlot(i, oPC));
    i++;
    }
}
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 27 2005, 21:49
Сообщение #1728


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



-fenix- если уж совсем верно, то нужно писать так:

Удаление надетых вещей:
Neverwinter Script Source
int i;

for (i = 0; i < 14; i++)
{
    object oEquip = GetItemInSlot(i, oPC);

    if (GetIsObjectValid(oEquip)) DestroyObject(oEquip);
}

И проверять лучше не на переменную, а на функцию определения опыта:
Neverwinter Script Source
if (!GetXP(oPC)) // т.е. равно 0
{
    // требуемый код
}

Иначе после каждого рестарта будет все по новой :lol: Но после выполнения всего скрипта надо написать следующее:

Neverwinter Script Source
if (!GetXP(oPC))
{
    SetXP(oPC, 1);
}

С золотом можно еще так:
Neverwinter Script Source
int StartGold = 0;

if (StartGold == 0)
{
    if (GetLevelByClass(CLASS_TYPE_BARBARIAN, oPC))      StartGold = d4(5) * 100;
    else if (GetLevelByClass(CLASS_TYPE_BARD, oPC))      StartGold = d4(4) * 100;
    else if (GetLevelByClass(CLASS_TYPE_CLERIC, oPC))    StartGold = d4(4) * 100;
    else if (GetLevelByClass(CLASS_TYPE_DRUID, oPC))    StartGold = d4(4) * 100;
    else if (GetLevelByClass(CLASS_TYPE_FIGHTER, oPC))  StartGold = d4(6) * 100;
    else if (GetLevelByClass(CLASS_TYPE_MONK, oPC))      StartGold = d4(4) * 100;
    else if (GetLevelByClass(CLASS_TYPE_PALADIN, oPC))  StartGold = d4(5) * 100;
    else if (GetLevelByClass(CLASS_TYPE_RANGER, oPC))    StartGold = d4(5) * 100;
    else if (GetLevelByClass(CLASS_TYPE_ROGUE, oPC))    StartGold = d4(6) * 100;
    else if (GetLevelByClass(CLASS_TYPE_SORCERER, oPC))  StartGold = d4(3) * 100;
    else if (GetLevelByClass(CLASS_TYPE_WIZARD, oPC))    StartGold = d4(3) * 100;
    else                                                StartGold = d4(4) * 100;
}
GiveGoldToCreature(oPC, StartGold - GetGold(oPC));
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Daemonix
сообщение Jul 28 2005, 10:26
Сообщение #1729


Level 10
***

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



У меня тут вопросик возник:
как сделать так, чтобы непись после разговора пошёл и сел на диван и там и сидел?
У меня есть скрипт для дивана
CODE

void main()
{
AssignCommand (OBJECT_SELF, ActionSit (GetObjectByTag ("диван")));
}

Но куда его вставлять?
Добавлено в [mergetime]1122535728[/mergetime]
И еще вопрос:
когда игрок говорит с каким-либо неписем, то камера во время продолжительного разговора ставится немного вправо и назад. А можно ли поменять на свой вкус положение камеры при разговоре?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jul 28 2005, 10:37
Сообщение #1730


Вечно меняющийся
Иконки Групп

Класс: Монах
Характер: True Neutral
Раса: Человек
NWN: Скриптинг [Sn]



QUOTE
Но куда его вставлять?

На ХерБит ставь...
QUOTE
У меня тут вопросик возник:
как сделать так, чтобы непись после разговора пошёл и сел на диван и там и сидел?

В строчку диалога на вкладку Совершены Действия поставь вот этот скриптик:
Neverwinter Script Source
void main()
{
object oNPC = GetObjectByTag("Тэг НПС");
AssignCommand (oNPC, ActionSit (GetObjectByTag ("Тэг дивана")));
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Daemonix
сообщение Jul 28 2005, 12:40
Сообщение #1731


Level 10
***

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



Dik Morris!
А ты уверен, что это заработает? Помнишь Нерила? Вот на него я и хочу поставить. Диалог кончается, а вместе с ним и катсцена. И он уходит на диван...
Добавлено в [mergetime]1122543664[/mergetime]
Я имею в виду на хартбите.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 28 2005, 13:37
Сообщение #1732


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

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



QUOTE (Zirrex @ Jul 27 2005, 21:49)
-fenix- если уж совсем верно, то нужно писать так:

Через for оно конечно нагляднее.
QUOTE (Zirrex @ Jul 27 2005, 21:49)
И проверять лучше не на переменную, а на функцию определения опыта:

А если мне не надо давать и 1 опыта в начале!? Ты так жестко это говоришь, типа надо так и ни как иначе.
QUOTE (Zirrex @ Jul 27 2005, 21:49)
Иначе после каждого рестарта будет все по новой

Вот не земетил я такого! И после рестарта и после загрузки, все нормально, по второму разу не выдается!


QUOTE (Zirrex @ Jul 27 2005, 21:49)
С золотом можно еще так:

Ух, что только мое извращенное :crazy: воображение не предумывало с этим золотом (тут перечислять не буду) :D

QUOTE (Daemonix @ Jul 28 2005, 10:26)
когда игрок говорит с каким-либо неписем, то камера во время продолжительного разговора ставится немного вправо и назад. А можно ли поменять на свой вкус положение камеры при разговоре?

На сколько я понимаю, то это не изменить. Можно только в разговоре в кутсценке это отменить и выставить свой наклон.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vitalist
сообщение Jul 28 2005, 13:49
Сообщение #1733


Level 4
**

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



-Fenix-, бАльшое тебе спасибище! Не знаю, что бы вез вас делал...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
zmey
сообщение Jul 28 2005, 13:49
Сообщение #1734


Level 4
**

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



извиняюсь, что вопросы в разные темы.... - интернет медленный, (ВЫРЕЗАНО ЦЕНЗУРОЙ)!

ежели не жалко, идейку подкиньте, как сделать, чтобы непись шел к случайно выбранному WP из нескольких известных? :crazy:
Добавлено в [mergetime]1122548275[/mergetime]
.............как запретить респаун?
Добавлено в [mergetime]1122548514[/mergetime]
.....ссылку на нвн эксплорер, плиз... :yes: :crazy:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Auren
сообщение Jul 28 2005, 14:37
Сообщение #1735


Сивоха
***

Класс: Некромант
Характер: Lawful Evil
Раса: Человек



QUOTE (zmey @ Jul 28 2005, 13:49)
ежели не жалко, идейку подкиньте, как сделать, чтобы непись шел к случайно выбранному WP из нескольких известных? 


Используй switch() а в нем Random(int x)

QUOTE (zmey @ Jul 28 2005, 13:49)
.............как запретить респаун?


На ondeath модуля функцию PopUpDeathGUIPanel(oPC,FALSE,TRUE,0, sDeathMessage);

Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vhall
сообщение Jul 28 2005, 15:09
Сообщение #1736


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

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



QUOTE (zmey @ Jul 28 2005, 13:49)
....ссылку на нвн эксплорер, плиз... yes.gif crazy.gif
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 28 2005, 19:29
Сообщение #1737


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



QUOTE
Вот не земетил я такого! И после рестарта и после загрузки, все нормально, по второму разу не выдается!

Такое работает только при условии, если переменная сохраняется, и постоянно остается равной 1, даже после рестарта, если же нет, то итог прост, обработка скрипта происходит вновь.

Почему я аргументирую, что надо. Потому что по моему пути этого именно надо, так как переменной нету. По твоему пути надо сохранять переменную. Получается, что одно и тоже.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Daemonix
сообщение Jul 28 2005, 22:45
Сообщение #1738


Level 10
***

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



Вот у меня тута недоразумение. Есть такой скрипт.

CODE
void main()
{
object oPC = GetPCSpeaker();
object oNPC = GetObjectByTag("neril");
ActionWait(1.5);
AssignCommand (oNPC, ActionSit (GetObjectByTag ("nerilhome2_sofa")));
ActionDoCommand(AssignCommand(oNPC, ActionDoCommand(SetCutsceneMode(oPC, FALSE))));
}

Стоит на последней строке разговора. Непись бежит на диван, но катсцена не кончается почему-то...
А если убрать строку про диван, то всё пашет!
Никто не знает, почему?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DEM
сообщение Jul 29 2005, 00:07
Сообщение #1739


Level 7
**

Класс: Маг
Характер: Lawful Neutral
Раса: Эльф



Я конечно не скриптёр года, Но может попробуй так?
Neverwinter Script Source
DelayCommand(SetCutsceneMode(oPC,FALSE));


Может и не праильно, тогда извеняюсь :vava: :this:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Daemonix
сообщение Jul 29 2005, 00:24
Сообщение #1740


Level 10
***

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



Не, Dem, всё равно не пашет.. :this:

У меня тут, если не сложно, 2ой вопрос:
используя приведённый выше код непись БЕЖИТ к стулу, сломя голову. А можно ли сделать так, чтобы он просто шёл, а не бежал, как все нормальные люди?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
DEM
сообщение Jul 29 2005, 00:32
Сообщение #1741


Level 7
**

Класс: Маг
Характер: Lawful Neutral
Раса: Эльф



Да.. это даже я знаю :D (без обид) Вместо FALSE, ставь TRUE (и наоборот)...
И как всегда говрит Lex:"Зачем даёться кнопка NSS?" :D
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Агрессинг
сообщение Jul 29 2005, 03:54
Сообщение #1742


Level 5
**

Класс: Убийца
Характер: True Neutral
Раса: Чудовище



Daemonix
QUOTE
AssignCommand (oNPC, ActionSit (GetObjectByTag ("nerilhome2_sofa")));
ActionDoCommand(AssignCommand(oNPC, ActionDoCommand(SetCutsceneMode(oPC, FALSE))));
}

Ты посмотри, у тебя в сите сразу Assing идет. Вставь ActionDoCommand.
ЗЫ
А вообще по мне так удобнее пользоваться Дилеем.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 29 2005, 09:02
Сообщение #1743


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



А не проще ли вначале подойти к софе, а уж только потом сесть на нее?

Neverwinter Script Source
void main()
{
    object oPC = GetPCSpeaker();
    object oNPC = OBJECT_SELF;
    object oSofa = GetNearestObjectByTag("nerilhome2_sofa");

    ActionWait(1.5);
    AssignCommand(oNPC, ActionMoveToObject(oSofa, FALSE, 1.0));

    // проверка, не сидит ли уже кто-то на софе.
    if (!GetIsObjectValid(GetSittingCreature(oSofa)))
    {
        AssignCommand(oNPC, ActionSit(oSofa));
    }
    ActionDoCommand(SetCutsceneMode(oPC, FALSE));
}

И не надо никаких задержек, все действия начинаются только тогда, когда заканчиваются предыдущие действия, единственное решение с командой "ActionDoCommand", когда у функции нету такого начала, как "Action".

DEM функция задержки пишется так:

Neverwinter Script Source
DelayCommand(0.0, SetCutsceneMode(oPC,FALSE)); // где 0.0 - время;


Сообщение отредактировал Zirrex - Jul 29 2005, 19:15
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Daemonix
сообщение Jul 29 2005, 15:39
Сообщение #1744


Level 10
***

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



Ну не знаю, Zirrex, не компилирует, ссылаясь на ошибку в строке:
CODE
AssignCommand(oNPC, ActionMoveToObject(oSofa, FALSE, 1.0);
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 29 2005, 18:36
Сообщение #1745


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

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



Daemonix, скобку там забыли.
Neverwinter Script Source
AssignCommand(oNPC, ActionMoveToObject(oSofa, FALSE, 1.0));

Пользуйся кнопкой NSS


Хы, а еще вот тут не хватает :D
Neverwinter Script Source
if (!GetIsObjectValid(GetSittingCreature(oSofa )))

Ведать в спешке писали

Сообщение отредактировал -fenix- - Jul 29 2005, 18:48
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Zirrex
сообщение Jul 29 2005, 19:14
Сообщение #1746


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

Класс: Друид
Характер: True Neutral
Раса: Эльф
NWN: Скриптинг [PW]
Амен



Daemonix иногда полезно думать, а не просто копировать, тем более все ошибки редактор выделяет, когда происходит какой-нибудь казус при компиляции. Писал, я, и правда, в спешке, поэтому забыл расставить скобки, но скрипт работает, как надо.

Поправил свое сообщение, чтобы никого не смущало :)

Сообщение отредактировал Zirrex - Jul 29 2005, 19:15
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 29 2005, 21:23
Сообщение #1747


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

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



Блин, люди не как не могу понять, как заставить чела скастовать спел на другого чела. Можно через
Neverwinter Script Source
DelayCommand(165.0, AssignCommand(***, ActionCastSpellAtObject(тут спелл, o***, METAMAGIC_ANY, TRUE, 0)));

У чела нет умения, но с TRUE он кажись должен скастануть!

И еще, как наложить эффекты.
Я про те для которых нужна точка "выхода", тобишь молнии всякии.
Можно заставить чела их произвести на другого, а то пишу вот так и ни чего
Neverwinter Script Source
DelayCommand(173.0, AssignCommand(о***, ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(тут эффект), o***)));


Все уже разобрадся в чем дело :V:

Сообщение отредактировал -fenix- - Jul 29 2005, 22:42
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Daemonix
сообщение Jul 29 2005, 23:22
Сообщение #1748


Level 10
***

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



Zirrex
QUOTE
Daemonix иногда полезно думать, а не просто копировать, тем более все ошибки редактор выделяет, когда происходит какой-нибудь казус при компиляции. Писал, я, и правда, в спешке, поэтому забыл расставить скобки, но скрипт работает, как надо.


Я понял, просто я в скриптах почти не разбираюсь, да и сам их не пишу, а клею из кусочков чужих скриптов. Так что без обид. :yes:
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Ferst
сообщение Jul 30 2005, 18:43
Сообщение #1749


Level 2
*

Класс: Клерик
Характер: Neutral Good
Раса: Человек



QUOTE (-fenix- @ Jul 29 2005, 21:23)
Блин, люди не как не могу понять, как заставить чела скастовать спел на другого чела. Можно через

1. Сначала Assign, а _потом_ делей. Вполне возможно, что исчезает тот объект, от которого делается событие за столько минут. AssignCommand(oPC, DelayCommand(165.0, ..........

2. А точно делей нужен более 150 секунд? (165.0 = 165сек. )

3. Пишите пожалуйста полностью строчки кода, а если код маленький, то лучше весь код - быстрее получите ответ.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
-fenix-
сообщение Jul 30 2005, 19:13
Сообщение #1750


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

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



QUOTE (Ferst @ Jul 30 2005, 18:43)
1. Сначала Assign, а _потом_ делей. Вполне возможно, что исчезает тот объект, от которого делается событие за столько минут. AssignCommand(oPC, DelayCommand(165.0, ..........

2. А точно делей нужен более 150 секунд? (165.0 = 165сек. )

3. Пишите пожалуйста полностью строчки кода, а если код маленький, то лучше весь код - быстрее получите ответ.

1. Это зачем сначала Assign? Все и с Delay пашет.
2. Это ты про что?
3. Не могу я целиком, сценка на конкурс!

А есле пост по ниже почитать, то
QUOTE (-fenix- @ Jul 29 2005, 21:23)
Все уже разобрадся в чем дело

Просто кастер стоял далеко от объекта, вот и все.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

205 страниц V  « < 68 69 70 71 72 > » 
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 19th April 2024 - 17:23