查看: 2343|回复: 2

[有事请教] 如何用脚本实现批量移除编号在1001以后的角色的效果?

[复制链接]
梦石
0
星屑
148
在线时间
13 小时
注册时间
2020-5-5
回帖
5
发表于 2020-5-6 11:00:38 | 显示全部楼层 |阅读模式

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

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

×
是这样,用了某个复制角色的插件(指SRD),但是,复制出来的角色编号是在1001,并且每复制一个就会占用一个新的编号,就1002,1003,1004……这可麻烦了,本来是拿来做召唤技能的,但是这下每次移除都要写一次
$gameParty.removeActor(1001)
当然,如果每次都能批量移除就完全不用担心了……
但是……
$gameParty.removeActor(1001,1002,1003,1004。。。2000。。。3999.。。114514)这种情况怎么想都很不妙啊喂!
于是想到用数组
$arr = (1001,1999,1)
$gameParty.removeActor($arr)
不过……这次是哪里出问题了(泪)
之前账号丢了,残念呀
梦石
0
星屑
148
在线时间
13 小时
注册时间
2020-5-5
回帖
5
 楼主| 发表于 2020-5-6 11:01:59 | 显示全部楼层
$arr = (1001,1999,1)
$gameParty.removeActor($arr)
在战斗中实测是完全没有任何效果的,真是令人脸扁
之前账号丢了,残念呀
回复

使用道具 举报

梦石
0
星屑
646
在线时间
120 小时
注册时间
2019-12-7
回帖
58
发表于 2020-5-6 11:22:58 | 显示全部楼层
首先数组是[ ]
然后removeActor没有以数组作为参数的,只能用单个actor的id

你的情况,简单来说用循环遍历
  1. for (var id = 1001; id < 最大id; id++) {
  2.      $gameParty.removeActor(id);
  3. }
复制代码

不过这种方式比较浪费效率,如果你能从某个地方获取到你要删除的所有id并组成数组的话,可以这么写
  1. for (var id in 数组) {
  2.     $gameParty.removeActor(id);
  3. }
复制代码
新账号chyj4747,这个账号是我刚来论坛时随便填的,当时没想着要发帖
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部