Window_BattleActor < Window_BattleStatus 。Window_BattleActor 是 Window_BattleStatus 的子类。
但是Window_BattleActor 中,没有任何文字和值槽的描画的脚本内容,那截图中的文字和值槽是如何实现的?
另外这一段,
class Window_BattleActor < Window_BattleStatus
#--------------------------------------------------------------------------
# ● 初始化对象
# info_viewport : 信息显示用显示端口
#--------------------------------------------------------------------------
def initialize(info_viewport)
super()
self.y = info_viewport.rect.y
self.visible = false
self.openness = 255
@info_viewport = info_viewport
end
#--------------------------------------------------------------------------
# ● 显示窗口
#--------------------------------------------------------------------------
def show
if @info_viewport
width_remain = Graphics.width - width
self.x = width_remain
@info_viewport.rect.width = width_remain
select(0)
end
super
end
红字的 if @info_viewport 能否解释一下,到底代表什么含义。拜谢之。作者: 多啦A户 时间: 2020-9-4 09:28
VA区应该有一个写的挺清楚的教程,可以尝试看看,以下为个人理解:
Window_BattleActor 继承了 Window_BattleStatus,如下,则BattleActor具有了BattleStatus的所有方法,绘制槽值的自然也继承了;
class Window_BattleActor < Window_BattleStatus
复制代码
接下来,在初始化方法中@info_viewport 这个实例变量被赋值,但若窗口已经被释放或者尚未初始化,则 @info_viewport为空值;
if @info_viewport 即是 if (@info_viewport != nil),即当@info_viewport是非空值时,执行if语句块中的内容,执行内容如下: