Рыцарская Сага

Главная Регистрация Вход
Суббота, 30.11.2024, 15:13

Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 3 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Вопросы новичков
AntttonДата: Воскресенье, 16.03.2014, 13:42 | Сообщение # 41
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Всем привет) Помогите мне с модулем, хочу создать свой) Хочу сделать сцену в модуле подскажите как, сейчас объясню какую хочу. В начале при старте чтобы проходила сценка, показывали как героя под гипнозом ведет колдун и когда приходит на место назначения убирает гипноз и герой теряет сознание, колдун уходит, герой через некоторое время просыпается и говорит что-то) Подскажите плиз) Подскажите еще , нужен камень, я его выкидываю, появляется у персонажа пьедистал, нажимаю на пьедистал, происходит следующие : в радиусе 10 метров каждый раунд Герой лечится полностью и от ядов и болезней. Еще нужно камень, выкидываю его появляется алтарь другой, и из него в радиусе 20 метров во всех врагов вылетают огненные стрелы каждый раунд) Извинете что столько вопросов) Заранее спасибо)
 
RemmДата: Понедельник, 17.03.2014, 08:52 | Сообщение # 42
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Задачи вполне реализуемые. А вот как у вас обстоят дела со скриптингом? Если есть скрипт могу помочь оптимизировать.

Модмейкер
Рыцарская Сага
 
AntttonДата: Понедельник, 17.03.2014, 16:29 | Сообщение # 43
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Дела не очень со скриптингом, пока только сделал, что при выбрасывании предмета, появляется пьедистал) А остальное не знаю( Помогите плиз) Еще есть вопрос: Я вот у вас на сайте скачал модуль для просмотра эффектов, открыл его, эфекты там классные были, открыл модуль в тулсете, а там не нашел скрипт на эффекты, там только около 300 эффектов только нашел, а остальных в скриптах нету, а так хочу сделать эффект ловушек ( топоры, шипы из полу и стен )

Добавлено (17.03.2014, 16:29)
---------------------------------------------
И еще у меня не скачивается ваш 2 модуль, загрузка доходит до половины и выключается(

 
RemmДата: Понедельник, 17.03.2014, 16:34 | Сообщение # 44
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Модуль просмотра эффектов как раз позволяет визуально найти нужный. Чтобы записать понравившейся нужно просто знать его численное значение..
У нас в модуле есть // *** БИБЛИОТЕКА ЭФФЕКТОВ *** #include "effect_one" // с их условным визуальным пояснением: http://remmgen.narod.ru/tscript2.html
Значение всех эффектов вашей версии невера можно посмотреть в базовом скрипте nwscript

Относительно помощи, давайте выкладывайте что у вас есть, посмотрим...


Модмейкер
Рыцарская Сага
 
AntttonДата: Понедельник, 17.03.2014, 16:51 | Сообщение # 45
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Так, вот что есть)
Это на OnUnAquire модуля) И все( 
void main()
{
     object oItem = GetModuleItemLost();
     // * Generic Item Script Execution Code
     // * If MODULE_SWITCH_EXECUTE_TAGBASED_SCRIPTS is set to TRUE on the module,
     // * it will execute a script that has the same name as the item's tag
     // * inside this script you can manage scripts for all events by checking against
     // * GetUserDefinedItemEventNumber(). See x2_it_example.nss
     if (GetModuleSwitchValue(MODULE_SWITCH_ENABLE_TAGBASED_SCRIPTS) == TRUE)
     {
        SetUserDefinedItemEventNumber(X2_ITEM_EVENT_UNACQUIRE);
        int nRet =   ExecuteScriptAndReturnInt(GetUserDefinedItemEventScriptName(oItem),OBJECT_SELF);
        if (nRet == X2_EXECUTE_SCRIPT_END)
        {
           return;
        }

     }
{
object oLost = GetModuleItemLost();
object oPC = GetModuleItemLostBy();
if (GetTag(oLost)=="wood")
{
CreateObject(OBJECT_TYPE_PLACEABLE,"blueprint001",GetLocation(oPC)); //âûêëàäûâàåì ïëåéñ äðîâ
DestroyObject(oLost); //óíè÷òîæàåì âûëîæåííû ìåøî÷åê ñ èòåìîì äðîâ
}
}
}

Добавлено (17.03.2014, 16:42)
---------------------------------------------
А можно к вам в команду?) Я не скриптер, но я сюжет хороший придумываю)

Добавлено (17.03.2014, 16:51)
---------------------------------------------
А, я еще хотел спрость: Как вы сделали эффекты, в которых например дом появляется или горы?)

 
ВячДата: Вторник, 18.03.2014, 09:28 | Сообщение # 46
Алебардщик
Группа: Модераторы
Сообщений: 24
Репутация: 5
Статус: Offline
Цитата Anttton ()
А можно к вам в команду?) Я не скриптер, но я сюжет хороший придумываю)
Мы больше не планируем делать игр на базе "Невера". В настоящее время заняты работой над 2-й частью "Пути гоблина" на базе движка "Инстед". Если тебе интересно поработать в этом
направлении, то готовы рассмотреть твою кандидатуру.
 
RemmДата: Вторник, 18.03.2014, 10:54 | Сообщение # 47
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Цитата Anttton ()
И еще у меня не скачивается ваш 2 модуль, загрузка доходит до половины и выключается

Скачал, открыл, всё играет...
Цитата Anttton ()
А, я еще хотел спрость: Как вы сделали эффекты, в которых например дом появляется или горы?

Это базовые эффекты, нового мы ничего не делали.
Теперь по скрипту. Это видно часть кода из неверского, в принципе ее можно выкинуть.

Код
void main()    
{        
object oLost = GetModuleItemLost();    
object oPC = GetModuleItemLostBy();    
if (GetTag(oLost)=="wood")    
{    
CreateObject(OBJECT_TYPE_PLACEABLE,"blueprint001",GetLocation(oPC));    
DestroyObject(oLost);    
}    
}

Тут мы проверили тег предмета, который выкинули, ставим плейс и удаляем предмет.
Теперь, судя по вашей задумке, должен сработать скрипт на объекте при клике. Так его нужно написать... Потом нужен еще скрипт на переодическое лечение в слот ХБ объекта. Получается: активируем объект и он начинает лечить.
Можно всё засунуть в один скрипт активации, если циклов лечения не большое количество... pardon


Модмейкер
Рыцарская Сага
 
AntttonДата: Вторник, 18.03.2014, 14:32 | Сообщение # 48
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Remm, Если честно, ничего не понял((((( Можете поподробней что куда делать?(((

Добавлено (18.03.2014, 14:32)
---------------------------------------------
Вяч, Хочу с вами в команде быть) Сюжет я всегда хороший придумываю, но не могу скрипты писать, какие условия вступления к вам в команду?)

 
RemmДата: Вторник, 18.03.2014, 15:32 | Сообщение # 49
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Тут нужно конкретно знать с чего запускать скрипт и на сколько, т.е. чтобы постоянно было или определенное число раз... Давайте подробности! Потом еще нужно будет сделать кого лечить, перса или перса и его пати...

По поводу команды. Проект вроде закончили, если Артлира не надумает доработать 2 модуль Саги. Браться за новый на 1 Невере уже и смысла и сил нет... На движке 2 Невера делать полный геморой... Вон ребята делают Гоблина, а я курю в стороне. Как-то так. pardon

Вот функция снятия эффектов и лечение
Код
//:://////////////////////////////////////////////
//:: Created By: Gennady
//:://////////////////////////////////////////////
void FakeRestore(object oTarget)
{
     effect eVisual = EffectVisualEffect(VFX_IMP_RESTORATION_GREATER);

     effect eBad = GetFirstEffect(oTarget);
     //Search for negative effects
     while(GetIsEffectValid(eBad))
     {
         if (GetEffectType(eBad) == EFFECT_TYPE_ABILITY_DECREASE ||
             GetEffectType(eBad) == EFFECT_TYPE_AC_DECREASE ||
             GetEffectType(eBad) == EFFECT_TYPE_ATTACK_DECREASE ||
             GetEffectType(eBad) == EFFECT_TYPE_DAMAGE_DECREASE ||
             GetEffectType(eBad) == EFFECT_TYPE_DAMAGE_IMMUNITY_DECREASE ||
             GetEffectType(eBad) == EFFECT_TYPE_SAVING_THROW_DECREASE ||
             GetEffectType(eBad) == EFFECT_TYPE_SPELL_RESISTANCE_DECREASE ||
             GetEffectType(eBad) == EFFECT_TYPE_SKILL_DECREASE ||
             GetEffectType(eBad) == EFFECT_TYPE_BLINDNESS ||
             GetEffectType(eBad) == EFFECT_TYPE_DEAF ||
             GetEffectType(eBad) == EFFECT_TYPE_CURSE ||
             GetEffectType(eBad) == EFFECT_TYPE_DISEASE ||
             GetEffectType(eBad) == EFFECT_TYPE_POISON ||
             GetEffectType(eBad) == EFFECT_TYPE_PARALYZE ||
             GetEffectType(eBad) == EFFECT_TYPE_NEGATIVELEVEL)
         {
             //Remove effect if it is negative.
             RemoveEffect(oTarget, eBad);
         }
         eBad = GetNextEffect(oTarget);
     }
     if(GetRacialType(oTarget) != RACIAL_TYPE_UNDEAD)
     {
         //Apply the VFX impact and effects
         int nHeal = GetMaxHitPoints(oTarget) - GetCurrentHitPoints(oTarget);
         effect eHeal = EffectHeal(nHeal);
         if (nHeal > 0)
             ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, oTarget);
     }
     ApplyEffectToObject(DURATION_TYPE_INSTANT, eVisual, oTarget);
}


Модмейкер
Рыцарская Сага
 
AntttonДата: Вторник, 18.03.2014, 15:45 | Сообщение # 50
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Remm, нужно постоянное лечение в радиусе 10 метров, алтарь должен стоять 3 мин реального времени) Это получается вы больше ничего делать не будете?((( Давайте в 1 части делать, сделаем большой хороший модуль, как проклятие левора)
 
ВячДата: Вторник, 18.03.2014, 16:25 | Сообщение # 51
Алебардщик
Группа: Модераторы
Сообщений: 24
Репутация: 5
Статус: Offline
Цитата Anttton ()
Вяч, Хочу с вами в команде быть) Сюжет я всегда хороший придумываю, но не могу скрипты писать, какие условия вступления к вам в команду?
Да никаких особых условий у нас нету. О возможном сотрудничестве предлагаю поговорить в личке.
 
RemmДата: Вторник, 18.03.2014, 16:56 | Сообщение # 52
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Цитата Anttton ()
нужно постоянное лечение в радиусе 10 метров, алтарь должен стоять 3 мин реального времени)

Я бы сделал на слот OnUsed объекта скрип активации и дестроя. Т.е. вешам на объект локалку и включаем через команду DestroyObject(oSelf, 3.0);
Если нужно, то можно просто оставить объект и заблокировать лечение...
На слоте OnHeartbeat пишем скрипт лечения, который включается после получения объекта нашей локалки...
Пробуйте написать сами, не получится, выкладывайте разберем...


Модмейкер
Рыцарская Сага
 
AntttonДата: Вторник, 18.03.2014, 17:21 | Сообщение # 53
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Remm, ничего не понимаю в скриптах почти, сам не смогу написать(

Добавлено (18.03.2014, 17:21)
---------------------------------------------
Remm, А как сделать радиус 10 метров?

 
RemmДата: Вторник, 18.03.2014, 17:44 | Сообщение # 54
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Код

//////////////////////////////////////////////////////
////: Слот OnUsed – При клике по объекту
/////////////////////////////////////////////////////
  void main()
{
   object oSelf = OBJECT_SELF;
   effect e8i = EffectVisualEffect(VFX_FNF_LOS_HOLY_10);// круг желтый 2

if (GetLocalInt(oSelf, "ACTIVATE") == 0)
{
   SetLocalInt(oSelf, "ACTIVATE", 1);
   ApplyEffectToObject(DURATION_TYPE_PERMANENT, e8i , oSelf);
   DestroyObject(oSelf, 3.0);
}
}

попробуй


Модмейкер
Рыцарская Сага
 
AntttonДата: Вторник, 18.03.2014, 18:06 | Сообщение # 55
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Remm, ок) А как радиус сделать?)
 
RemmДата: Пятница, 21.03.2014, 08:54 | Сообщение # 56
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Радиус уже нужно делать в скрипте на ХБ. Там нужно сделать проверку кого будем лечить и уже сам радиус:
Код
if (GetDistanceBetween(oPC, OBJECT_SELF) < 10.0)//проверить растояние


Модмейкер
Рыцарская Сага
 
AntttonДата: Пятница, 21.03.2014, 15:33 | Сообщение # 57
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Remm, Спасибо) А как сделать пьедистал чтоб огненными стрелами стрелял во всех врагов каждый ход?)
 
RemmДата: Суббота, 22.03.2014, 09:05 | Сообщение # 58
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Давайте сперва посмотрим что у вас получилось с первым скриптом на ХБ. Т.с. скрипт в студию! ;)

Модмейкер
Рыцарская Сага
 
AntttonДата: Суббота, 22.03.2014, 10:19 | Сообщение # 59
Алебардщик
Группа: Пользователи
Сообщений: 28
Репутация: 1
Статус: Offline
Remm, не получилось((( Я нажимаю на пьедистал и он исчезает и все(
 
RevoleДата: Суббота, 22.03.2014, 12:37 | Сообщение # 60
Алебардщик
Группа: Пользователи
Сообщений: 31
Репутация: 1
Статус: Offline
Anttton, а зачем тебе сразу такие сложные вещи создавать? Насколько я понял, свой модуль ты только начал делать.
 
  • Страница 3 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Поиск:


Сайт создан: 24.04.2007 Бесплатный конструктор сайтов - uCoz