Project1

标题: 求脚本中获得角色在队伍中位置的方法 [打印本页]

作者: taroxd    时间: 2013-9-28 15:17
标题: 求脚本中获得角色在队伍中位置的方法
本帖最后由 taroxd 于 2013-9-28 15:55 编辑

就是一个Actor,调用此方法后返回的是这个Actor在队伍中的位置(1,2,3,4)。

这个方法在RGSS3中有吗?没有的话可不可以帮忙定义一下? 我完全是脚本新手,不太会弄。
作者: 喵呜喵5    时间: 2013-9-28 15:46
本帖最后由 喵呜喵5 于 2013-9-28 15:58 编辑

稍微搜索了一下没有找到,于是就自己写了一个……
  1.   def position(actor_id)
  2.     #获取输入的角色ID在数据库中对应的数据
  3.     actor = $game_actors[actor_id]   
  4.     #判断该数据对应的角色是否在队伍中
  5.     if !$game_party.members.include?(actor)
  6.     #如果不在队伍中,返回0
  7.       return 0   
  8.     else
  9.     #如果在队伍中,返回该角色所在的位置
  10.       return $game_party.members.index(actor)+1
  11.     end
  12.   end
复制代码
============================================================================

更加优雅(蛋疼)的版本……因为如果找不到的话index会返回nil所以代码可以写的更简单一些

RUBY 代码复制
  1. def position(actor_id)   
  2.     actor = $game_actors[actor_id]
  3.     actor = $game_party.members.index(actor)
  4.     return actor+1 if actor
  5.     0
  6. end





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