Четверг-Turdas
28.03.2024 12:05

Летописи Тамриэля

TESmagic


В жизни нет ничего лучше собственного опыта. Вальтер Скотт

Приветствую Вас Путешественник | RSS Главная | Каталог статей | Регистрация | Вход |

Путеводитель

Новостной Архив
Работа со скриптами [3]

Поиск

Главная » Статьи » Oblivion Tes 4 Construction Set » Работа со скриптами

Простые скрипты, ч.2
 Начало тут

ТИПО замаскировался))))) Если на игроке не надет полный комплект костюмчика, дверь его не пропустит))
Scn aaaPPPPPP1Scr
short shmot
begin onActivate
If ( Player.GetEquipped aa11245432 ==1 ) && ( Player.GetEquipped aa11545123 == 1)&& ( Player.GetEquipped aa14421213 == 1)&& ( Player.GetEquipped aa21556363455 == 1)&& ( Player.GetEquipped aa44565578531 == 1)&& ( Player.GetEquipped aaaWeapEbonyClaymore == 1)
MessageBox " Хозяин! Простите, не признала! Проходите!"
set shmot to 1
Player.moveto aaaIslandMarkerRef, 0, 0, 0
else
MessageBox " Ты не Властитель душ! "
Cast SE05HerdirTortureSpell1 Player
return
endif
end

Изъятие у игрока читерского оружия на выходе из локации))
Scn aaaPPPPPP2Scr
Short Door
begin onActivate
If ( Player.GetItemCount aaaWeapEbonyClaymore == 1)
MessageBox " Меч Властителя Душ должен остаться на острове!"
Set Door to 0
return
else
activate
Set Door to 1
endif
end

Общение с ведьмой-креатуром и результат разговора в зависимости от его начала
ScriptName aaaSpaiderScr
short Button
short Var
begin onActivate
if ( Var == 0 )
MessageBox "Ведьма! Мне нужен проход на остров Горестей. " "Красавица, дай пройти" "Убирайся с дороги!"  "Возьми мою силу" "Я заплачу тебе 1000  монет"
Set Var to 1
endif
end onActivate
begin GameMode
if ( Var == 1 )
Set Button to GetButtonPressed
if ( Button == 0 )
Player.AddSpell aaaSpiderSpell1
SetStage aaaSklep 30
Set Var to 2
elseif ( Button == 1 )
StartCombat player
Set Var to 2
elseif ( Button == 2 )
player.ModActorValue Strength -30
Message  " У Вас взята сила"
SetStage aaaSklep 30
Set Var to 2
elseif ( Button == 3 )
if (Player.getGold < 1000)
MessageBox " У вас нет таких денег!"
Set Var to 0
Return
else
Player.RemoveItem Gold001 1000
Set Var to 2
SetStage aaaSklep 30
Endif
endif
endif
endif
endif
endif
end
Begin OnDeath
SetStage aaaSklep 40
End

Раздача "новогодних подарков")))))))   Отдать  правильный предмет стражу-креатуру
ScriptName aaaStrazhBezumiaScr
short Button
short MyVar
begin onActivate
MessageBox "Страж!" "Возьми эту вещь!" "Ничего"
Set MyVar to 1
end onActivate
begin GameMode
if ( MyVar == 1 )
Set Button to GetButtonPressed
if ( Button == 0 )
aaaStrazhBezumiaChestRef.Activate player 1
Set MyVar to -1
Return
elseif ( Button == 1 )
AddScriptPackage aaaStrazhWander
Set MyVar to -1
Return
endif
endif

Переход стадии квеста на следующую при активации предмета в инвентаре (надеть, рассмотреть)
Scn aaaTGAscript003
begin onequip
setstage aaaTGAquest001 25
end

При активации предмета рядом с игроком появляется его точная копия и атакует его
Scn Stone1Scr
begin onActivate
short Stone
Ref New
If Stone == 0
Set New to player.CreateFullActorCopy
Set Stone to 1
new.StartCombat player
Endif
End
Begin GameMode
If New.GetDead == 1
New.RemoveItem aaSmot2 1
Endif
End

При прикосновении к активатору игрок получает выбор - умереть или отдать силу
ScriptName aaaKolyaskaScr
short Button
short Var
begin onActivate
if ( Var == 0 )
MessageBox "Это Призрачная Инвалидная Коляска. Прикоснувшийся к ней умрет, если не отдаст Коляске свою силу." "Отдать силу" "Не отдавать силу"
Set Var to 1
endif
end onActivate
begin GameMode
if ( Var == 1 )
Set Button to GetButtonPressed
if ( Button == 0 )
Cast SE05HerdirTortureSpell1 Player
player.ModActorValue Strength -20
Message  " Сила в обмен на душу. Выгодная сделка!"
Set Var to 0
elseif ( Button == 1 )
player.kill
endif
endif
endif
end

При взаимодействии с триггером гаснет свет
Scn aaaLampCavScr
begin OnTrigger Player
aaaLamp2Ref.Disable
aaaLamp1Ref.Disable
End

При надевании определенного предмета гардероба игрок переносится в другую локацию
Scn aaaLYUK1Scr
short shmot
begin onActivate
If shmot < 7
If ( Player.GetEquipped aSmot1 ==1 )
Player.moveto aaaMarkerLocation1Ref, 0, 0, 0
Autosave
Set shmot to 1
elseIf ( Player.GetEquipped aaSmot2 ==1 )
Player.moveto aaaMarkerLokation2Ref, 0, 0, 0
Autosave
Set shmot to 2
elseIf ( Player.GetEquipped aaaSmot3 ==1)
Player.moveto aaaLokation3Ref, 0, 0, 0
Autosave
Set shmot to 3
elseIf ( Player.GetEquipped aaaaSmot4 ==1 )
Player.moveto aaaMarkerPustotaRef, 0, 0, 0
Autosave
Set shmot to 4
elseIf ( Player.GetEquipped aaaaaSmot5 ==1 )
Player.moveto aaaMarkerLokation5Ref, 0, 0, 0
Autosave
Set shmot to 5
elseIf ( Player.GetEquipped aaaaaaSmot6 ==1 )
Player.moveto aaaLocation6MarkerRef, 0, 0, 0
Autosave
Set shmot to 6
else
MessageBox "Вы не можете открыть этот люк, наденьте амулет или кольцо"
elseif (shmot >= 7)
MessageBox "Люк больше не откроется"
endif
endif
endif
endif
endif
endif
endif
endif
end

Скрипт на появление надписи при активации объекта
scn 012yhyhyhyhy
begin onActivate
if isActionRef player == 1
messagebox "Скройся в ужасе, двери нет"
endif
End

Оживание противника после смерти (со спецэффектами)
scn AaaBloodScript
begin OnDeath
PlayMagicShaderVisuals effectSummonMythicDawn 5
PlaySound AMBThunder
Resurrect 1
end

Появление НПС при воздействии на некий активатор, начало разговора, инициируемое НПС
ScriptName aaaBoyScr
Short activ
begin onActivate
If Activ == 0
aaaBoyRef.Enable
aaaBoyRef.StartConversation player, Greeting
Set activ to 1
endif
end

Отслеживание выбора  только одного  предмета  из предложенных нескольких вариантов )навешивается на ВСЕ предлагаемые для выбора предметы с небольшими различиями по IP)
ScriptName aaaChmot1Scr
begin onAdd Player
MessageBox "Вы можете выбрать только одну вещь из шести"
If ( Player.GetItemCount aaSmot2 == 1)
Player.RemoveItem aaSmot2 1
aaaChost15Ref.AddItem aaSmot2 1
else
If ( Player.GetItemCount aaaSmot3 == 1)
Player.RemoveItem aaaSmot3 1
aaaChost14Ref.AddItem aaaSmot3 1
else
If ( Player.GetItemCount aaaaSmot4 == 1)
Player.RemoveItem aaaaSmot4 1
aaaChost13Ref.AddItem aaaaSmot4 1
else
If ( Player.GetItemCount aaaaaSmot5 == 1)
Player.RemoveItem aaaaaSmot5 1
aaaChost12Ref.AddItem aaaaaSmot5 1
else
If ( Player.GetItemCount aaaaaaSmot6 == 1)
Player.RemoveItem aaaaaaSmot6 1
aaaChost11Ref.AddItem aaaaaaSmot6 1
endif
endif
endif
endif
endif

При взятии вещи из контейнера ( в данном случае, гроба) рядом с гробом с ревом появляется мертвец и нападает на игрока,  происходит переход на следующую стадию квеста
Scn aaaDosp1Scr
Begin onAdd Player
SetStage aaaSklep 50
aaaZombi1Ref.Enable
playsound npczombieattack
aaaZombi1Ref.StartCombat Player
End

При воздействии на активатор любым из магических или простых ударов происходит переход на следующую стадию квеста и перемещение игрока в следующую локацию к маркеру
Scn aaaIslandScr
begin onMagicEffectHit FIDG
Player.MoveTo aaaDeadIslandMarker
SetStage aaaSklep 125
end
begin onMagicEffectHit FRDG
Player.MoveTo aaaDeadIslandMarker
SetStage aaaSklep 125
end
begin onMagicEffectHit SHDG
Player.MoveTo aaaDeadIslandMarker
SetStage aaaSklep 125
end
begin OnHitWith
Player.MoveTo aaaDeadIslandMarker
SetStage aaaSklep 125
end


Продолжение тут
Категория: Работа со скриптами | Добавил: Luna (21.09.2013)
Просмотров: 2593 | Теги: скрипты Обливион | Рейтинг: 5.0/1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Статистика








Яндекс.Метрика




Rambler's Top100



Онлайн всего: 1
Гостей: 1
Пользователей: 0


Форма входа
Логин:
Пароль:


Наш баннер:
//imperialcity.ucoz.net/

   

Друзья сайта



Сайт команды Города Ночи

Фан-сайт TES 4: Квагмир - мир снов







TES-game Oblivion and Morrowind

The Elder Scrolls: ФРПГ

Фан-сайт игр серии Gothic

TES-Empire - Информационный ресурс по The Elder Scrolls







Русскоязычный портал фэнов Дома Тельвани



TES World -- все для игр вселенной The Elder Scrolls


Silicium TES4:Oblivion Craft -- фан-сайт игры TES4:Oblivion

RPG игры серии Gothic, The Elder Scrolls, Risen, The Witcher



Фан-сайт игры Dragon Age: Начало и Dragon age:2


Copyright ImperialCity ©2009-2024 При копировании материалов - ссылка на сайт  обязательна!

free counters Rambler's Top100