| 
 
| 赞 | 0 |  
| VIP | 47 |  
| 好人卡 | 14 |  
| 积分 | 1 |  
| 经验 | 6342 |  
| 最后登录 | 2015-10-31 |  
| 在线时间 | 466 小时 |  
 Lv1.梦旅人 
	梦石0 星屑50 在线时间466 小时注册时间2006-2-25帖子1863 | 
| 本帖最后由 诡异の猫 于 2011-11-20 00:54 编辑 
 6楼的亲那脚本 当变量36等于2时直接没办法上下移动了呃...
 LZ应该是想像FC热血物语那种吧...
 
 最简单的方法就是把Game_Character类里面
 第557行的turn_down和563行turn_down if turn_ok删掉
 还有第608行的turn_up和第614行的turn_up if turn_ok删掉
 
 如果只是想主角上下移动不转向 而 事件上下移动转向的话
 就把这脚本插到main之前就行了
 未经全面测试 不知是否存在BUG LZ试一下吧复制代码class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # ● 向下移动
  #     turn_ok : 允许当场转向
  #--------------------------------------------------------------------------
  def move_down(turn_ok = true)
    if passable?(@x, @y+1)                  # 可通行的场合
      @y = $game_map.round_y(@y+1)
      @real_y = (@y-1)*256
      increase_steps
      @move_failed = false
    else                                    # 不可通行的场合
      check_event_trigger_touch(@x, @y+1)   # 是否触发接触事件
      @move_failed = true
    end
  end
  #--------------------------------------------------------------------------
  # ● 向上移动
  #     turn_ok : 允许当场转向
  #--------------------------------------------------------------------------
  def move_up(turn_ok = true)
    if passable?(@x, @y-1)                  # 可通行的场合
      @y = $game_map.round_y(@y-1)
      @real_y = (@y+1)*256
      increase_steps
      @move_failed = false
    else                                    # 不可通行的场合
      check_event_trigger_touch(@x, @y-1)   # 是否触发接触事件
      @move_failed = true
    end
  end
end
 | 
 |