设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1517|回复: 9
打印 上一主题 下一主题

地图移动的问题

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-3
帖子
522
跳转到指定楼层
1
发表于 2007-7-30 19:34:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
做了个简单的在地图上显示状态的窗口。可是发觉,当人物快走到地图边缘,地图不会再移动。
于是,主角便走到新窗口下面去了。
这个该怎么解决呢?
(本来想找那个 小地图 脚本来看下,结果找了很久没找到。)
  1. class ShowMoney < Window_Base
  2.   #--------------------------------------------------------------------------
  3.   # ● 类常量定义
  4.   #--------------------------------------------------------------------------
  5.   # 窗口位置设定
  6.   GOLD_X =470      # 矩形左上顶点X坐标
  7.   GOLD_Y = 2       # 矩形左上顶点Y坐标
  8.   GOLD_W = 175     # 矩形宽
  9.   GOLD_H = 145     # 矩形高
  10.   #--------------------------------------------------------------------------
  11.   # ● 初始化状态
  12.   #--------------------------------------------------------------------------
  13.   def initialize
  14.     super(GOLD_X , GOLD_Y, GOLD_W, GOLD_H)
  15.     @actor = $game_party.actors[0]
  16.     # 初始化窗口透明度
  17.     self.back_opacity=0
  18.     self.opacity=0
  19.     self.contents = Bitmap.new(width - 32, height - 32)
  20.     self.contents.font.size=18
  21.     self.contents.font.color=system_color
  22.    
  23.     @nRunTime=0
  24.     #-------------------显示图片------------------------
  25.     backPicture=Bitmap.new("Graphics/Heads/通用_yuhuan_1_0.png")
  26.     cw=backPicture.width
  27.     ch=backPicture.height
  28.     back_picture=Rect.new(0,0,cw,ch)
  29.     self.contents.blt(20,0,backPicture,back_picture)
  30.   end
  31.   def draw_hp
  32.     self.contents.draw_text(20, 90 , 100, 32, "HP:" + @actor.hp.to_s + "/" + @actor.maxhp.to_s , 1)
  33.   end
  34.   
  35. #--------------------------引用自 66《黑暗圣剑传说》--------------
  36.   def draw_actor_hp( x, y, width = 144) #这个用于战斗的描绘
  37.     hp_length = 85*@actor.hp / @actor.maxhp  #HP槽的长度
  38.     hp_lv1_bitmap = Bitmap.new("Graphics/Pictures/bars/HP2_lv1_long.png")
  39.     cw_lv1 = hp_lv1_bitmap.width
  40.     ch_lv1 = hp_lv1_bitmap.height
  41.     src_rect_lv1 = Rect.new(0, 0, cw_lv1, ch_lv1)
  42.     self.contents.blt(x , y , hp_lv1_bitmap, src_rect_lv1)
  43.     #————绘制血————
  44.     hp_lv2_bitmap = Bitmap.new("Graphics/Pictures/bars/HP2_lv2_long(blood).png")
  45.     ch_lv2 = hp_lv2_bitmap.height
  46.     ch_lv2a=hp_lv2_bitmap.width
  47.     src_rect_lv2 = Rect.new(0, 0,  26+hp_length, ch_lv2)
  48.     self.contents.blt(x , y-1 , hp_lv2_bitmap, src_rect_lv2)
  49.   end
  50. end
  51. #---------------------------------------------------------------------


  52. #------------------------------------------------------------------------------
  53. class Scene_Map
  54.   alias smn_mainl main
  55.   def main
  56.     @a_wwPP = ShowMoney.new
  57.     smn_mainl
  58.    
  59.     @a_wwPP.dispose
  60.   end
  61.   
  62.   alias smn_updatel update
  63.   def update
  64.      @a_wwPP.draw_actor_hp(5,90)
  65.      @a_wwPP.draw_hp
  66.     smn_updatel
  67.   end
  68. end
复制代码

版务信息:本贴由楼主自主结贴~
啊……正太好可爱啊~~~~ 偶死了,2009年重生

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-3
帖子
522
2
 楼主| 发表于 2007-7-30 19:34:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
做了个简单的在地图上显示状态的窗口。可是发觉,当人物快走到地图边缘,地图不会再移动。
于是,主角便走到新窗口下面去了。
这个该怎么解决呢?
(本来想找那个 小地图 脚本来看下,结果找了很久没找到。)
  1. class ShowMoney < Window_Base
  2.   #--------------------------------------------------------------------------
  3.   # ● 类常量定义
  4.   #--------------------------------------------------------------------------
  5.   # 窗口位置设定
  6.   GOLD_X =470      # 矩形左上顶点X坐标
  7.   GOLD_Y = 2       # 矩形左上顶点Y坐标
  8.   GOLD_W = 175     # 矩形宽
  9.   GOLD_H = 145     # 矩形高
  10.   #--------------------------------------------------------------------------
  11.   # ● 初始化状态
  12.   #--------------------------------------------------------------------------
  13.   def initialize
  14.     super(GOLD_X , GOLD_Y, GOLD_W, GOLD_H)
  15.     @actor = $game_party.actors[0]
  16.     # 初始化窗口透明度
  17.     self.back_opacity=0
  18.     self.opacity=0
  19.     self.contents = Bitmap.new(width - 32, height - 32)
  20.     self.contents.font.size=18
  21.     self.contents.font.color=system_color
  22.    
  23.     @nRunTime=0
  24.     #-------------------显示图片------------------------
  25.     backPicture=Bitmap.new("Graphics/Heads/通用_yuhuan_1_0.png")
  26.     cw=backPicture.width
  27.     ch=backPicture.height
  28.     back_picture=Rect.new(0,0,cw,ch)
  29.     self.contents.blt(20,0,backPicture,back_picture)
  30.   end
  31.   def draw_hp
  32.     self.contents.draw_text(20, 90 , 100, 32, "HP:" + @actor.hp.to_s + "/" + @actor.maxhp.to_s , 1)
  33.   end
  34.   
  35. #--------------------------引用自 66《黑暗圣剑传说》--------------
  36.   def draw_actor_hp( x, y, width = 144) #这个用于战斗的描绘
  37.     hp_length = 85*@actor.hp / @actor.maxhp  #HP槽的长度
  38.     hp_lv1_bitmap = Bitmap.new("Graphics/Pictures/bars/HP2_lv1_long.png")
  39.     cw_lv1 = hp_lv1_bitmap.width
  40.     ch_lv1 = hp_lv1_bitmap.height
  41.     src_rect_lv1 = Rect.new(0, 0, cw_lv1, ch_lv1)
  42.     self.contents.blt(x , y , hp_lv1_bitmap, src_rect_lv1)
  43.     #————绘制血————
  44.     hp_lv2_bitmap = Bitmap.new("Graphics/Pictures/bars/HP2_lv2_long(blood).png")
  45.     ch_lv2 = hp_lv2_bitmap.height
  46.     ch_lv2a=hp_lv2_bitmap.width
  47.     src_rect_lv2 = Rect.new(0, 0,  26+hp_length, ch_lv2)
  48.     self.contents.blt(x , y-1 , hp_lv2_bitmap, src_rect_lv2)
  49.   end
  50. end
  51. #---------------------------------------------------------------------


  52. #------------------------------------------------------------------------------
  53. class Scene_Map
  54.   alias smn_mainl main
  55.   def main
  56.     @a_wwPP = ShowMoney.new
  57.     smn_mainl
  58.    
  59.     @a_wwPP.dispose
  60.   end
  61.   
  62.   alias smn_updatel update
  63.   def update
  64.      @a_wwPP.draw_actor_hp(5,90)
  65.      @a_wwPP.draw_hp
  66.     smn_updatel
  67.   end
  68. end
复制代码

版务信息:本贴由楼主自主结贴~
啊……正太好可爱啊~~~~ 偶死了,2009年重生
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-7-29
帖子
9
3
发表于 2007-7-30 19:37:45 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-3
帖子
522
4
 楼主| 发表于 2007-7-30 19:39:44 | 只看该作者
我是菜鸟!
不过,这个问题我好像有点会的样子!
就是设置变量度


怎么弄?- -+
啊……正太好可爱啊~~~~ 偶死了,2009年重生
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-3
帖子
522
5
 楼主| 发表于 2007-7-31 03:28:09 | 只看该作者
36h 内不能自顶贴
似乎除了老实的偶米多少人遵守啊。。。所以。。。。{/hx}
啊……正太好可爱啊~~~~ 偶死了,2009年重生
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
431
在线时间
125 小时
注册时间
2006-11-2
帖子
1200
6
发表于 2007-7-31 03:49:29 | 只看该作者
那是地图的宽度不够吧。。。刚才试了下 把地图改成 40*15没问题。

PS 遵守规矩总不会错 如果怕帖子被冷落可以短信告诉版主。{/wx}

和记忆一起封存着的ID...
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-7-26
帖子
138
7
发表于 2007-7-31 04:58:56 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-3
帖子
522
8
 楼主| 发表于 2007-7-31 05:08:32 | 只看该作者
嗯,可是,地图再宽也有走到头的时候啊。
怎么说呢?当角色还没走到地图边缘时,角色在窗口中的坐标位置并没有改变,只是地图在退后,就走不到状态窗口下面去。但是,但角色走到地图边缘附近时,已经没有地图可以移动了,角色就真正地改变了在窗口中的坐标位置。这样的话,角色就可以走到那个用来显示状态的窗口的下面去了。(我是这么理解的。。。。{/wx})
(好象还是没表达清楚{/pz})
这个怎么解决呢?想了好久都不明白呢。(觉得好象没办法解决一样)是不是只能在地图的右上角画一个大房子什么的,这样角色就走不到那去了。。。
啊……正太好可爱啊~~~~ 偶死了,2009年重生
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
431
在线时间
125 小时
注册时间
2006-11-2
帖子
1200
9
发表于 2007-7-31 05:13:44 | 只看该作者
你的意思是不让角色走到状态图的底下?

好像没有游戏是这样的吧。。。

最多 把图片的透明度增加一些 不会挡住角色就好。
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
和记忆一起封存着的ID...
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-3
帖子
522
10
 楼主| 发表于 2007-7-31 05:21:57 | 只看该作者
这样啊
记得以前玩游戏时没有走到状态窗口下面去过。
可能他们就是用什么东西把角色挡住了,让角色走不到地图最边缘吧
嘿嘿,谢谢啦~~~~~~
啊……正太好可爱啊~~~~ 偶死了,2009年重生
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2026-7-1 15:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表