赞 | 0 |
VIP | 47 |
好人卡 | 14 |
积分 | 1 |
经验 | 6342 |
最后登录 | 2015-10-31 |
在线时间 | 466 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 466 小时
- 注册时间
- 2006-2-25
- 帖子
- 1863
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
刚发现问题
这个版本和XP版本都存在隐患.
(播放动画移动会有问题,事件走出视野外不更新)
所以把这东西删掉了
如果您绘制的地图比较大,设置的事件多但是分散.
请使用这个脚本
如果你的地图大部分比较小或者事件不多的话
那就不必了
- #============================================================================
- # ■ VX_事件图形刷新简化 —— By 诡异の猫
- #============================================================================
- # 脚本内容: 只刷新视野内的事件图形,改善大地图事件过多卡机情况.
- #============================================================================
- class Sprite_Character < Sprite_Base
- #--------------------------------------------------------------------------
- # ● 判定图形是否再视野内
- #--------------------------------------------------------------------------
- def in_view?
- add_x = (self.width-32)*4 + 256
- add_y = self.height*8
- begin_x = $game_map.display_x - add_x
- begin_y = $game_map.display_y - add_y
- end_x = $game_map.display_x + 4352 + add_x
- end_y = $game_map.display_y + 3328 + add_y
- limit_x = $game_map.width * 256 - 256 + add_x
- limit_y = $game_map.height * 256 - 256 + add_y
- char_x = @character.real_x
- char_y = @character.real_y
- if end_x <= limit_x
- return false if char_x < begin_x or char_x > end_x
- end
- if end_y <= limit_y
- return false if char_y < begin_y or char_y > end_y
- end
- if end_x > limit_x and end_y > limit_y
- return false if char_x < begin_x and char_x > end_x - limit_x
- return false if char_y < begin_y and char_y > end_y - limit_y
- end
- return true
- end
- #--------------------------------------------------------------------------
- # ● 更新画面
- #--------------------------------------------------------------------------
- def update
- super
- if in_view?
- update_bitmap
- self.visible = (not @character.transparent)
- update_src_rect
- self.x = @character.screen_x
- self.y = @character.screen_y
- self.z = @character.screen_z
- self.opacity = @character.opacity
- self.blend_type = @character.blend_type
- self.bush_depth = @character.bush_depth
- end
- update_balloon
- if @character.animation_id != 0
- animation = $data_animations[@character.animation_id]
- start_animation(animation)
- @character.animation_id = 0
- end
- if @character.balloon_id != 0
- @balloon_id = @character.balloon_id
- start_balloon
- @character.balloon_id = 0
- end
- end
- end
复制代码
点击查看原帖
这个脚本效果差点
见谅.!
[本贴由 风雪优游 于 2008-4-3 23:16:03 进行了编辑] |
|