Project1

标题: 【判断当前位置信息】——偷懒的事件脚本 [打印本页]

作者: VIPArcher    时间: 2014-12-3 22:24
标题: 【判断当前位置信息】——偷懒的事件脚本
本帖最后由 VIPArcher 于 2014-12-4 17:49 编辑

事件完全可以轻松做出一样的效果,该脚本只是为了偷懒,可以少用几个变量少点几下鼠标罢了。
通常是用在解谜类游戏中做道具然后触发公共事件来判断使用道具时玩家所在的位置信息是否是设定的位置。
具体使用方法看脚本注释,以及自己领悟吧。
RUBY 代码复制
  1. #===============================================================================
  2. #  判断当前位置 By:VIPArcher
  3. #===============================================================================
  4. #    脚本来自 - rpg.blue -
  5. #  说明:偷懒用,纯事件完全可以轻松做出相同效果,该脚本只是为了更加偷懒
  6. #    用法是:分歧条件-脚本-
  7. #    player_map_pos?(m, x, y)  #判断玩家当前位置是否为(m, x, y) m 为地图ID
  8. #    player_pos?(x ,y)         #判断玩家当前位置是否为(x,y)
  9. #    event_pos?(x, y)          #判断本事件当前坐标位置是否为(x,y)
  10. #  另外:get_character(param)  是个好东西
  11. #===============================================================================
  12. $VIPArcherScript ||= {};$VIPArcherScript[:location] = 20141203
  13. class Game_Interpreter
  14.   #--------------------------------------------------------------------------
  15.   # ● 判断玩家当前坐标位置是否为(m, x, y)
  16.   #--------------------------------------------------------------------------
  17.   def player_map_pos?(m, x, y)
  18.     $game_map.map_id == m && player_pos?(x, y)
  19.   end
  20.   #--------------------------------------------------------------------------
  21.   # ● 判断玩家当前坐标位置是否为(x,y)
  22.   #--------------------------------------------------------------------------
  23.   def player_pos?(x, y)
  24.     $game_player.pos?(x, y)
  25.   end
  26.   #--------------------------------------------------------------------------
  27.   # ● 判断本事件当前坐标位置是否为(x,y)
  28.   #--------------------------------------------------------------------------
  29.   def event_pos?(x, y)
  30.     $game_map.events[@event_id].pos?(x, y)
  31.   end
  32. end





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1