Перейти к содержанию

Требуются скрипты №2


Рекомендуемые сообщения

Так вот уважающие скриптеры.

Полному ламеру в составлении скриптов нужны следующие скрипты -

Чтобы при активации обьекта перс переносился в другую локацию?

Как сделать так чтобы в определенной локации запретить заклинания с эффектом - удара огня, холода, щока, уменьшений здоровья? (по отдельности)

Как сделать так чтобы монстру вред можно было нанести только определенным оружием?

Как сделать так чтобы на появлении определенной записи в дневнике исчезал непись, появлялся еще один непись, свет и появлялись новые топики в диалоге?

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

Ссылка на комментарий
Поделиться на другие сайты

1. кольцо телепортации, примеров не один десяток, даже в стандартной морре у дядьки Фира есть амулет с телепортом

if ( OnActivate == 1 )
Player -> position –23515, -15355, 3355, 90; цифры - позиция x,y,z в мировых координатах, и угол поворота
или Player -> PositionCell, -254, 475, -376, 360, "Balmora, Council Club"; координаты x,y,z и угол поворота в интерьерной ячейке
endif

2. невозможно, есть фунцкии тока на запрет левитации и телепортации, можно было бы сделать removespell, но нужно знать имя спела, помимо стандартных есть еще созданные самим игроком или существующие в других модах

3. нереал imho, но может кто подаст идею

4. исчезать неписю - в результ диалога NPC_ID->disable, обратно появлятся NPC_ID->enable. если этот другой, сперва задисейблить, поиск тебе в руки, тут в соседних темах было, свет - аналогично, новые топики - в результ диалога: AddTopic, "точное имя топика"

Ссылка на комментарий
Поделиться на другие сайты

Не знаю реализуемо ли это...

Но можно воссоздать разрушение Акулахана? (только под другим именем) Если да то нужен ли для этого скрипт? Или есть такой скрипт? Если такой скрипт есть то что в нем можно изменить чтобы активатор разрушался при наличии в инвентаре предмета

Майк, не додумался...

Ссылка на комментарий
Поделиться на другие сайты

Но можно воссоздать разрушение Акулахана?
сделай копию сердца и копию скрипта

 

Или есть такой скрипт?
есть, чем же он разрушается, открывай CS и смотри пример, делай все по образу и подобию ;)

 

чтобы активатор разрушался при наличии в инвентаре предмета
добавить условие на предметов в инвентори

If ( GetItemCount, "Object_ID" >= 1 )

или на что-либо надетое

If ( Player -> HasItemEquipped "Object_ID" == 1 )

Ссылка на комментарий
Поделиться на другие сайты

Сердце мне не нужно!

Я хочу сделать чтобы в Акулахане вместо сердца был миск итем! А как скрипт называется? На Акулахане скрипт не весит. В списке тоже нет.

И еще чтобы если перс не выбежал во время из Пещеры нужен скрипт на падающие огненные шары с потолка пещеры.

Ссылка на комментарий
Поделиться на другие сайты

у меня мор отформатирован уже как год, поэтому название скриптов ищи сам, все по смыслу там обозвано

 

хочу сделать чтобы в Акулахане вместо сердца был миск итем!
замени модель сердца если она конечно не удиное целое с Акулаханом )

 

"во время не выбежал" это когда? временной интервал? тогда на потолок активатор

begin firetrap

Float timer
short trap

if ( MenuMode == 1 )
return
enif

Set timer to (timer + GetSecondsPassed)

if ( timer > 300 )
if ( trap == 0 )
	Set trap to 1
endif
elseif ( timer > 1 )
if ( trap == 1 )
	Cast, "ID_spel", Player
	Set timer to 0
endif
endif

end

через 300 секунд после захода в ячейку, ловушка включается и каждую секунду активатор будет кастить на игрока то что пропишешь вместо ID_spel, хоть файрбол, хоть слепоту, закл делай индивидульно по вкусу, хотя и стандартные подойдут

 

поставить несколько активаторов и каждому назначит индивидуально скрипт с немного измененными числами таймера - тогда из разных точек псевдо-хаос

Изменено пользователем Майк
Ссылка на комментарий
Поделиться на другие сайты

эй Майк, все нормально реалезуемо. ) Только это абсолют гемор =)

Легко можно сделать, чтобы мобу можно было нанести урон специальным оружием. Отменить заклятья??? Зачем, просто поставить сопротивление данному виду магии с константой 10000... Вдруг плэер захочет скастовать "слабость к... или уменьшить сопротивление к..." тут то это и не пройдет =D.

Урон опред. видом. попозже напишу протестю и кину, вот только скажи какой урон должно наносить твое особое орудие... и сколько хелсов у моба.

Аккулархана тоже легко... глобал переменная + проверка на активацию = проигрывание анимации )).

Ссылка на комментарий
Поделиться на другие сайты

Ворон,

Если сделать так то получится -

ГГ кидает огненный шар в воздушного (ледяного) элементаля. Тот имеет иммунитет к огню. :1anim_ag:

ID - fire_element frost_element earht_element water_element, _guard_narsis. Оружие - _hv_suriman_vverin. Акулахан - _hv_narsis

Изменено пользователем Wisidor
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Так вот. Теперь требуется скрипт который действует так -

После разговора с одним НПС у ГГ становится 0 здоровья, при этом он НЕ умирает а переносится в локацию. Какой это скрипт?

Ссылка на комментарий
Поделиться на другие сайты

Может быть стоит добавить в результы такие строки, но тогда скорей всего ГГ умрет, может лучше здоровье падает до единицы...

player->sethealth 0

player->positionCell x y z 0 "Cell_name"

Ссылка на комментарий
Поделиться на другие сайты

Поправка:

Если у ГГ есть придмет он переносится в локацию после разговора.

Если у него нет предемета он умерает.

При этом после телепортации ГГ в локацию появляется запись в днивнике.

Ссылка на комментарий
Поделиться на другие сайты

Делаешь скрипт на проверку предмета, если предмет есть задаешь переменную, которая потом будет использоваться для диалога.

Если предмета нет, то после разговора, в результах пишешь:

player->sethealth 0

Если предмет есть:

player->positionCell x y z 0 "Cell_name"
SetJournalIndex "имя твоей записи" индекс

Ссылка на комментарий
Поделиться на другие сайты

Можно через диалоги

Создаешь топик типа "Ты пренес мне перхоть Дагот Ура?"

Ответ : "Да"1 "Нет"2

Если да - проверка на наличие предмета, если предмета нет - player->sethealth 0, если есть - player->positionCell x y z 0 "Cell_name"

Если ОтветНет - то опять килл

Ссылка на комментарий
Поделиться на другие сайты

Вот еще один скрипт -

Сражаются 2 кричера (очень гигантских)

Они сражаются между собой а не с ГГ и другими НПС стреляющих в кричера №2

Кричер №2 бессмертен до появления записи в дневнике.

----

Запись появляется после уничтожения 7 кричеров

Ссылка на комментарий
Поделиться на другие сайты

Пропиши для начала ID 2-го кричера startcombat-> ID 1-го кричера и наоборот. Неписям тоже startcombat-> ID 2-го кричера.

 

Вводишь переменную, далее проверка пока переменная равна нулю, условие такое, если здоровье второго упало до /например/ 100, сетхеалз 3000 /его здоровье в общем/. А когда добавишь запись в дневник, изменишь значение переменной на единицу и он станет смертным. Вроде так я понял. :dn:

Ссылка на комментарий
Поделиться на другие сайты

Еще одно. Если ГГ подходит к статику с записью в днивнеке то на статике вызываются существа, а одно из них выходит на верх (кантон Вивека) и кастует заклинание. Тогда огненный шар падает на кантон и он взрывается огненными шарами. После этого кантон разрушается а вместо него появляется руиниы
Ссылка на комментарий
Поделиться на другие сайты

Вешаешь на статик скрипт со строчкой If ( GetDistance Player

Но не знаю, сработает ли на статике, хотя должен.

Ссылка на комментарий
Поделиться на другие сайты

Точнее целый статик исчезает а под ним остается целыми руины.

 

Еще.

Когда ГГ подходит в определенную локацию и при наличии записи в дневнике появляется кричер и атакует ГГ или любого из окружающего его НПС. Потом когда мы доводим здоровье кричера до 100 он начинает разговор а потом переносит нас в другую локацию.

Еще.

Сможит ли Морр выдержать 45 воинов-индорилов 10 магов-индорилов, или 35 стражников-тельванни и 25 магов-тельванни, и 20 воинов Вверина и 10 магов Вверина + все вместе?

Ссылка на комментарий
Поделиться на другие сайты

Еще.

Сможит ли Морр выдержать 45 воинов-индорилов 10 магов-индорилов, или 35 стражников-тельванни и 25 магов-тельванни, и 20 воинов Вверина и 10 магов Вверина + все вместе?

 

Выдержит, но тормозить будет.

 

А первое "еще" смотри здесь.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Вот.

Когда мы активируем объект то появляется месаджбокс с вариантами ответа.

Если нажимаем 1 то проводится проверка на наличие предметов. После того как у нас они есть в инвентаре появляется предмет. Остлаьное с другими 5 вариантами месаджбокса

Ссылка на комментарий
Поделиться на другие сайты

Begin my_first_script

Short controlvar
Short button
Float timer

If ( MenuMode == 1 )
Return
Endif

If ( OnActivate == 1 )
If ( controlvar == 0 )
MessageBox “Нету голоса - все же кричит, нету крыльев, а чем-то полощет, нет зубов - норовит укусить, нету рта, но все время бормочет. Что это?”, “Летучая мышь”, “Старуха”, “Ветер”, “Дух”
Set controlvar to 1
elseif  controlvar > 1
activate
endif
endif

if ( controlvar == 1 )
set button to GetButtonPressed
if ( button == -1 )
	return
elseif ( button == 2 )
	MessageBox "Ответ верный"
	Activate
	set controlvar to 2
else
	MessageBox "Ответ неверный"
	Player -> AddSpell, "Frost_Curse"
	set controlvar to –1
Endif
elseif ( controlvar == 2 )
Activate
Set controlvar to 3
elseif ( controlvar == -1 )
Set timer to ( timer + GetSecondsPassed )
if timer > 10
	Player -> RemoveSpell, "Frost_Curse"
	set controlvar to -2
endif
endif

End

 

 

Учебный скрипт из МСФД 8.0Рус

Надеюсь разберешься. :ad:

Ссылка на комментарий
Поделиться на другие сайты

Придется несколько дней возиться над этим...

СО скриптами у меня туговато. :1anim_aq:

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...