- •Учебник по Ren’Py
- •Начало работы
- •Запомните
- •Учимся работать со сценарием
- •Как правильно писать диалоги персонажей.
- •Домашнее задание
- •Создаем меню выборов.
- •Создаем свои метки
- •Домашнее задание
- •Делаем ссылки на имена персонажей
- •Домашнее задание
- •Именам цвет
- •Переменные и с чем их едят
- •Работа с текстом. Учимся разбирать другие приложения.
- •Домашнее задание
- •Вставляем изображения в новеллу. Фоновый рисунок.
- •Спрайты
- •Как определить размер спрайта для вашего размера экрана
- •Координаты спрайтов на экране
- •Переходы и спецэффекты Переходы
- •Зрелищные переходы ImageDissolve
- •Эффекты перемещения спрайтов Move transition (в основном на спрайты)
- •Переходы CropMove(эффективней менять ими фон) или режим слайда.
- •Эффект AlphaDissolve (герой подглядывает за персонажем)
- •Ваше задание на сегодня
- •Учимся грамотно вызывать прыжки к меткам.
- •Учимся создавать текст на экране и научимся определять координаты ее
- •Координаты изображения
- •Анимация
- •Как вставлять мини игры в вашу игру
- •Метка splashscreen
- •Изображение splashscreen
- •Создаем инсталлятор
- •Много всяких полезных Renpy-разработчику фишек и плюшек в одном месте
- •Заключение
- •Всем спасибо! Что уделили моему маленькому учебнику внимание.
Координаты изображения
Ранее мы умели прописывать координаты спрайтов(at center и т.д) Но допустим нам требуются именно точные координаты(как например кнопкам) тогда (at center и другие) не подойдут нам.
Для этого у нас есть короткие команды xpos 500 ypos 500 –точные координаты
pos=(475, 50)
xalign 0.5 yalign 0.5 - % положение координаты на экране(0.5 половина на изображении)
Теперь что значит х и у Геометрию все помнят?
У – верх низ
Х – право лево
Если у или х отрицательное значение значит за границей полей изображения
Как их прописывать эти координаты?
1) Как анимацию алт
image pos = "target1.png"
потом в
label start:
show pos:
xanchor 0.5 yanchor 0.5 xpos 0.5 ypos 0.5 ### (ровно посередине экрана)
2) Обычным способом
textbutton "X" xpos 100 ypos 200 action Hide("gruppa_tatu ")
А как быть если нужно на изображении сделать якорь, как тут?
Делается это командой anchor
image anchor = "target2.png" image logo blue = "logosolid.png"
в метке старт прописывается show logo blue: ###”Эйлин
xpos 300 ypos 100
show anchor: ###Крестик
xanchor 0.5 yanchor 0.5
xpos 300 ypos 100
with dissolve
Что бы сделать присоединение 1 точки с другой
show logo blue:
xpos 300 ypos 100
show anchor:
xanchor 0.5 yanchor 0.5
xpos 400 ypos 100
with dissolve
e "The second position we care about is the anchor. The anchor is a spot on the thing being positioned."
e "For example, here we have an xanchor of 0.0 and a yanchor of 0.0. It's in the upper-left corner of the logo image."
show anchor:
linear .5 xpos 500
e "When we increase the xanchor to 1.0, the anchor moves to the right corner of the image."
show anchor:
linear .5 ypos 400
e "Similarly, when both xanchor and yanchor are 1.0, the anchor is the bottom-right corner."
show pos:
xanchor .5 yanchor .5
xpos 600 ypos 400
e "To place an image on the screen, we need both the position and the anchor."
show logo blue:
linear .5 xpos 400 ypos 100
show anchor:
linear .5 xpos 600 ypos 400
И получается
xalign
show logo blue:
linear .5 xalign 0.5
логотип посередине экрана
show logo blue:
linear .5 xalign 0.0
а теперь он слева
show logo blue:
linear .5 xalign 1.0
Теперь справа тоже самое и с у высотой его
Если не совсем вы поняли что я написал, зайдите в обучение в раздел позиции экрана, и в сценарии tutorial_atl.rpy и вы сможете проследить где что отвечает за координаты
Музыка
Как добавить в проект?
Делается это просто
Если вам требуется, что бы музыка повторялась постоянно, то вводится команда
play music "rock.mp3" fadeout 1
queue music "pop.wav"
Теперь разберем что тут записано
Play – запуск
Music – канал постоянный
"rock.mp3"- имя файла и путь его
fadeout 1 – текущая музыка затухнет перед следующей музыкой
queue- запустить песню на указанный канал после проигрыша предыдущей песни
Что бы остановить музыку пишется
Stop music fadeout 1
Если вам требуется, что бы музыка играла 1 раз( например крик, или стук в дверь) то вводится команда
play sound "ku-ku.mp3"
Вы так же можете поставить queue на канал sound но оно будет 1 раз играть.
queue play sound "ku-ku.mp3"
queue play sound "ku-ku.mp3"
queue play sound "ku-ku.mp3"
Что бы вам зарегестрировать свой канал(например что бы кнопки при наведении звучали)
Вам потребуется немного поработать с питоном
В файле screens.rpy в самом конце напишите
init python:
renpy.music.register_channel("test_one", "sfx", False)
renpy.music.register_channel("test_two", "sfx", False)
renpy.music.register_channel("test_three", "sfx", False)
renpy.music.register_channel("test_four", "sfx", False)
renpy.music.register_channel("test_five", "sfx", False)
renpy.music.register_channel("test_six", "sfx", False)
Далее когда вы пишите кнопку вы в нее добавляете канал
textbutton "X" xpos 100 ypos 200 action [Play("test_six", "Click3.wav"),Hide("gruppa_tatu")] hovered Play("test_one", "menu_click_01.ogg")
Теперь разберем что тут записано
textbutton "X" xpos 100 ypos 200 action – начало большинства кнопок
Play("test_six", "Click3.wav"), - музыка при нажатии на канале test_six(для нажатия достаточно 1 канала)
hovered Play("test_one", "menu_click_01.ogg") –музыка при наведения (если несколько кнопок, то несколько кнопок надо использовать)
для горячих точек вот наглядный пример
