Project1
标题:
自己写了个窗口脚本。。。出现释放问题求解。。。
[打印本页]
作者:
lwdx0822
时间:
2010-10-19 18:51
标题:
自己写了个窗口脚本。。。出现释放问题求解。。。
本帖最后由 lwdx0822 于 2010-10-19 20:34 编辑
我学着默认脚本写了个显示另一种货币的小窗口。。。可是。。。
测试时释放出现了问题。。。求解啊~~~
脚本如下~
#==============================================================================
# ■ Window_Gold2
#------------------------------------------------------------------------------
# 显示货币2的窗口。
#==============================================================================
class Window_Gold2 < Window_Base
#--------------------------------------------------------------------------
# ● 初始化对象
# x : 窗口的 X 坐标
# y : 窗口的 Y 坐标
#--------------------------------------------------------------------------
def initialize(x, y)
super(0, 305, 160, WLH + 32)
refresh
end
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = system_color
self.contents.draw_text(0, 0, 120, 32, "晶币:")
self.contents.font.color = normal_color
self.contents.draw_text(24, 0, 120, WLH, $game_variables[1])
end
end
这个是 Window_Gold2
下面的是我修改Scene_Menu类里面的地方。。。
#--------------------------------------------------------------------------
# ● 开始处理
#--------------------------------------------------------------------------
def start
super
create_menu_background
create_command_window
@gold_window = Window_Gold.new(0, 360)
@gold_window = Window_Gold2.new(0, 360)
@status_window = Window_MenuStatus.new(160, 0)
end
#--------------------------------------------------------------------------
# ● 结束处理
#--------------------------------------------------------------------------
def terminate
super
dispose_menu_background
@command_window.dispose
@gold_window.dispose
@gold_window.dispose
@status_window.dispose
end
#--------------------------------------------------------------------------
# ● 更新画面
#--------------------------------------------------------------------------
def update
super
update_menu_background
@command_window.update
@gold_window.update
@gold_window.update
@status_window.update
if @command_window.active
update_command_selection
elsif @status_window.active
update_actor_selection
end
end
分别添加了22行下面
@gold_window = Window_Gold2.new(0, 360)
33行下面的
@gold_window.dispose
44行下面的
@gold_window.update
可是测试时却说Window_Base类里面的
#--------------------------------------------------------------------------
# ● 释放
#--------------------------------------------------------------------------
def dispose
self.contents.dispose
super
end
这段出现了问题。。。
求解啊。。。
谢谢紫大大的热心帮助!!!感谢大大~~~
认可您的答案。。。
作者:
八云紫
时间:
2010-10-19 18:53
@gold_window = Window_Gold.new(0, 360)
@gold_window = Window_Gold2.new(0, 360)
没看出啥问题么? 变量名是不能一致的。这样后者会覆盖前者。然后释放的时候就会出现问题~~
作者:
lwdx0822
时间:
2010-10-19 19:48
回复
铃仙·优昙华院·因幡
的帖子
变量名。。。那里。。。我是脚本初学者啊。。。
有点小白。。。请紫大大指点。。。
作者:
八云紫
时间:
2010-10-19 19:56
回复
lwdx0822
的帖子
这个说的不是很清楚, 看例子就知道了。
a = 1
p a
a = "ABC"
p a
b = 1
p b
复制代码
作者:
lwdx0822
时间:
2010-10-19 20:16
回复
铃仙·优昙华院·因幡
的帖子
那这个问题出现在我的脚本的什么地方啊?。。。请大大指出。。。
那个 还有怎么解决撒。。。
作者:
lwdx0822
时间:
2010-10-19 20:17
回复
铃仙·优昙华院·因幡
的帖子
是这里么?
@gold_window.dispose
@gold_window.dispose
复制代码
跟这里么?
@gold_window.update
@gold_window.update
复制代码
那怎么解决啊。。。
作者:
八云紫
时间:
2010-10-19 20:19
@gold_window = Window_Gold.new(0, 360)
@gold_window = Window_Gold2.new(0, 360)
知道 类名 需要区分开来,为什么没去区分变量名呢?
@gold_window = Window_Gold.new(0, 360)
@gold2_window = Window_Gold2.new(0, 360)
作者:
lwdx0822
时间:
2010-10-19 20:33
回复
铃仙·优昙华院·因幡
的帖子
哈哈~~~谢谢大大啊~~~
一开始写的时候我也想到这里了。。。
可是 我却写错成。。。
@gold2_window = Window_Gold.new(0, 360)
复制代码
@gold2_window = Window_Gold.new(0, 360)
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1