Ren'Py memo

Ren'Pyの個人的なメモ

ATLの例文

Animation and Transformation Language (ATL) — Ren'Py Documentation
他にも参考文献あったかもしれなかったんですが失念しましたすみません……

transform

フェード風

    transform b_fade:
        alpha 0.0
        easein 1.0 alpha 1.0

透明度をいったん0にして、1秒かけて100%の数値に戻します。
dissolveより多少早く表示したいけれど、瞬間表示よりはゆっくり表示したい時に。

位置の変更

    transform two_right:
        xalign 0.25

transformはトランジションの他に位置の変更にも使用できます。
デフォルトの配置より細かく指定したい時に。

何かしたっぽい動き

何かしたっぽい動き
    transform ugougo:
        yoffset 0
        linear 0.1 yoffset 50
        linear 0.1 yoffset 0

やや下におろしてあげると、何かしたっぽい動きに見えなくもないです。

一回だけふるえる

一回だけふるえる
    transform shake:
        ease .06 yoffset 34
        ease .06 yoffset 5
        ease .05 yoffset 30
        ease .05 yoffset 5
        ease .04 yoffset 26
        ease .04 yoffset 5
        ease .03 yoffset 22
        ease .03 yoffset 5
        ease .02 yoffset 18
        ease .02 yoffset 2
        ease .01 yoffset 14
        ease .01 yoffset 2
        ease .01 yoffset 0

ダメージを受けたっぽい動きです。

ずっとふるえる

ずっとふるえる
    transform shake2(rate=0.090):
        linear rate xoffset 2 yoffset 0
        linear rate xoffset -2.8 yoffset 2
        linear rate xoffset 2.8 yoffset 0
        linear rate xoffset -2 yoffset 2
        linear rate xoffset +0 yoffset +0
        repeat

show~を次に指定するかhideするまでずっとふるえます。
yoffsetをマイナス指定すると中断した際、下に隙間ができる可能性があります。

近づく

近づく
    transform zoo:
        ease .5 zoom 1.1 yalign 0.1

一歩踏み込んだっぽい動きです。
(マウスクリック高速連打しているとzoomのまま戻らない場合もあります)

戻る

戻る
    transform bac:
        ease .5 zoom 1.0 yalign 1.0 yoffset 0

上記の近づくと併用するtransformです。
一歩戻るっぽい動きです。

横揺れ

横揺れ
    transform shake3(rate=0.090):
        linear rate xoffset 2
        linear rate xoffset -2.8
        linear rate xoffset 2.8
        linear rate xoffset -2
        linear rate xoffset +0
        repeat

文字通り横に揺れます。

小さく動く

小さく動く
    transform ugo2:
        yoffset 0
        linear 0.2 yoffset 10
        linear 0.2 yoffset 0

うなずきっぽい動きです。

ゆらゆらボタン

ゆらゆらボタン
    transform button_trans:
        on hover:
            linear 0.2  rotate 5
            linear 0.2  rotate -5
            repeat
        on idle:
            linear 0 rotate None

マウスがホバーされるとゆらゆらします。
ボタンのanchorをstyleで指定しないとrotate(傾き、回転)は動かないため注意。

ボタンのソースコードはこんな感じです。

    fixed:
        textbutton _("はジめから"):
            action Start()
            xpos 295
            ypos 85
            style "main_menu_button"
            alt _("初めから")
            at button_trans

style main_menu_button is gui_button
style main_menu_button_text is gui_button_text

style main_menu_button:
    properties gui.button_properties("navigation_button")
    activate_sound "audio/se_akch.ogg"
    xanchor 0.5
    yanchor 0.5

style main_menu_button_text:
    size 75
    bold True
    idle_color "4d3c60B3"
    insensitive_color "f3f4e1B3"

image

メッセージ後のアイコン

    image ctc_blink:
        "ctc.png"
        linear 0.3 ypos 0.3
        linear 0.3 ypos 0.25
        repeat

お好みです。

目パチ

    image 1_a_a1:
        "1_a_a0"
        choice:
            pause 4.5
        choice:
            pause 3.5
        choice:
            pause 2
        "1_a_a3"
        pause 0.1
        "1_a_a4"
        pause 0.1
        repeat

choiceで指定した動きはランダムに選ばれます。
これにより立ち絵同時目パチ事故や規則的な動きによる違和感が薄れます。
目パチの順番は開いた目→閉じた目→伏せた目の順番がよさげです。

より自然なまばたきはこちらの講座が参考になるかと思われます。