Пример дождя, грома и молний для нового GUI
Перейти к навигации
Перейти к поиску
init python:
# объявление картинок и псевдонимов
images_auto()
# объявление персонажа
p = Character("Свинья", color="#fc7", window_left_padding=100, image="pig")
# функции громыхания для внедрения в картинки
def s_thunder1(trans, st, at):
splay("thunder1")
def s_thunder2(trans, st, at):
splay("thunder2")
def s_thunder3(trans, st, at):
splay("thunder3")
def s_rain(trans, st, at):
sfxplay("rain")
# остановка шума дождя
def s_rain_off(trans, st, at):
sfxstop()
init:
# анимация дождя
image rain ani = Ani("rain ", 8, .1, zoom=2.4)
# анимация молнии
image light ani = Ani("lightning ", 3, .05, True, True)
$ t1, t2, t3 = rndf(8, 15), rndf(12, 20), rndf(15, 25)
$ t11, t22, t33 = rndf(2, 4), rndf(5, 7), rndf(7, 10)
$ xz = (1, -1)
# мерцание молнии
transform l_flash(t, tt):
anchor (.5, .0)
xzoom xz[rnd(1)]
alpha 0
tt
alpha 1
.1
alpha 0
.1
alpha 1
.1
alpha 0
t - tt - .3
repeat
image light1 = At("light ani", l_flash(t1, t11))
image light2 = At("light ani", l_flash(t2, t22))
image light3 = At("light ani", l_flash(t3, t33))
# картинка с молнией и со звуком грома
image thunder:
contains:
"light1"
align(rndf(.0, 1.), .0)
t11
function s_thunder1
t1 - t11
repeat
contains:
"light2"
align(rndf(.0, 1.), .0)
t22
function s_thunder2
t2 - t22
repeat
contains:
"light3"
align(rndf(.0, 1.), .0)
t33
function s_thunder3
t3 - t33
repeat
# картинка с дождём и со звуком дождя
image rain:
"rain ani"
on show:
function s_rain
on hide:
function s_rain_off
# Игра начинается здесь:
label start:
scene bg
with dissolve
p "Кажется, дождь собирается."
show rain
with dissolve
p "Кажется, будут гром и молнии."
show thunder
pause
hide thunder
hide rain
with dissolve
p "Кажется, дождь кончился."
scene black
with dissolve
return
- Ссылка на архив с проектом: test_lightning.zip
- Источник: Renpy для чайников: Пример дождя, грома и молний для нового GUI
На главную страницу | Книга рецептов Энциклопедии Ren'Py | Renpy для чайников | Вернуться к началу статьи |