Project1
标题:
怎样在地图上显示一个窗口?
[打印本页]
作者:
华华
时间:
2007-7-12 06:45
标题:
怎样在地图上显示一个窗口?
class ShowMoney < Window_Base
#--------------------------------------------------------------------------
# ● 类常量定义
#--------------------------------------------------------------------------
# 窗口位置设定
GOLD_X = 380 # 矩形左上顶点X坐标
GOLD_Y = 20 # 矩形左上顶点Y坐标
GOLD_W = 220 # 矩形宽
GOLD_H = 60 # 矩形高
# 文字颜色
TEXT_COLOR = Color.new(255, 255, 255, 255)
#--------------------------------------------------------------------------
# ● 初始化状态
#--------------------------------------------------------------------------
def initialize
super(GOLD_X , GOLD_Y, GOLD_W, GOLD_H)
# 初始化窗口透明度
self.opacity = 150
self.back_opacity =135
self.contents_opacity = 255
self.contents = Bitmap.new(width - 32, height - 32)
end
#--------------------------------------------------------------------------
# ● 输出文字
#--------------------------------------------------------------------------
def drawMoney
self.contents.clear
self.contents.font.color = TEXT_COLOR
# 描绘金钱
self.contents.draw_text(4, 0 , width - 40, 32, $game_party.gold.to_s, 1)
end
end
这个,自己试者写的。用公用事件
a_wwPP=ShowMoney.new
a_wwPP.drawMoney
调用,能够显示出来。可是根本不能实现想要的效果啊。
一个是它不能一直出现在画面上
二是每用一次就新生成一个窗口把原来的压住
所以,我想问的是:
Q1.怎么让它一直显示在画面上?(最好是能从标题画面后就一直显示)
Q2.怎么在原来的窗口上自动重画金钱。
[LINE]1,#dddddd[/LINE]
本贴为学习帖,并不是我想要做一个金钱窗口。现在特别想弄明白的只是Q1,Q2是不是要麻烦一点啊?
[LINE]1,#dddddd[/LINE]
版务信息:本贴由楼主自主结贴~
作者:
华华
时间:
2007-7-12 06:45
标题:
怎样在地图上显示一个窗口?
class ShowMoney < Window_Base
#--------------------------------------------------------------------------
# ● 类常量定义
#--------------------------------------------------------------------------
# 窗口位置设定
GOLD_X = 380 # 矩形左上顶点X坐标
GOLD_Y = 20 # 矩形左上顶点Y坐标
GOLD_W = 220 # 矩形宽
GOLD_H = 60 # 矩形高
# 文字颜色
TEXT_COLOR = Color.new(255, 255, 255, 255)
#--------------------------------------------------------------------------
# ● 初始化状态
#--------------------------------------------------------------------------
def initialize
super(GOLD_X , GOLD_Y, GOLD_W, GOLD_H)
# 初始化窗口透明度
self.opacity = 150
self.back_opacity =135
self.contents_opacity = 255
self.contents = Bitmap.new(width - 32, height - 32)
end
#--------------------------------------------------------------------------
# ● 输出文字
#--------------------------------------------------------------------------
def drawMoney
self.contents.clear
self.contents.font.color = TEXT_COLOR
# 描绘金钱
self.contents.draw_text(4, 0 , width - 40, 32, $game_party.gold.to_s, 1)
end
end
这个,自己试者写的。用公用事件
a_wwPP=ShowMoney.new
a_wwPP.drawMoney
调用,能够显示出来。可是根本不能实现想要的效果啊。
一个是它不能一直出现在画面上
二是每用一次就新生成一个窗口把原来的压住
所以,我想问的是:
Q1.怎么让它一直显示在画面上?(最好是能从标题画面后就一直显示)
Q2.怎么在原来的窗口上自动重画金钱。
[LINE]1,#dddddd[/LINE]
本贴为学习帖,并不是我想要做一个金钱窗口。现在特别想弄明白的只是Q1,Q2是不是要麻烦一点啊?
[LINE]1,#dddddd[/LINE]
版务信息:本贴由楼主自主结贴~
作者:
幻の飞鱼
时间:
2007-7-12 07:03
写一句
@a_wwPP=ShowMoney.new,在sence_map的新键部分
@a_wwPP.drawMoney 写在sence_map的刷新部分
最好再有个DISPOSE方法随地图一起DISPOSE,具体的可以参照其他脚本啊,LZ的学习能力好,应该可以懂
好象这样就可以一直刷新吧
就是有点费资源,因为没一贞都描绘金钱
所以def drawMoney里面最好判断一下,金钱是否有变化,没变化就不绘制,变化了才绘制- -|| [LINE]1,#dddddd[/LINE]
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者:
华华
时间:
2007-7-12 07:20
呵呵,谢谢啦。
作者:
华华
时间:
2007-7-12 07:30
呵呵,参照别的脚本,用了追加定义
class Scene_Map # (追加定义)
alias sm_main main
def main
@a_wwPP = ShowMoney.new
sm_main
@a_wwPP.dispose
end
alias sm_update update
def update
@a_wwPP.drawMoney
sm_update
end
end
作者:
幻の飞鱼
时间:
2007-7-12 08:21
额,MS是可以的~~
LZ学的真快- -||
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1