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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
205 страниц V  « < 196 197 198 199 200 > »   
Ответить в эту темуОткрыть новую тему
> Вопросы новичков, Абсолютные глупости
Elendion
сообщение Sep 3 2017, 15:23
Сообщение #4911


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



Низкий вам поклон за терпение. Я тут сделал нового призываемого спутника через предмет и столкнулся с проблемой, что воспользовавшись этим предметом снова призывается второй спутник, а первый не исчезает, так можно наклепать кучку. Что делать? (IMG:style_emoticons/kolobok_light/unsure.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Sep 4 2017, 08:44
Сообщение #4912


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



У любого объекта есть тэг. По тэгу можно найти и проверить валидность. Если объект нашёлся, можно не создавать новый или уничтожить старый.

Искать что-то типа: GetObjectByTag, GetIsObjectValid, DestroyObject.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Melisse
сообщение Sep 4 2017, 13:05
Сообщение #4913


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

Класс: Волшебник
Характер: Neutral Good
Раса: Фея
NWN: Скриптинг [PW]
Край Лесов



Цитата
У меня журнал создан, ну вы уж совсем за идиота держите :/

да у меня и в мыслях не было, я ж помочь хочу..
Вы не пишите ошибку, которую выдает компилятор, никакой другой информации, а просто говорите что не работает - так это может быть по десятку причин.

Цитата
Я тут сделал нового призываемого спутника через предмет и столкнулся с проблемой, что воспользовавшись этим предметом снова призывается второй спутник, а первый не исчезает, так можно наклепать кучку. Что делать?


Если вы вызываете спутника через CreateObject, то тогда вам придется проверять через GetObjectTag тэг вызванного спутника, как сказал denis0k

Neverwinter Script
....
if(GetIsObjectValid(GetObjectByTag("ТЭГ_СПУТНИКА")))
{

   return;
}
...


если вы вызовите его как суммона через EffectSummonCreature() то при втором вызове он автоматом пересоздается.

Neverwinter Script
...
effect eSummon = EffectSummonCreature("РСЕРЕФ_ВАШЕГО СУЩЕСТВА", VFX_ВИЗУАЛЬНЫЙ ЭФФЕКТ);
ApplyEffectAtLocation (DURATION_TYPE_PERMANENT, eSummon, GetLocation(oPlayer));
...


Сообщение отредактировал Melisse - Sep 4 2017, 13:12
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 4 2017, 14:41
Сообщение #4914


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



Вот так оно выглядит и плодит их безмерно.
Neverwinter Script
void main()
{
object oActivator = GetItemActivator();
object oActivated = GetItemActivated();
string sTag = GetTag(oActivated);

if (sTag  == "MatildaX")
{
  effect eSummon = EffectSummonCreature("matilda");
ApplyEffectToObject(DURATION_TYPE_PERMANENT,
  SupernaturalEffect(eSummon), oActivator);
  return;
}


Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Melisse
сообщение Sep 4 2017, 19:49
Сообщение #4915


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

Класс: Волшебник
Характер: Neutral Good
Раса: Фея
NWN: Скриптинг [PW]
Край Лесов



Попробуйте это
Neverwinter Script
void main()
{
  object oActivator = GetItemActivator();
  object oActivated = GetItemActivated();
  string sTag = GetTag(oActivated);

  if (sTag  == "MatildaX")
  {
      if(!GetIsObjectValid (GetAssociate(ASSOCIATE_TYPE_SUMMONED, oActivator )))
      {
        effect eSummonedMonster = EffectSummonCreature("matilda", SPELL_SUMMON_CREATURE_I);
        ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eSummon, GetLocation(oActivator), HoursToSeconds(24));
      }
  }
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 4 2017, 19:56
Сообщение #4916


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



В строке
Neverwinter Script
ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eSummon, GetLocation(oActivator), HoursToSeconds(24));
ОШИБКА: ПЕРЕМЕННАЯ, ОПРЕДЕЛЕННАЯ БЕЗ ТИПА
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Melisse
сообщение Sep 5 2017, 12:54
Сообщение #4917


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

Класс: Волшебник
Характер: Neutral Good
Раса: Фея
NWN: Скриптинг [PW]
Край Лесов



ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eSummonedMonster, GetLocation(oActivator), HoursToSeconds(24));
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 5 2017, 13:25
Сообщение #4918


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



Да, на ошибки больше не ругается, но призывать никого не призывает теперь вообще х)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Melisse
сообщение Sep 5 2017, 14:43
Сообщение #4919


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

Класс: Волшебник
Характер: Neutral Good
Раса: Фея
NWN: Скриптинг [PW]
Край Лесов



Neverwinter Script
void main()
{
  object oActivator = GetItemActivator();
  object oActivated = GetItemActivated();
  string sTag = GetTag(oActivated);

  if (sTag  == "MatildaX")
  {
      if(!GetIsObjectValid (GetAssociate(ASSOCIATE_TYPE_SUMMONED, oActivator )))
      {
        effect eSummonedMonster = EffectSummonCreature("matilda");
        ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eSummonedMonster, GetLocation(oActivator), HoursToSeconds(24));
      }
      else
      {
            SendMessageToPC (oPC, "У вас уже есть призванное существо");
      }

  }
}


Проверь теги предмета и существа
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 5 2017, 15:23
Сообщение #4920


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



oPC на oActivator исправил, ибо опять ругалось.
Тег предмета верный, у существа стоял ResRef, раньше через него и работало, но даже если поставить тег - ничего не происходит. В общем раньше можно было наплодить много, а сейчас вообще ни одного.


Просто пишет, что используется специальная сила предмета и ничего не происходит.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Melisse
сообщение Sep 5 2017, 17:12
Сообщение #4921


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

Класс: Волшебник
Характер: Neutral Good
Раса: Фея
NWN: Скриптинг [PW]
Край Лесов



Попробуй так, может быть не читает локацию
Neverwinter Script
void main()
{
  object oActivator = GetItemActivator();
  object oActivated = GetItemActivated();
  string sTag = GetTag(oActivated);

  location lActivator = GetItemActivatedTarget();


  if (sTag  == "MatildaX")
  {
       object oSummon = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oActivator, 1);
       if(!GetIsObjectValid (oSummon ))
      {
            effect eSummonedMonster = EffectSummonCreature("matilda", VFX_FNF_GAS_EXPLOSION_EVIL, 0.5f);
            ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eSummonedMonster, lActivator, HoursToSeconds(24));
      }
      else
      {
            SendMessageToPC (oActivator , "У вас уже есть призванное существо");
      }

  }
}


Сообщение отредактировал Melisse - Sep 5 2017, 17:18
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 5 2017, 17:24
Сообщение #4922


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



К сожалению все равно не срабатывает (IMG:style_emoticons/kolobok_light/sad.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Sep 5 2017, 17:39
Сообщение #4923


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



Как оно скомпилировалось?

location lActivator = GetItemActivatedTarget();

Возвращает object же.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Sep 5 2017, 18:56
Сообщение #4924


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

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



Elendion, для начала нужны азы программирования. Как определить объект, как его описать, как начать скрипт, как закончить и т.д. Без этого будет каша.
Начать нужно с маленького модуля тестировать простые действия, подошел, поговорил, отошел, сел, встал, пукнул громко и так далее. Потом писать что-то в модуль. ИМХО.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 6 2017, 12:36
Сообщение #4925


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



Посидел помучался, сделал х)
Можно сделать, чтобы животные дикие разбегались от игрока?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Sep 6 2017, 15:22
Сообщение #4926


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

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



Цитата(Elendion @ Sep 6 2017, 15:36) *
Можно сделать, чтобы животные дикие разбегались от игрока?

Не мыться два месяца, все животные разбегутся.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 6 2017, 16:28
Сообщение #4927


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



Остроумно, маэстро, однако делу это не поможет.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Sep 6 2017, 16:39
Сообщение #4928


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

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



Вопросов тут задали много, модулей построили мало (IMG:style_emoticons/kolobok_light/smile.gif) Оттуда и сарказм. Если человек хочет получить ответ на форуме, он должен правильно задать вопрос. Золотое правило общения на форумах.
Задача то какая? Тупо все животные убегают с криками "Аааа! Спасайтесь зоофил!!" И все?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 6 2017, 16:42
Сообщение #4929


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



Ну допустим стоит себе пасется дикая зёбра, игрок проходит рядом и она отбегает, угроза же.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Sep 6 2017, 17:16
Сообщение #4930


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

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



Начерти триггер, на нем определи зёбру, игрок наступил на триггер, зёбра с криками ужаса убежала. Все.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 6 2017, 17:26
Сообщение #4931


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



Отбежит она разок, игрок снова подойдет, и? Есть другой вариант? Прописать в скриптах именно самой животинки реакцию на PC, например?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Sep 6 2017, 17:34
Сообщение #4932


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

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



ИИ - один из самых сложных аспектов геймдева. Тебе нужен либо программист, либо попытаться найти готовое решение, например, тут в закромах или на https://neverwintervault.org/

Если хочется самому, то копать в сторону события OnHeartbeat моба и функций поиска игрока в определённом радиусе.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 6 2017, 17:38
Сообщение #4933


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



Да, спасибо, я на ваулте много интересного находил, буду думать.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Sep 6 2017, 20:07
Сообщение #4934


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

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



Залез в базу скриптов для новичков. Переработал скрипт -fenix-а за 1 минуту под твои нужды.
Скрипт ставется на слот OnPerception в св-вах зёбры.
Neverwinter Script
void main()
{
object oPercep = GetLastPerceived(); // последний воспринятый объект

// если последний воспринятый объект был увиден и если он является игроком
if ( GetLastPerceptionSeen() && GetIsPC(oPercep))
    {
    SpeakString("Спасайся! ЗООФИЛ!!!");
    //сюда вписывай свои действия, типа убежала зёбра на сто метров
    }
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Elendion
сообщение Sep 6 2017, 21:14
Сообщение #4935


Level 3
*

Класс: Пьяный Мастер
Характер: True Neutral
Раса: Человек



О! Спасибо мил человек, низкий поклон (IMG:style_emoticons/kolobok_light/rolleyes.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

205 страниц V  « < 196 197 198 199 200 > » 
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 20th August 2025 - 04:11