Project1
标题:
关于地图名显示脚本的错误
[打印本页]
作者:
黑白旋律
时间:
2011-3-20 11:09
标题:
关于地图名显示脚本的错误
本帖最后由 黑白旋律 于 2011-3-20 19:50 编辑
#==========================================================================
# 本脚本来自www.66rpg.com,用于任何游戏请保留此信息。别以为加密就可以del哦
#==========================================================================
XY_SWITCH = 25 # 当25号开关打开,本脚本才开始工作。
#==============================================================================
# ■ Window_XY
#------------------------------------------------------------------------------
# 显示坐标的窗口。
#==============================================================================
class Window_xy < Window_Base#注意前面那个window_xy是文件名
#--------------------------------------------------------------------------
# ● 初始化窗口
#--------------------------------------------------------------------------
def initialize
super(0, 0, 160, 96)#最后面那个数字是宽要显示多个需要改大,前面一个是长~
self.contents = Bitmap.new(width - 32, height - 32)
self.back_opacity = 255 # 这个是背景透明
self.opacity = 255 # 这个是边框和背景都透明
self.contents_opacity = 255 # 这个是内容透明
self.visible = false
refresh
@x = $game_player.x
@y = $game_player.y
@id = $game_map.map_id
end
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
if $game_switches[XY_SWITCH] #确定开关是否打开,可以自己改变开关
@x = $game_player.x #获取角色X坐标
@y = $game_player.y #获取角色Y坐标
@id = $game_map.map_id #获取地图编号
self.contents.clear #清除以前的东西
$mapnames = load_data("Data/MapInfos.rxdata") #读取地图名文件
map_name = $mapnames[@id].name #获得地图名
self.contents.font.color = normal_color#颜色,这里是白色~
self.contents.draw_text(0, 0, 116, 32, map_name,2)
self.contents.font.color = system_color#颜色,暗蓝色
self.contents.draw_text(0, 32, 120, 32, "X:")#显示X这个字的位置,引号里面的内容随便改,比如"X坐标地址"
self.contents.font.color = normal_color#颜色,这里是白色~
self.contents.draw_text(0, 32, 52, 32, @x.to_s,2)
self.contents.font.color = system_color#上面那个是X坐标的变量,可以自己更改变量名~
self.contents.draw_text(64, 32, 128, 32, "Y:")#显示Y这个字~
self.contents.font.color = normal_color
self.contents.draw_text(0, 32, 116, 32, @y.to_s,2)
end
end
#--------------------------------------------------------------------------
# ● 判断文字刷新。节约内存用
#--------------------------------------------------------------------------
def judge
return true if @x != $game_player.x
return true if @y != $game_player.y
return true if @id != $game_map.map_id
return false
end
end
###########################################################################
# 下面的东西不需要掌握~ #
###########################################################################
class Scene_Map
alias xy_66rpg_main main
def main
@xy_window = Window_xy.new
@xy_window.x = 640 - 160
@xy_window.y = 480 - 96
@xy_window.opacity = 0
xy_66rpg_main
@xy_window.dispose
end
#--------------------------------------------------------------------------
# ● 刷新画面
#--------------------------------------------------------------------------
alias xy_66rpg_update update
def update
xy_66rpg_update
if $game_switches[XY_SWITCH]
@xy_window.visible = true
@xy_window.refresh if @xy_window.judge
else
@xy_window.visible = false
end
end
end
#==========================================================================
# 本脚本来自www.66rpg.com,用于任何游戏请保留此信息。别以为加密就可以del哦
#==========================================================================
复制代码
QQ截图未命名.jpg
(18.57 KB, 下载次数: 3)
下载附件
保存到相册
2011-3-20 11:09 上传
作者:
忧雪の伤
时间:
2011-3-20 11:22
@xy_window未定义……
作者:
沙漠点灰
时间:
2011-3-20 17:21
回复
黑白旋律
的帖子
测试了一下,表示没问题....
真的出问题的话,可能是在使用Scene_Map的main之前用了调用了Scene_Map的update方法
,或者用了其他什么脚本....
作者:
Wind2010
时间:
2011-3-20 18:48
请尝试把该脚本放到最靠近M爱你的地方
另外LS签名挡住我发帖了
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1