查看: 2213|回复: 0

[VIPArcher] 【判断当前位置信息】——偷懒的事件脚本

[复制链接]

无限の剣制

梦石
0
星屑
10445
在线时间
5019 小时
注册时间
2013-2-28
回帖
4942

开拓者贵宾

发表于 2014-12-3 22:24:26 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 VIPArcher 于 2014-12-4 17:49 编辑

事件完全可以轻松做出一样的效果,该脚本只是为了偷懒,可以少用几个变量少点几下鼠标罢了。
通常是用在解谜类游戏中做道具然后触发公共事件来判断使用道具时玩家所在的位置信息是否是设定的位置。
具体使用方法看脚本注释,以及自己领悟吧。
[pre lang="ruby" line="1"]#===============================================================================
#  判断当前位置 By:VIPArcher
#===============================================================================
#    脚本来自 - rpg.blue -
#  说明:偷懒用,纯事件完全可以轻松做出相同效果,该脚本只是为了更加偷懒
#    用法是:分歧条件-脚本-
#    player_map_pos?(m, x, y)  #判断玩家当前位置是否为(m, x, y) m 为地图ID
#    player_pos?(x ,y)         #判断玩家当前位置是否为(x,y)
#    event_pos?(x, y)          #判断本事件当前坐标位置是否为(x,y)
#  另外:get_character(param)  是个好东西
#===============================================================================
$VIPArcherScript ||= {};$VIPArcherScript[:location] = 20141203
class Game_Interpreter
  #--------------------------------------------------------------------------
  # ● 判断玩家当前坐标位置是否为(m, x, y)
  #--------------------------------------------------------------------------
  def player_map_pos?(m, x, y)
    $game_map.map_id == m && player_pos?(x, y)
  end
  #--------------------------------------------------------------------------
  # ● 判断玩家当前坐标位置是否为(x,y)
  #--------------------------------------------------------------------------
  def player_pos?(x, y)
    $game_player.pos?(x, y)
  end
  #--------------------------------------------------------------------------
  # ● 判断本事件当前坐标位置是否为(x,y)
  #--------------------------------------------------------------------------
  def event_pos?(x, y)
    $game_map.events[@event_id].pos?(x, y)
  end
end[/pre]

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本发帖返回顶部