查看: 3855|回复: 1

[已经解决] 地图限制事件更新?

[复制链接]

醉啸 长风万里

梦石
0
星屑
6512
在线时间
6616 小时
注册时间
2007-12-16
回帖
4301

贵宾

发表于 2017-1-14 23:22:12 | 显示全部楼层 |阅读模式

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

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

×
如图,所有的事件都是同一设置,但是根据当前画面显示的位置的不同会造成显示的错乱
QQ图片20170114231938.png
这张图片是先向下卷动地图,玩家再向上走得到的,可以看到上下都是错乱的
QQ图片20170114231913.png
是哪里限制了事件的更新?

还在龟速填坑中

老鹰

梦石
40
星屑
37812
在线时间
7091 小时
注册时间
2012-5-26
回帖
3297

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

发表于 2017-1-14 23:38:04 | 显示全部楼层
game_event类中的第84-105行有如下设置
  #--------------------------------------------------------------------------
  # ● 自动移动的更新
  #--------------------------------------------------------------------------
  def update_self_movement
    if near_the_screen? && @stop_count > stop_count_threshold
      case @move_type
      when 1;  move_type_random
      when 2;  move_type_toward_player
      when 3;  move_type_custom
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● 判定是否在画面的可视区域內
  #     dx : 从画面中央开始计算,左右有多少个图块。
  #     dy : 从画面中央开始计算,上下有多少个图块。
  #--------------------------------------------------------------------------
  def near_the_screen?(dx = 12, dy = 8)
    ax = $game_map.adjust_x(@real_x) - Graphics.width / 2 / 32
    ay = $game_map.adjust_y(@real_y) - Graphics.height / 2 / 32
    ax >= -dx && ax <= dx && ay >= -dy && ay <= dy
  end

所以事件的自定义移动路线会因为考虑到效率而超出地图画面外的不刷新。

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 我很赞同

查看全部评分

回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部