| 
 
| 赞 | 204 |  
| VIP | 13 |  
| 好人卡 | 7 |  
| 积分 | 122 |  
| 经验 | 52899 |  
| 最后登录 | 2021-6-29 |  
| 在线时间 | 4435 小时 |  
 Lv4.逐梦者 
	梦石0 星屑12157 在线时间4435 小时注册时间2014-4-11帖子5955 
 | 
| 你觉得这个走路方式怎么样。跳上箱子我还不知道怎么写。 
 
 
 #==============================================================================# ■ Game_Character (接近专定义)#------------------------------------------------------------------------------#  处理角色的类。本类作为 Game_Player 类与 Game_Event# 类的超级类使用。#==============================================================================# 使用方法:# 在设置事件移动那里改为自定义,路线为:toward_player_add(x范围,y范围)#==============================================================================class Game_Characterdef toward_player_add(x = 1,y = 1) # 求得与主角坐标的差sx = (@x - $game_player.x).abssy = (@y - $game_player.y).absif sx <= x and sy <= y  unless passable?(@x, @y, 2)    if passable?(@x, @y, 4)      move_left    end    if passable?(@x, @y, 6)      move_right    end    if passable?(@x, @y, 8)      move_up    end  end  unless passable?(@x, @y, 4)      if passable?(@x, @y, 2)      move_down    end    if passable?(@x, @y, 6)      move_right    end    if passable?(@x, @y, 8)      move_up    end  end      unless passable?(@x, @y, 6)    if passable?(@x, @y, 2)      move_down    end     if passable?(@x, @y, 4)      move_left    end    if passable?(@x, @y, 8)      move_up    end  end      unless passable?(@x, @y, 8)    if passable?(@x, @y, 2)      move_down    end     if passable?(@x, @y, 4)      move_left    end    if passable?(@x, @y, 6)      move_right    end    endmove_away_from_player elsemove_randomendendend
#============================================================================== 
# ■ Game_Character (接近专定义) 
#------------------------------------------------------------------------------ 
#  处理角色的类。本类作为 Game_Player 类与 Game_Event 
# 类的超级类使用。 
#============================================================================== 
# 使用方法: 
# 在设置事件移动那里改为自定义,路线为:toward_player_add(x范围,y范围) 
#============================================================================== 
class Game_Character 
def toward_player_add(x = 1,y = 1)  
# 求得与主角坐标的差 
sx = (@x - $game_player.x).abs 
sy = (@y - $game_player.y).abs 
if sx <= x and sy <= y 
  unless passable?(@x, @y, 2) 
    if passable?(@x, @y, 4) 
      move_left 
    end 
    if passable?(@x, @y, 6) 
      move_right 
    end 
    if passable?(@x, @y, 8) 
      move_up 
    end 
  end 
  unless passable?(@x, @y, 4) 
      if passable?(@x, @y, 2) 
      move_down 
    end 
    if passable?(@x, @y, 6) 
      move_right 
    end 
    if passable?(@x, @y, 8) 
      move_up 
    end 
  end 
      unless passable?(@x, @y, 6) 
    if passable?(@x, @y, 2) 
      move_down 
    end 
  
    if passable?(@x, @y, 4) 
      move_left 
    end 
    if passable?(@x, @y, 8) 
      move_up 
    end 
  end 
      unless passable?(@x, @y, 8) 
    if passable?(@x, @y, 2) 
      move_down 
    end 
  
    if passable?(@x, @y, 4) 
      move_left 
    end 
    if passable?(@x, @y, 6) 
      move_right 
    end 
    end 
move_away_from_player 
  
else 
move_random 
end 
end 
end 
 | 
 评分
查看全部评分
 |