转自——《雪凡與好朋友們的 Ren'Py 遊戲引擎初學心得提示》第九回:變數管理與 Screen 系統
[RenPy] 纯文本查看 复制代码 【阻塞与非阻塞】
用 show screen 呼唤出来的 Screen,是不会「阻塞」游戏正常进行的。
这个意思是说,screen 只是显示在萤幕上面,您继续点滑鼠,故事还是能往下推进,screen 的存在并不会拦截正常游戏脚本流程。
如果您就是需要一个阻塞效果,让screen 拦在玩家面前说:「等等!你得先把我搞定才能继续去做别的,否则此路不通。」则您必须用call screen 语句来取代show screen语句。如下:
call screen 名称
您大可修改前述的爆炸范例来试试效果。
注意,您只能透过在 screen 中加入两种 action:"Jump" 和 "Return" 来让玩家能脱离阻塞状态。比方说:
screen some_screen:
textbuttom "脱离阻塞" action Return() at truecenter
label start:
call screen some_screen
"您必须脱离阻塞才能看到这一行。换句话说,您刚刚按过那个按钮,执行过 action Return 了。"
当这两种 action 的其中之一被运行时,故事才能继续进行下去。
|