I'm making a VN game with dictionary system - a simple and regular one: when we click the red key word in our script, there will be a new frame with the key word and its explanation shown nearby. My plan is like:
And Code is like:
Code: Select all
"Alone in the holy chapel of St. Godhrkar, Hayceno concludes his prayer. He then looks up to the magnificent machine carved in a rather peculiar decor – a pair of wings of flame and the apostles with the hourglass in one of their hands. {p}Though it is the religious symbol of {a=call:dictionary}West-Iyrie{/a}, it still requires technology to function. For some time, the whole chapel is filled with the sound of flowing sand and the rotating gears."
label dictionary:
show screen dic(x = renpy.get_mouse_pos()[0],x = renpy.get_mouse_pos()[1])
return
screen dic(x,y):
predict False
tag frame
zorder 250
vbox:
xpos x
ypos y
frame:
style_prefix "dic"
xmaximum 400
has vbox
#label persistent.Dic xalign .5
#text persistent.Dicc ypos 20 xpos 20 size 20
label "West-Iyrie"
text "The most widely held religion in the world, originated in Thalizac, Promland. Believing in the unity of the binary gods Andinomie, and their angels, Ychsympal. Due to historical reasons, however, it's not as popular in Promland, except in Thalizac."
When we click the key word, the dictionary frame shows as soon as the script goes forward. I don't know how to stop it. Is there any way, when click the word which is linked by {a=call:}, the script could not go forward, but only the frame shows?
Here is my own stupid method but still has big problem:
I'm trying to add a rollback code, to offset it:
Code: Select all
label dictionary:
show screen special
show screen dic(x = renpy.get_mouse_pos()[0],x = renpy.get_mouse_pos()[1])
return
screen special:
predict False
on "show" action (Rollback(), Hide("special"))
Could there are any solutions of this problem?
Thank you very much for reading this problem. Hope we can solve it together QAQ