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

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

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 112 113 114 115 116 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
gennady
сообщение Oct 23 2007, 07:37
Сообщение #2821


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

Класс: Обыватель
Характер: Lawful Good
Раса: Человек
NWN: Модмейкер
Рыцарская Сага



Цитата(Белатрис)
Не ходит, только проигрывает анимацию...

Если скрипт стоит на ХБ, то нужно еще учесть кучу моментов… Вот тебе для примера скрипт на заданную тему, писал давно, может что и глючит (т.к. писался не под стандартный ХБ скрипт), но идея была такая:

Neverwinter Script Source
//::///////////////////////////////////////////////////////////
//:: NPC ходит по стандартным точкам и эмитирует работу на поле
//::///////////////////////////////////////////////////////////
void StringKrest( object oNPC )
{
  string sStr;
  switch ( Random( 5 )+1 )
  {
  case 1: sStr = "Мне нужен отдых!"; break;
  case 2: sStr = "Эх! Прополка, ты прополка!"; break;
  case 3: sStr = "Скорей бы зима!"; break;
  case 4: sStr = "Любо братцы, любо! Любо братцы жить!"; break;
  case 5: sStr = "Сколько можно прорывать? Сил моих нет!"; break;
  }
AssignCommand( oNPC, SpeakString( sStr ));
}
void main( )
{
object oSelf = OBJECT_SELF;
if( GetArea( GetFirstPC( ) ) != GetArea( oSelf )) // если ПС нет в локе
{
  AssignCommand( oSelf, ClearAllActions( TRUE ));
  SetLocalInt( oSelf, "WPOIN_GO", 0 );
  return;
}
if ( GetIsInCombat( oSelf ))
{
  ExecuteScript( "nw_c2_default1", oSelf );
  SetLocalInt( oSelf, "WPOIN_GO", 0 );
  return;
}
if ( IsInConversation( oSelf ))
{SetLocalInt( oSelf, "WPOIN_GO", 0 ); return;}
if ( GetLocalInt( oSelf, "WPOIN_GO" ) == 1 ) return;
object oWay = GetNearestObjectByTag( "WP_"+GetTag( oSelf )+"_01" );
int i =1;
string sPoint = IntToString( i );
if ( GetIsObjectValid( oWay ))
{
  ClearAllActions( );
  SetLocalInt( oSelf, "WPOIN_GO", 1 );
}
else {ExecuteScript( "de_sleep", oSelf );  return;}
while ( GetIsObjectValid( oWay )) // Цикл на возрастание точек
{
  ActionForceMoveToObject( oWay, FALSE, 0.0, 30.0 );
  ActionPlayAnimation( ANIMATION_LOOPING_GET_LOW, 1.0, 3.0 );
  ActionWait( 1.0*Random( 4 )+1 );
  if ( Random( 10 )>5 )
  ActionPlayAnimation( ANIMATION_FIREFORGET_PAUSE_SCRATCH_HEAD );
  if ( Random( 10 )>5 )
  {
    ActionDoCommand( StringKrest( oSelf ));
    ActionPlayAnimation( ANIMATION_FIREFORGET_TAUNT );
  }
  i++;
  sPoint = IntToString( i );
  oWay = GetNearestObjectByTag( "WP_"+GetTag( oSelf )+"_0"+sPoint );
}
ActionDoCommand( SetLocalInt( oSelf, "WPOIN_GO", 0 ));
}
// Если нет точек для ходьбы, то запустится скрипт сна  de_sleep
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Белатрис
сообщение Oct 23 2007, 08:39
Сообщение #2822


Level 11
***

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



ээээ...... много не понятно. А какой тег точкам присваивать? (IMG:style_emoticons/kolobok_light/prankster2.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
gennady
сообщение Oct 23 2007, 10:10
Сообщение #2823


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

Класс: Обыватель
Характер: Lawful Good
Раса: Человек
NWN: Модмейкер
Рыцарская Сага



NPC ходит по стандартным точкам... Хем... Это те точки, которые редактор задает сам при выборе NPC, и клике правой кнопкой: "Создать Точку Маршрута"...
ПС Школа по чтению скриптов простаивает, как у Айва, так и у Мамука. Стоит вам ее посетить! (IMG:style_emoticons/kolobok_light/biggrin.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Белатрис
сообщение Nov 11 2007, 03:57
Сообщение #2824


Level 11
***

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



Всем доброго времени суток!
Как проиграть на строчке диалога 3D звук, находящийся в хак-паке? (IMG:style_emoticons/kolobok_light/rolleyes.gif)
Заранее спасибо!
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Белатрис
сообщение Nov 28 2007, 03:10
Сообщение #2825


Level 11
***

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



Э... неужели никто не знает?...
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
shadowdweller
сообщение Nov 28 2007, 09:08
Сообщение #2826


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

Класс: Вор
Характер: Chaotic Good
Раса: Эльф
МАСТЕР Переводов



Цитата(gennady @ Sep 29 2007, 07:00) *
Neverwinter Script Source
void main( )
{
object oPC = GetFirstPC( );
int iGold = GetGold( oPC );
effect eSTR = EffectAbilityIncrease( ABILITY_STRENGTH, 1 );
}

Здорово! Сама недавно искала такой скрипт. Но в связи с этим возникает вопрос: это увеличение способности накладывается насовсем или на какое-то время? Вроде, временной промежуток не задается, но это же базовая способность, все-таки.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Nov 28 2007, 09:30
Сообщение #2827


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

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



тут пока еще ниче не накладывается.
В ApplyEffect есть параметр duration. Ставь там DURATION_TYPE_INSTANT - будет постоянный бонус (или PERMANENT.. я за много лет так и не понял какой когда правильнее использовать (IMG:style_emoticons/kolobok_light/smile.gif) ). Однако есть пара моментов:
- бонус можно отдиспелить
- бонус можно снять отдыхом
чтобы этого избежать, надо использовать EffectSupernatural и EffectExtraordinary (ну или как-то так, по памяти пишу).
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
shadowdweller
сообщение Dec 2 2007, 00:32
Сообщение #2828


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

Класс: Вор
Характер: Chaotic Good
Раса: Эльф
МАСТЕР Переводов



Эээ... Все бы ничего, да вот только этих EffectSupernatural и EffectExtraordinary в тулсете нет ни в функциях, ни в константах, а у функции EffectAbilityIncrease только два параметра - (int nAbilityToIncrease, int nModifyBy). (IMG:style_emoticons/kolobok_light/scratch_one-s_head.gif)
Неужели шкурку придется делать? Я не смогу... (IMG:style_emoticons/kolobok_light/sad.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 2 2007, 02:07
Сообщение #2829


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

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



перестановка слов даст офигенный результат: SupernaturalEffect, ExtraordinaryEffect.

зы: могли бы сами искать не тупо по полному названию, а по ключевой части (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
shadowdweller
сообщение Dec 3 2007, 13:02
Сообщение #2830


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

Класс: Вор
Характер: Chaotic Good
Раса: Эльф
МАСТЕР Переводов



Цитата(Lex @ Dec 2 2007, 02:07) *
перестановка слов даст офигенный результат: SupernaturalEffect, ExtraordinaryEffect.

зы: могли бы сами искать не тупо по полному названию, а по ключевой части (IMG:style_emoticons/kolobok_light/smile.gif)

Если тебе интересно, о остроумнейший, искала по слову Effect. Извини, что побеспокоила.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 3 2007, 13:17
Сообщение #2831


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

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



Цитата(shadowdweller @ Dec 3 2007, 13:02) *
Если тебе интересно, о остроумнейший, искала по слову Effect. Извини, что побеспокоила.

эффектов куча, искать надо по более уникальной части. Ну это совет на будущее (IMG:style_emoticons/kolobok_light/smile.gif)
нашла хотяб? (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Dec 3 2007, 16:48
Сообщение #2832


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

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



Сделай сейв и загрузи его. Проверь сохранится или нет.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
gennady
сообщение Dec 3 2007, 17:51
Сообщение #2833


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

Класс: Обыватель
Характер: Lawful Good
Раса: Человек
NWN: Модмейкер
Рыцарская Сага



Ну, раз и меня подключили к этому скрипту, то хочу немного добавить. Вам нужно выбрать что-то одно, т.к. это разные эффекты…
Как уже неоднократно писалось, да и в WIKI тема эффектов разобрана по полочкам, да и я тут тоже типа обучалки скриптингу написал, можно посмотреть и там о наложение эффектов: http://remmgen.narod.ru/tscript2.html
Neverwinter Script
void main( )
{
object oPC = GetFirstPC( );
effect eSTR = EffectAbilityIncrease( ABILITY_STRENGTH, 3 );
// Экстраординарные ( Extraordinary ) – не могут быть сняты с помощью заклинания, автоматически снимаются в конце отдыха.
effect eExt = ExtraordinaryEffect( eSTR );
// Сверхъестественные ( Supernatural ) – не могут быть сняты ни заклинанием, ни с помощью отдыха.
effect eSup = SupernaturalEffect( eSTR );

// Накладываем эффекты
ApplyEffectToObject( DURATION_TYPE_PERMANENT, eExt, oPC );
// или чтобы не снимался
ApplyEffectToObject( DURATION_TYPE_PERMANENT, eSup, oPC );
}

Цитата(shadowdweller @ Dec 2 2007, 00:32) *
а у функции EffectAbilityIncrease только два параметра - (int nAbilityToIncrease, int nModifyBy).

Тут все просто… меняем константы:
ABILITY_CHARISMA
ABILITY_CONSTITUTION
ABILITY_DEXTERITY
ABILITY_INTELLIGENCE
ABILITY_STRENGTH
ABILITY_WISDOM
и величину int nModifyBy т.е. на сколько хотим добавить тот или иной бонус к характеристики. Если не ошибаюсь, то max= 176… Неужели этого недостаточно?!

Сообщение отредактировал gennady - Sep 4 2010, 16:50
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 3 2007, 18:08
Сообщение #2834


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

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



Цитата(gennady @ Dec 3 2007, 17:51) *
Неужели этого недостаточно?!

неа (IMG:style_emoticons/kolobok_light/ph34r.gif)
это не совсем корректно, точнее совсем не корректно.
Твоим скриптом мы получим 2х кратный бонус, часть которого снимется после отдыха, а часть после диспела. Задача же базово совсем в другом.

зы: влезание в тему, это похвально, но надо внимательнее читать пост про поставленную задачу. (IMG:style_emoticons/kolobok_light/smile.gif)


Цитата(Aiwan @ Dec 3 2007, 16:48) *
Сделай сейв и загрузи его. Проверь сохранится или нет.

это не то. Нужно проверять отдыхом и диспелом. Сэйв/Лоад сохраняет временные эффекты, что уж говорить об Инстант или Перманент

Я Шад уже все в приват написал, но там что-то не работает. Приеду домой, сам посмотрю.


зы: самый надежный способ - шкуркой.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Dec 4 2007, 06:35
Сообщение #2835


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

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



Цитата(Lex @ Dec 3 2007, 20:08) *
зы: самый надежный способ - шкуркой.

Но самый муторный. Самое надежное забить на это и жить длаьше. Игрок вашего геммора даже не заметит, не то что бы оценить! (IMG:style_emoticons/kolobok_light/declare.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 4 2007, 09:33
Сообщение #2836


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

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



Цитата(Aiwan @ Dec 4 2007, 06:35) *
Но самый муторный.

да ладно? дать свойство на шкурку - 2 строки. Шкурку надо одевать вообще в начале модуля (IMG:style_emoticons/kolobok_light/smile.gif) так что не вводи людей в заблуждение, шкурка форевар (IMG:style_emoticons/kolobok_light/smile.gif)

зы: легкий гимор есть при отслеживании перезаходов.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Dec 4 2007, 17:40
Сообщение #2837


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

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



Если шкурка одна то да. А если всякие системы шкурок то великое тра та та... Типа наборы доспехов в монете судьбы.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 4 2007, 17:51
Сообщение #2838


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

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



Цитата(Aiwan @ Dec 4 2007, 17:40) *
Если шкурка одна то да. А если всякие системы шкурок то великое тра та та... Типа наборы доспехов в монете судьбы.

ты просто не умеешь их готовить. "Системы шкурок". 1 шкурка и свойства на нее вешать. И удалять если нада. Всего делов то (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Белатрис
сообщение Dec 9 2007, 15:18
Сообщение #2839


Level 11
***

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



лЕКС, не мог бы объяснить мне, как одеть и и "нацепить" способности на эту шкурку?
Заранее спасибо.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 9 2007, 16:09
Сообщение #2840


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

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



одеть - EquipItem. Слот *_MARMOR. (Monster Armor).
свойство дать - AddProperty
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Белатрис
сообщение Dec 18 2007, 15:38
Сообщение #2841


Level 11
***

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



Почему в результате(вроде нормально работающего) этого скрипта, туман, который должен появится в дождь, появляется, а потом мигает при смены ракурса камеры? Если мне не показалось, он также уменьшается, а потом увеличивается(снова и снова), когда я хожу по локации...
П.С. Не показалось, перепроверил. Получается, цикл повторяется... по почему? Я же специально для этого переменные ввел...
Кто-нибудь может помочь?
Neverwinter Script Source
int i, o, k;
void main( )
{
   
    object oArea = GetArea( GetFirstPC( ) );
    if( GetWeather( oArea ) == WEATHER_RAIN )
    {
            k = 0;
            if( o == 0 )
            {
            SetSkyBox( SKYBOX_GRASS_STORM, oArea );
            // Цвет тумана
            SetFogColor( FOG_TYPE_ALL, 0x9F9F9D, oArea );
            // задержка
            float fDelay = 0.0;
            // Постепенное увеличение тумана
            for( i = 5; i < 51; i++ )
            {
                DelayCommand( fDelay, SetFogAmount( FOG_TYPE_SUN, i, oArea ) );
                fDelay = fDelay + 0.2;
                if( i == 25 )
                {
                    // Сейчас пойдет дождик
                    DelayCommand( fDelay, SetWeather( oArea, WEATHER_RAIN ) );
                }
            }
            o = 1;
            }
            else
            {
                return;
            }
    }
    else if ( GetWeather( oArea ) == WEATHER_CLEAR )
    {
            o = 0;
            if( k == 0 )
            {
            SetSkyBox( SKYBOX_GRASS_CLEAR, oArea );
            // Цвет тумана
            float fDelay = 0.0;
            for( i = 61; i != 1; i-- ) // Постепенное уменьшение тумана
            {
                DelayCommand( fDelay, SetFogAmount( FOG_TYPE_SUN, i, oArea ) );
                fDelay = fDelay + 0.2;
                if( i == 48 )
                {
                        // Сейчас выползет солнышко
                        DelayCommand( fDelay, SetWeather( oArea, WEATHER_CLEAR ) );
                }
            }
            DelayCommand( fDelay, SetFogColor( FOG_TYPE_ALL, 0x6AC7FC, oArea ) );
            }
            k = 1;
            }
            else
            {
                return;
            }
}


Заранее спасибо!

Сообщение отредактировал Белатрис - Dec 18 2007, 15:40
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 18 2007, 15:55
Сообщение #2842


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

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



вроде он мигает при смене настроек (туман).
По поводу зацикленности - надо смотреть, как меняется weather. Она может у тебя поменяться пока туман увеличивается для дождя и начнутся 2 противоречивых процесса.

Добавлено через 1 минуту 14 секунды

и непонятен смысл
Neverwinter Script Source
DelayCommand( fDelay, SetWeather( oArea, WEATHER_CLEAR ) );

ты же выше проверил, чтоп огода у тебя
Neverwinter Script Source
if ( GetWeather( oArea ) == WEATHER_CLEAR )

те эта команда ничего не сделает
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Белатрис
сообщение Dec 19 2007, 08:02
Сообщение #2843


Level 11
***

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



Цитата
DelayCommand( fDelay, SetWeather( oArea, WEATHER_CLEAR ) );

Просто сюда вошли два скрипта и, видимо, я пропустил этот момент.
Цитата
По поводу зацикленности - надо смотреть, как меняется weather. Она может у тебя поменяться пока туман увеличивается для дождя и начнутся 2 противоречивых процесса.

Я даже специально поставил 100% дождя. Все равно мигает... (IMG:style_emoticons/kolobok_light/vava.gif) Блин, а ведь так прикольно получается... неужели придется сносить этот эффект? (IMG:style_emoticons/kolobok_light/unsure.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Dec 19 2007, 10:04
Сообщение #2844


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

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



хм.. тады возможно эти 100% сбивают все
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vego
сообщение Dec 21 2007, 19:47
Сообщение #2845


Level 1


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



2Белатрис: Здравствуйте, проблема во временных переменных. Насколько я понял, вы вешаете этот скрипт как OnHeartbeat, который выполняется каждые шесть секунд. Но действие вашего скрипта больше шести секунд. Во второй части скрипта вы к fDelay(вначале 0) в цикле добавляете по 0.2 секунды, что за 60 итераций составляет 12 секунд (а второй раз этот скрипт запускается через 6), соответственно у вас начинают одновременно выполняться два скрипта, которые поочередно меняют насыщенность тумана.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 112 113 114 115 116 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28th July 2025 - 11:16