设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 7460|回复: 11
打印 上一主题 下一主题

[有事请教] 求救!随机选取目标的语法问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
182
在线时间
33 小时
注册时间
2019-2-25
帖子
38
跳转到指定楼层
1
发表于 2019-3-23 15:35:51 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 動感小野菊 于 2019-3-23 15:39 编辑

用了 yep的被动状态 做了个技能
使用后随机对一个目标造成伤害
并且再随机对第二个目标造成伤害

问题来了:
如何让此技能的
第二个随机目标 不会与 第一个随机目标重复到?

也就是有 a . b . c 三个敌人
我放了此技能
随机打到了 a
并再随机打到了 b

如何使其不会发生
随机打到了 a 又再随机打到了 a ?
只会发生
随机打到了 a 那就只能随机再去打 b 或 c 目标
也就是不会再去打到 a

语法上不知道如何修改

这是随机选取第一个目标的语法

var targets = user.opponentsUnit().aliveMembers()
var a = Math.floor(Math.random() * targets.length)

现在要随机选取第二个目标但不与第一个目标重复到
语法该如何修改?

var a = Math.floor(Math.random() * targets.length)



Lv3.寻梦者

梦石
0
星屑
1098
在线时间
168 小时
注册时间
2022-2-14
帖子
107
12
发表于 5 天前 | 只看该作者
動感小野菊 发表于 2019-3-23 18:35
---回合結束時判斷---

唉·你这个直接当做技能用的话也有BUG啊。
首要目标闪避了的话,就不生效了。
有办法解决吗?
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36710
在线时间
10866 小时
注册时间
2009-3-15
帖子
4824
11
发表于 2019-9-1 13:54:43 | 只看该作者
兔子o 发表于 2019-9-1 13:10
这句代码是放到哪里的?

备注吧..要用YEP的插件来着..
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
281
在线时间
113 小时
注册时间
2019-4-11
帖子
57
10
发表于 2019-9-1 13:10:27 | 只看该作者
soulsaga 发表于 2019-3-23 18:51
//隨機選取敵人
var a = Math.floor(Math.random() * targets.length)
var b = Math.floor(Math.random() * ...

这句代码是放到哪里的?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
182
在线时间
33 小时
注册时间
2019-2-25
帖子
38
9
 楼主| 发表于 2019-3-23 19:42:11 | 只看该作者
soulsaga 发表于 2019-3-23 19:30
$gameTemp.reserveCommonEvent(公共事件ID)

咦 竟然成功了...
之前以为这样套用会出错便没使用
感谢大佬!! 获益良多!!

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36710
在线时间
10866 小时
注册时间
2009-3-15
帖子
4824
8
发表于 2019-3-23 19:30:44 | 只看该作者
動感小野菊 发表于 2019-3-23 19:21
有的
下面这个就是
它状态结束时自己就解除

$gameTemp.reserveCommonEvent(公共事件ID)

评分

参与人数 1+1 收起 理由
動感小野菊 + 1 认可答案

查看全部评分

回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
182
在线时间
33 小时
注册时间
2019-2-25
帖子
38
7
 楼主| 发表于 2019-3-23 19:21:47 | 只看该作者
本帖最后由 動感小野菊 于 2019-3-23 19:25 编辑
soulsaga 发表于 2019-3-23 19:18
那你得有状态解除时时机判断..


有的
下面这个就是
它状态结束时自己就解除
只是不知道调用公共事件语法结构怎么写
这样会方便很多
否则在每个敌群页面都要添加这个判断 实在太不便了 @@


---状态解除时判断---
<Custom Remove Effect>
执行某公共事件
</Custom Remove Effect>


回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36710
在线时间
10866 小时
注册时间
2009-3-15
帖子
4824
6
发表于 2019-3-23 19:18:36 | 只看该作者
動感小野菊 发表于 2019-3-23 19:10
成功了!!
太感谢了!!  
另外针对这个问题

那你得有状态解除时时机判断..
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
182
在线时间
33 小时
注册时间
2019-2-25
帖子
38
5
 楼主| 发表于 2019-3-23 19:10:53 | 只看该作者
soulsaga 发表于 2019-3-23 18:51
//隨機選取敵人
var a = Math.floor(Math.random() * targets.length)
var b = Math.floor(Math.random() * ...

成功了!!
太感谢了!!  
另外针对这个问题
再追问一题
如何在此状态解除时
调用某公共事件?
不知能否这样写

---状态解除时判断---
<Custom Remove Effect>
执行某公共事件的语法
</Custom Remove Effect>


回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36710
在线时间
10866 小时
注册时间
2009-3-15
帖子
4824
4
发表于 2019-3-23 18:51:12 | 只看该作者
JAVASCRIPT 代码复制
  1. //隨機選取敵人
  2. var a = Math.floor(Math.random() * targets.length)
  3. var b = Math.floor(Math.random() * targets.length)
  4. for(var i = 0; i < 10; i++){
  5. if (a == b) {b = Math.floor(Math.random() * targets.length)};
  6. }

评分

参与人数 1+1 收起 理由
動感小野菊 + 1 认可答案

查看全部评分

回复 支持 2 反对 0

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-11 19:46

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表