| 
本帖最后由 RaidenInfinity 于 2017-10-28 09:54 编辑
x
加入我们,或者,欢迎回来。您需要 登录 才可以下载或查看,没有帐号?注册会员  
 
 #============================================================================== # ★ 冰面滑动 #------------------------------------------------------------------------------ # 作者:protosssonny #-------------------------------------------------------------------------- # 请在下面设定冰面图块的ID   Ice_Tile = [1537,1538,1539] 
 # 可以在事件脚本中输入以下命令来查看当前角色脚下的图块ID,以便确定冰面图块: #     $game_map.show_tile_id #============================================================================== 
 #============================================================================== # ■ Game_Map #------------------------------------------------------------------------------ #  处理地图的类。包含卷动以及可以通行的判断功能。本类的实例请参考 $game_map 。 #============================================================================== 
 class Game_Map     #--------------------------------------------------------------------------   # ● 判断冰面   #     x : X 坐标   #     y : Y 坐标   #--------------------------------------------------------------------------   def ice?(x, y)     return false unless valid?(x, y)     return true if Ice_Tile.include?($game_map.data[x, y, 0])   end     #--------------------------------------------------------------------------   # ● 显示当前图块ID (测试用的脚本命令)   #--------------------------------------------------------------------------   def show_tile_id     p $game_map.data[$game_player.x, $game_player.y, 0]   end   end   #============================================================================== # ■ Game_Player #------------------------------------------------------------------------------ #  处理主角的类。事件启动的判定、以及地图的滚动等功能。 # 本类的实例请参考 $game_player。 #============================================================================== 
 class Game_Player < Game_Character   #--------------------------------------------------------------------------   # ● 更新画面   #--------------------------------------------------------------------------   def update     last_real_x = @real_x     last_real_y = @real_y     last_moving = moving?     if $game_map.ice?(@x, @y) # 在冰上移动       @walk_anime = false     # 固定朝向       move_on_ice      else       @walk_anime = true      # 解除固定朝向     end       move_by_input     super     update_scroll(last_real_x, last_real_y)     update_vehicle     update_nonmoving(last_moving)   end   #--------------------------------------------------------------------------   # ● 滑行移动处理   #--------------------------------------------------------------------------   def move_on_ice     return unless movable?     return if $game_map.interpreter.running?     return if @move_failed     case self.direction     when 2       move_down     when 4       move_left     when 6       move_right      when 8       move_up      end   end   #--------------------------------------------------------------------------   # ● 判断是否奔跑中   #--------------------------------------------------------------------------   def dash?     return false if @move_route_forcing     return false if $game_map.disable_dash?     return false if in_vehicle?     return Input.press?(Input::A) unless $game_map.ice?(@x, @y) #加本行即可   end end   
 这个是VX的脚本,在VA里使用后出BUG,本人对脚本不是很懂,望高人指教,谢谢! 
 |