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

Project1

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

[已经过期] 求助,判断是否装备盾牌的语句怎么写

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
13 小时
注册时间
2017-3-29
帖子
5
跳转到指定楼层
1
发表于 2017-4-15 16:35:34 手机端发表。 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
如题,判断装备类型,让技能可用

点评

这个贴这么久都没人回答么!  发表于 2017-5-4 15:15

Lv1.梦旅人

梦石
0
星屑
216
在线时间
154 小时
注册时间
2017-2-27
帖子
167

开拓者

2
发表于 2017-4-22 05:43:22 | 只看该作者
你给盾牌添加技能岂不是易而快哉
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
112
在线时间
376 小时
注册时间
2015-1-26
帖子
203
3
发表于 2017-5-4 14:19:03 | 只看该作者
Ajucaqiu 发表于 2017-4-22 05:43
你给盾牌添加技能岂不是易而快哉

如果要用技能学习之类系统就不能这样做了呀
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
31961
在线时间
5081 小时
注册时间
2012-11-19
帖子
4877

开拓者

4
发表于 2017-5-4 14:44:28 | 只看该作者
本帖最后由 芯☆淡茹水 于 2017-5-4 16:27 编辑
  1. $gameActors.actor(角色id).hasArmor($dataArmors[防具ID]);
复制代码

默认脚本里面貌似没有判断防具类型的,只有判断是否装备某个防具。


或者可以加一个方法:
JAVASCRIPT 代码复制
  1. Game_Actor.prototype.hasArmorEtype = function(etypeId) {
  2.     var data = this.armors().filter(function(item) {
  3.         return item && item.etypeId === etypeId;});
  4.     return data.length > 0 ;
  5. };


那么判断就写:
JAVASCRIPT 代码复制
  1. $gameActors.actor(角色id).hasArmorEtype(2);
  2. // 试了一下,盾是 2 ; 头部是 3; 身体是 4; 饰件是 5。MV的 itypeId, wtypeId, atypeId, etypeId, 真让人头疼!
  3. // 这也可以用来判断是否装备了衣服,帽子什么的。


已经试过了,看来以前还是搞错了一点东西。

在数据库设置了1号角色有盾牌,2号角色没有,然后 事件->脚本判断:



显示结果



xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
112
在线时间
376 小时
注册时间
2015-1-26
帖子
203
5
发表于 2017-5-4 15:52:36 | 只看该作者
有个变通的方法:

用YEP.13 – Auto Passive States给所有盾牌附加一个叫做“装备盾”的state,然后在技能判断里检测角色身上是否有这个state
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
342
在线时间
377 小时
注册时间
2013-1-30
帖子
219
6
发表于 2017-5-20 18:25:10 | 只看该作者
raketenfaust02 发表于 2017-5-4 15:52
有个变通的方法:

用YEP.13 – Auto Passive States给所有盾牌附加一个叫做“装备盾”的state,然后在技能 ...

有个更变通的方法:
让所有盾牌都免疫某个状态,然后再给所有角色都赋予上这个状态,没中这个状态的角色就装备了盾牌
这样子连插件都不需要用到了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
112
在线时间
376 小时
注册时间
2015-1-26
帖子
203
7
发表于 2017-5-20 23:54:38 | 只看该作者
qknight 发表于 2017-5-20 18:25
有个更变通的方法:
让所有盾牌都免疫某个状态,然后再给所有角色都赋予上这个状态,没中这个状态的角色 ...

可是如果没有插件,装上盾再卸下来之后,用什么方法把这个状态补回角色身上呢?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
342
在线时间
377 小时
注册时间
2013-1-30
帖子
219
8
发表于 2017-5-21 12:37:43 | 只看该作者
raketenfaust02 发表于 2017-5-20 23:54
可是如果没有插件,装上盾再卸下来之后,用什么方法把这个状态补回角色身上呢? ...

如果是因为装备耐久度等插件的原因,导致战斗中盾牌被打烂的话,只要每回合结束时赋予全队那个盾牌免疫的状态,就能还算及时的分歧谁没有了盾牌。

如果是菜单界面使用需要盾牌的技能的话,那么这个技能的施放目标肯定是队友,只要在公共事件中再赋予全队一次盾牌免疫状态,就可以分歧谁有盾牌了。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-29 10:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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