赞 | 2 |
VIP | 19 |
好人卡 | 10 |
积分 | 3 |
经验 | 57661 |
最后登录 | 2019-5-20 |
在线时间 | 574 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 253
- 在线时间
- 574 小时
- 注册时间
- 2006-8-25
- 帖子
- 969
|
本帖最后由 jhhuang 于 2012-2-7 02:16 编辑
- #============================================================================
- # ■ Game_Map
- #------------------------------------------------------------------------------
- # 处理地图的类。包含卷动以及可以通行的判断功能。
- # 本类的实例请参考 $game_map 。
- #============================================================================
- class Game_Map
- #--------------------------------------------------------------------------
- # ● 定义实例变量
- #--------------------------------------------------------------------------
- attr_accessor :display_x # 显示 X 坐标 * 128
- attr_accessor :display_y # 显示 Y 坐标 * 128
复制代码 定义display_x,display_y后.(PS:地图的图块大小为32x32),每次代入坐标变量时却*128
例:- #============================================================================
- # ■ Game_Player
- #------------------------------------------------------------------------------
- # 处理主角的类。事件启动的判定、以及地图的滚动等功能。
- # 本类的实例请参考 $game_player。
- #============================================================================
- class Game_Player < Game_Character
- #--------------------------------------------------------------------------
- # ● 恒量
- #--------------------------------------------------------------------------
- CENTER_X = (320 - 16) * 4 # 画面中央的 X 坐标 * 4
- CENTER_Y = (240 - 16) * 4 # 画面中央的 Y 坐标 * 4
- #--------------------------------------------------------------------------
- # ● 像通到画面中央一样的设置地图的显示位置
- #--------------------------------------------------------------------------
- def center(x, y)
- max_x = ($game_map.width - 20) * 128
- max_y = ($game_map.height - 15) * 128
- $game_map.display_x = [0, [x * 128 - CENTER_X, max_x].min].max
- $game_map.display_y = [0, [y * 128 - CENTER_Y, max_y].min].max
- end
复制代码 大量数据取得坐标后都要*4或*4*32(128)
然后取得地图坐标(x,y)*128之后....
最后取得实际坐标又要/4
# 刷新元件地图
@tilemap.ox = $game_map.display_x / 4
@tilemap.oy = $game_map.display_y / 4
4*32/4=32
乘4又除4感觉存在大量多余数据,为什么不一开始就以32作为对象而选择128?
是写法习惯还是什么问题? |
|