查看: 2375|回复: 4

[已经解决] 关于切换副本人物脚本

[复制链接]
梦石
0
星屑
871
在线时间
78 小时
注册时间
2022-3-19
回帖
40
发表于 2022-4-29 21:56:16 | 显示全部楼层 |阅读模式

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

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

×
#  记录队员ID后切换副本人物(单个人物)
#  事件里调用 $game_party.remove_all_actor(id)
#    id:角色的数据库id
class Game_Party
  def remove_all_actor(id)
    $game_variables[510] = $game_party.members.size
    for i in 1..$game_variables[510]
      $game_variables[i+510] = $game_party.members[i-1].id
    end
    @actors = [id]
    $game_player.refresh
  end
end

这个脚本只能实现切换成单个人物的效果,输入多个id就会出错,请问能不能改成无论切换成单个或者多个人物都可以的效果,虽然在编辑事件时让其余人物入队就能达到一样的效果,但我还是想学习一下。而且能不能改成输入角色名字呢?ID不太好记……
梦石
0
星屑
29901
在线时间
5734 小时
注册时间
2016-3-8
回帖
1653
发表于 2022-4-30 01:31:01 | 显示全部楼层
@actors = [id]改成@actors = id后

调用时使用
$game_party.remove_all_actor([5])
$game_party.remove_all_actor([6,7,8])
回复

使用道具 举报

梦石
1
星屑
23236
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2022-4-30 01:32:26 | 显示全部楼层
第七行的
  1. @actors = [id]
复制代码
改成
  1. @actors = id
复制代码


然后使用这个脚本的方式从
  1. $game_party.remove_all_actor(id)
复制代码
改成
  1. $game_party.remove_all_actor([id1, id2, id3])
复制代码

评分

参与人数 1星屑 +50 收起 理由
alexncf125 + 50 撞车了...

查看全部评分

回复

使用道具 举报

梦石
10
星屑
39550
在线时间
1919 小时
注册时间
2010-11-14
回帖
3214

R考场第七期纪念奖

发表于 2022-4-30 02:17:19 | 显示全部楼层
[pre lang="ruby"]
class Game_Party
  def replace(*array)
    array.flatten!
    return if array.empty?
    $game_party.members.each_with_index do |m, i|
      $game_variables[i+510] = m.id
    end
    @actors = array
    $game_player.refresh
    $game_map.need_refresh = true
  end
  
  def replace_by_names(*array)
    array.flatten!
    ids = array.map do |name|
      actor = $data_actors.find { |a| a && a.name == name }
      actor ? actor.id : msgbox("数据库中不存在角色'#{name}'")
    end.compact
    replace(ids)
  end
end
[/pre]

$game_party.replace(1, 2, 3) # 将队伍成员替换为1 2 3号角色
$game_party.replace_by_names("艾里克", "娜塔丽") # 将队伍成员替换为艾里克与娜塔丽。如果有多个同名角色,只取第一个。

评分

参与人数 1星屑 +200 收起 理由
alexncf125 + 200 精品文章

查看全部评分

用头画头像,用脚写脚本
回复

使用道具 举报

梦石
0
星屑
871
在线时间
78 小时
注册时间
2022-3-19
回帖
40
 楼主| 发表于 2022-4-30 13:28:09 | 显示全部楼层
好哦,谢谢几位大佬!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

在本版发帖返回顶部