Project1
标题:
问个关于窗口的问题……
[打印本页]
作者:
Wind2010
时间:
2010-11-12 21:38
标题:
问个关于窗口的问题……
本帖最后由 Wind2010 于 2010-11-12 22:26 编辑
自己写了个脚本……
#==============================================================================
# ■ Window_LV
#------------------------------------------------------------------------------
# 显示角色LV的窗口
#==============================================================================
class Window_LV < Window_Base
#--------------------------------------------------------------------------
# ● 初始化对像
#--------------------------------------------------------------------------
def initialize
super(0, 0, 77, 44)
self.contents = Bitmap.new(100, 100)
self.x = 0
self.y = 436
refresh
end
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = normal_color
self.contents.font.size = 18
self.contents.draw_text(0, -11, 100, 35, "LV:" + $game_actors[1].level.to_s,0)
end
end
复制代码
然后在Scene_Map的第15行下面加上了:
@LV_window = Window_LV.new
复制代码
开始游戏时的确可以出现“LV:1”的窗口,但是当等级上升时,显示的依然是“LV:1”
怎么可以刷新那个窗口?
作者:
cinderelmini
时间:
2010-11-12 22:14
本帖最后由 cinderelmini 于 2010-11-12 22:18 编辑
恩恩!看到LZ这般努力,木子不说一下感觉过不去呢!!
具体步骤如下:(看到LZ只显示一号角色的等级,这里就只做一号角色啦)
在Scene_Map脚本里,
在class Scene_Map的下面加上这样一小段:
def initialize
@ini_level = $game_actors[1].level
end
这里先初始一个用来记录角色等级旧值的变量
然后在 def update
的下面加上这样的一小段:(为节约系统资源,这样写有好处。。。)
if $game_actors[1].level != @ini_level
@LV_window.refresh
@ini_level = $game_actors[1].level
end
然后就是华丽丽地测试,看到完成了!!
顺带说下,为了在地图界面切换到其他界面时这个窗口能消失,请在Scene_Map里的:
# 释放信息窗口
@message_window.dispose
这两行的下面加上:
@LV_Window.dispose
把这个窗口释放了,这样才算是一个窗口的一般完整添加。。。
LZ加油!!!
作者:
Wind2010
时间:
2010-11-12 22:19
回复
cinderelmini
的帖子
谢谢……
继续写其他窗口去- -
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1