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

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

Опубликовано
"theReaper", , без обсе не обойтись. Попробуй функцией IsKeyPressed X (Х - скан-код клавиши). Чтобы при нажатии на эту клавишу игроку добавился спелл. Вот примерный скрипт:

scn NameScript

Begin GameMode

if (IsKeyPressed 49) ; если нажать на клавишу N
player.addspell IDspell
else
player.removespell IDspell

endif

end
Опубликовано
Ребят, помогите, пожалуйста, написать скрипт. При активации двери задается 7 вопросов и в каждом свои варианты ответов. Если все ответы верны, то дверь активируется, иначе нет.
Пробовал делать на основе туториала http://wiki.rumor.ru/index.php?title=Oblivion:Scripting_Tutorial:_My_Second_Script , но у меня получается полная ересь и, разумеется, ничего не работает, как мне нужно.
Опубликовано
ScriptName Ololo

short Button
short Question

Begin OnActivate
Set Question to 1 ;
End

Begin GameMode
If Question == 0
Return
ElseIf Question == 1
MessageBox "Вопрос №1", "Вариант ответа №1", "Вариант ответа №2" ; И так далее ...
Set Button to GetButtonPressed
If Button == 0 ; Здесь поставить номер правильного ответа
Set Question to 2 ; В случае правильного ответа переходим к следующему вопросу
Else
Set Question to 0 ; Иначе перестаём задавать вопросы
EndIf
ElseIf Question == 2
MessageBox "Вопрос №2", "Вариант ответа №1", "Вариант ответа №2" ; И так далее ...
Set Button to GetButtonPressed
If Button == 0 ; Здесь поставить номер правильного ответа
Set Question to 3 ; В случае правильного ответа переходим к следующему вопросу
Else
Set Question to 0 ; Иначе перестаём задавать вопросы
EndIf
ElseIf ; ...
; И так далее
ElseIf Question == 7
MessageBox "Вопрос №7", "Вариант ответа №1", "Вариант ответа №2" ; И так далее ...
Set Button to GetButtonPressed
If Button == 0 ; Здесь поставить номер правильного ответа
; В случае правильного ответа активируем двери
DoorRef.Activate ; Где DoorRef - ссылка на дверь
Else
Set Question to 0 ; Иначе перестаём задавать вопросы
EndIf
EndIf
End
  • Нравится 1

Всё провисло и болтается.

Опубликовано
YourBunnyWrote, спасибо большое =) А нельзя сделать так, чтобы игрок до конца не знал, что он где-то ошибся? Просто мне хотелось, в случае не верной последовательности долбонуть ловушкой =)
Опубликовано
Можно. При каждом правильном ответе прибавляем 1 к переменной.
set variable to variable + 1.
Блок будет выглядеть так.
If Button == 0 ; Здесь поставить номер правильного ответа
Set Question to 3 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 3
EndIf

Последний блок.
ElseIf Question == 7
MessageBox "Вопрос №7", "Вариант ответа №1", "Вариант ответа №2" ; И так далее ...
Set Button to GetButtonPressed
If Button == 0 ; Здесь поставить номер правильного ответа
set countmistakes to countmistakes + 1
if countmistakes >= 7
; В случае правильного ответа активируем двери
; Семь ответов правильно.
DoorRef.Activate ; Где DoorRef - ссылка на дверь
endif
Else
;ловушка
EndIf
  • Нравится 1
2f57bf3ac535.png.png
Опубликовано
На 7 вопросе зацикливается... Чтобы не ответил на 7 вопросе, он появляется бесконечно... Наверное я нуп) Вот код, посмотрите и скажите, пожалуйста, где у меня ошибка

ScriptName WCArchivSecretDoor01

short Button
short Question
short Countmistakes

Begin OnActivate
Set Question to 1 ;
End

Begin GameMode
If Question == 0
Return
ElseIf Question == 1
MessageBox "Введите первое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 3 ; Здесь поставить номер правильного ответа
Set Question to 2 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 2
EndIf
ElseIf Question == 2
MessageBox "Введите второе число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 7 ; Здесь поставить номер правильного ответа
Set Question to 3 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 3
EndIf
ElseIf Question == 3
MessageBox "Введите третье число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 5 ; Здесь поставить номер правильного ответа
Set Question to 4 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 4
EndIf
ElseIf Question == 4
MessageBox "Введите четвертое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 4 ; Здесь поставить номер правильного ответа
Set Question to 5 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 5
EndIf
ElseIf Question == 5
MessageBox "Введите пятое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 3 ; Здесь поставить номер правильного ответа
Set Question to 6 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 6
EndIf
ElseIf Question == 6
MessageBox "Введите шестое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 4 ; Здесь поставить номер правильного ответа
Set Question to 7 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 7
EndIf
ElseIf Question == 7
MessageBox "Введите седьмое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 9 ; Здесь поставить номер правильного ответа
set countmistakes to countmistakes + 1
if countmistakes >= 7
; В случае правильного ответа активируем двери
WCDoorArchiv02.Activate ; Где DoorRef - ссылка на дверь
EndIf
Else
Cast WCArchivDoorTrap Player
EndIf
EndIf
End

Опубликовано
Нужна маленькая помощь. Может кто нибудь рассказать как написать такой скрипт:
При поднятии предмета (в данном случае меча) появляется сообщение "текст".
Так-же при поднятии предмета должно появлятся малое заклинание, но что-бы одновременно с этим меч был зачарован.
___
И ещё один скрипт:
Нужно что-бы при попадании заклинания в противника он застывал в воздухе (не падал как при параличе), а поверх него появлялась декорация льда. Это должно длится 10 секунд, и при этом противнику должен наносится урон в 5 едениц каждую секунду.

"Walking the path of Heaven, the man who'll rule everything..."

(Tendou Souji)

Опубликовано
"Jasan", , ещё раз перечитал твой первый пост. Ты же хочешь открыть ту же дверь, которая тебе задаёт вопросы, так? :teehee:
Тогда так:
ScriptName WCArchivSecretDoor01

short Button
short Question
short Countmistakes

Begin OnActivate
If Countmistakes < 7
Set Question to 1
EndIf
End

Begin GameMode
If Question == 0
Return
ElseIf Question == 1
MessageBox "Введите первое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 3 ; Здесь поставить номер правильного ответа
Set Question to 2 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 2
EndIf
ElseIf Question == 2
MessageBox "Введите второе число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 7 ; Здесь поставить номер правильного ответа
Set Question to 3 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 3
EndIf
ElseIf Question == 3
MessageBox "Введите третье число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 5 ; Здесь поставить номер правильного ответа
Set Question to 4 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 4
EndIf
ElseIf Question == 4
MessageBox "Введите четвертое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 4 ; Здесь поставить номер правильного ответа
Set Question to 5 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 5
EndIf
ElseIf Question == 5
MessageBox "Введите пятое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 3 ; Здесь поставить номер правильного ответа
Set Question to 6 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 6
EndIf
ElseIf Question == 6
MessageBox "Введите шестое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 4 ; Здесь поставить номер правильного ответа
Set Question to 4 ; В случае правильного ответа переходим к следующему вопросу
Set Countmistakes to countmistakes + 1
Else
Set Question to 7
EndIf
ElseIf Question == 7
MessageBox "Введите седьмое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 9 ; Здесь поставить номер правильного ответа
set countmistakes to countmistakes + 1
If Countmistakes >= 7
Set Question to 0
Activate
EndIf
Else
Cast WCArchivDoorTrap Player
EndIf
EndIf
End

Всё провисло и болтается.

Опубликовано
Здравствуйте все.Я новичок в плагиностроении Oblivion.Мой персонаж вампир и постоянно напрягает залазить кому то в дом и пить крови.Я знаю что кровь в бутылках тоесть Человеческая Кровь жажду не уталяет.Хочеться сделать плагин тоесть реальную кровь в бутылках которая бы уталяла жажду моего вампира.Те кто может помочь пожалуйста напишите на phoenix1607@russia.ru или отпишитесь здесь.
Опубликовано
&#39;The сказал(-а):

При поднятии предмета (в данном случае меча) появляется сообщение "текст".

ScriptName Trololo

Begin OnAdd
Message "текст"
End

&#39;The сказал(-а):

Так-же при поднятии предмета должно появлятся малое заклинание, но что-бы одновременно с этим меч был зачарован.

Появляться у кого? У игрока?
&#39;The сказал(-а):

Нужно что-бы при попадании заклинания в противника он застывал в воздухе (не падал как при параличе)

Это противоречит законам физики :crazy:
&#39;The сказал(-а):

а поверх него появлялась декорация льда

Одними шейдерами тут не отделаться...
&#39;The сказал(-а):

Это должно длится 10 секунд, и при этом противнику должен наносится урон в 5 едениц каждую секунду.

Стандартный магический эффект "Урон холодом", по моему тебе подходит. Дополнительные скрипты не нужны.

Всё провисло и болтается.

Опубликовано
        ElseIf Question == 7
MessageBox "Введите седьмое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 9 ; Здесь поставить номер правильного ответа
set countmistakes to countmistakes + 1
Set Question to 0
If Countmistakes >= 7
Activate
EndIf
Else
Cast WCArchivDoorTrap Player
Set Question to 0
EndIf
EndIf

А если седьмой блок сделать таким?
2f57bf3ac535.png.png
Опубликовано
по моему вопросу может кто помоч ? я думаю чтобы создать бутылку со скриптом утоления жажды вампиризма.Никто не поможет где можно откопать этот скрипт ? ну или написать мне) очень нужна помощь !)

TonyWalker

Можно в Конструкторе сделать.Заходишь в броню в редакторе и выбираешь заместо Heavy - Light
Опубликовано
&#39;Myyrn&#39; сказал(-а):

        ElseIf Question == 7
MessageBox "Введите седьмое число", "1", "2", "3", "4", "5", "6", "7", "8", "9"
Set Button to GetButtonPressed
If Button == 9 ; Здесь поставить номер правильного ответа
set countmistakes to countmistakes + 1
Set Question to 0
If Countmistakes >= 7
Activate
EndIf
Else
Cast WCArchivDoorTrap Player
Set Question to 0
EndIf
EndIf

А если седьмой блок сделать таким?

Не зацикливается, но всегда срабатывает ловушка, даже при правильном ответе :D
Почему то условие неправильность проскакивает между 6 и 7 вопросом. Т.е. после ответа на 6 вопрос выскакивает ловушка, появляется 7 вопрос, а потом ГГ убивает ловушка)
Опубликовано
Понимаю. Проблема в том, что нельзя ухватить фрейм и получается, что button = -1 и ловушка срабатывает.
If Button == 9 ; Здесь поставить номер правильного ответа
set countmistakes to countmistakes + 1
Set Question to 0
If Countmistakes >= 7
Activate
EndIf
Else
if ( button > -1)
Cast WCArchivDoorTrap Player
Set Question to 0
endif
EndIf

Цитата
как зделать из тяжёлой брони лёгкую?

Почитай туториалы по предметам.
Цитата
по моему вопросу может кто помоч ? я думаю чтобы создать бутылку со скриптом утоления жажды вампиризма.Никто не поможет где можно откопать этот скрипт ? ну или написать мне) очень нужна помощь !)

Поковыряйся в скриптах с меткой vampire. Кажется, просто удаляются мощные стадии вампиризма и добавляется слабая(айди, вроде, vampire25 и пр.).
2f57bf3ac535.png.png

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

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

Создать аккаунт

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

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

Войти

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

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

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