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

Project1

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

[交流讨论] 【记录贴】状态、BUFF和一些技能效果

[复制链接]

Lv2.观梦者

梦石
0
星屑
343
在线时间
36 小时
注册时间
2022-4-17
帖子
30
跳转到指定楼层
1
发表于 2022-11-26 10:37:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
自己想要很多效果,当时一直找都找不到例子,所以现在自己在这里立一个帖子,记录一些我写的东西,虽然不一定有用,但是万一有人需要呢,对吧,嘿嘿嘿!

评分

参与人数 3+3 收起 理由
woliebe + 1
Abyssstew + 1 精品文章
liz_fly + 1 塞糖

查看全部评分

Lv2.观梦者

梦石
0
星屑
343
在线时间
36 小时
注册时间
2022-4-17
帖子
30
2
 楼主| 发表于 2022-11-26 10:45:39 | 只看该作者
本帖最后由 红手湘潭玉簟秋 于 2022-11-26 11:01 编辑

叠加伤害类的buff:例如毒素 需要”状态核心“插件,原名YEP_BuffStatesCore
此状态可以设定为武器或者角色或者装备的攻击附加状态当中
//定义毒素这个状态每次攻击增加2
<Custom Apply Effect>
target._du = target._du || 0;                     //target._du这个可以自行修改,改成自己能力的变量
target._du += 2;
</Custom Apply Effect>

//每回合毒素减少1层
<Custom Regenerate Effect>
if (target._du >= 0) {
  target._du -= 1;
  target.setStateCounter(34, target._du);    //显示层数计数,34是状态编号, target._du是调用了之前定义的变量,需要跟随最开始的变量名进行修改
}
</Custom Regenerate Effect>

//计算每次行动后的血量减少
<Custom Action Start Effect>
var damage = Math.floor(target._du);        //定义一个伤害变量 并进行计算
target.gainHp(-damage);                          //进行血量的增减,示例中是减少
target.startDamagePopup();                     //伤害弹出
</Custom Action Start Effect>

//状态结束后将毒素变量清零
<Custom Leave Effect>
target._du = 0;
</Custom Leave Effect>
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
343
在线时间
36 小时
注册时间
2022-4-17
帖子
30
3
 楼主| 发表于 2022-11-26 11:08:32 | 只看该作者
为角色添加专属武器,需要”状态核心“插件,原名YEP_BuffStatesCore
需要”自动添加被动“插件,原名YEP_AutoPassiveStates

//下文中的Weapon和Weapons可以替换为Armor和Armors,其中Weapon代表武器,Armor代表防具,
//2替换为武器\防具的编号
//11替换为专属武器对应附加的状态编号
<Custom Battle Effect>
if (user.hasWeapon($dataWeapons[2])) {
origin.addState(11);
}
</Custom Battle Effect>

点评

如果2号角色出现在战斗中会获得XX状态,应该怎么写?  发表于 2022-11-27 18:47
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1256
在线时间
96 小时
注册时间
2021-12-12
帖子
12
4
发表于 2022-11-27 14:18:21 | 只看该作者
支持楼主
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
343
在线时间
36 小时
注册时间
2022-4-17
帖子
30
5
 楼主| 发表于 2022-11-28 08:45:59 | 只看该作者
本帖最后由 红手湘潭玉簟秋 于 2022-11-28 08:49 编辑

加成固定伤害的装备如何制作,需要”状态核心“插件,原名YEP_BuffStatesCore

<Custom Confirm Effect>
//如果造成了伤害,并且伤害(<0代表治疗,>0代表伤害,如果你非要等于0.....你八成是......)
if (this.isHpEffect() && value < 0) {
//定义一个变量,用来确定增减固定伤害的装备或者技能
  var zhiliao = 100;
//这个例子是个加治理量的
//因此以下公式用的是-如果是加固定伤害的就用+,记得将zhiliao替换为你定义的变量名称
  value -= Math.round(zhiliao);
}
</Custom Confirm Effect>

//最后补充一点,这个代码是写在状态里的,需要你装备自带这个状态,需要“自动状态插件”,原名YEP_AutoPassiveStates
//需要在装备里写
<Passive State: 状态编号>
//一定要记得把状态编号换了......
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
343
在线时间
36 小时
注册时间
2022-4-17
帖子
30
6
 楼主| 发表于 2022-11-28 09:11:34 | 只看该作者
红手湘潭玉簟秋 发表于 2022-11-26 11:08
为角色添加专属武器,需要”状态核心“插件,原名YEP_BuffStatesCore
需要”自动添加被动“插件,原名YEP_A ...

每太听明白意思,意思是,只判断这一个人还是将多个人一起判断,例如羁绊这样?
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1483
在线时间
543 小时
注册时间
2010-10-16
帖子
103
7
发表于 2022-11-28 09:45:35 | 只看该作者
红手湘潭玉簟秋 发表于 2022-11-28 09:11
每太听明白意思,意思是,只判断这一个人还是将多个人一起判断,例如羁绊这样? ...

就是羁绊,如果2号和3号角色或者更多同时在场时,获得XX状态,这个应该怎么实现?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
343
在线时间
36 小时
注册时间
2022-4-17
帖子
30
8
 楼主| 发表于 2022-11-28 13:37:01 | 只看该作者
本帖最后由 红手湘潭玉簟秋 于 2022-11-28 15:14 编辑
fnhjjrrk 发表于 2022-11-28 09:45
就是羁绊,如果2号和3号角色或者更多同时在场时,获得XX状态,这个应该怎么实现? ...


//那我简单举个例子
角色2
//以下的开头代表战斗开始进行的处理
<Custom Battle Effect>
//将变量681,设置为1
$gameVariables.setValue(681, 1);
</Custom battle Effect>
角色3
//以下的开头代表战斗开始进行的处理
<Custom Battle Effect>
//将变量682,设置为1
$gameVariables.setValue(681, 1);
</Custom battle Effect>


//-------------以下全写在一个状态里--------------
//有相同羁绊的角色都需要自带以下被动状态
//在角色哪里输入<Passive State: 状态编号>    需要”自动添加被动“插件,原名YEP_AutoPassiveStates
//以下为每回合判定的效果
<Custom Turn Start Effect>
//如果变量681和682都等于1的情况下
//可以考虑继续&& 更多的角色,就是一个角色一个变量就行,或者开关也行不过开关一般用的敌方比较多,变量可以额外定义,所以我喜欢用变量代替角色
if (($gameVariables.value(681)==1) && ($gameVariables.value(682)==1)) {
//添加状态47(可自行修改)
target.addState(47);
}
</Custom Turn Start Effect>


//战斗胜利后将两个变量归零,作用是用来检测角色有没有离开队伍
<Custom Victory Effect>
$gameVariables.setValue(681, 0);
$gameVariables.setValue(682, 0);
</Custom Victory Effect>
//同上一个,不过这个是逃跑归零的
<Custom Escape Effect>
$gameVariables.setValue(681, 0);
$gameVariables.setValue(682, 0);
</Custom Escape Effect>

点评

非常有用,感谢大佬帮忙。  发表于 2022-11-28 14:20
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
343
在线时间
36 小时
注册时间
2022-4-17
帖子
30
9
 楼主| 发表于 2022-12-7 12:10:40 | 只看该作者
可以复活一次的装备如何制作,需要”状态核心“插件,原名YEP_BuffStatesCore
                                             需要“武器释放”插件,原名YEP_WeaponUnleash

//将以下程序输入状态1(也就是死亡状态)中
<Custom Apply Effect>
//判断死亡状态的角色是否是玩家
  if(target.isActor()) {
//判断变量681是否等于1
  if($gameVariables.value(681)==1) {
//如果成立,则变量681设定为0
     $gameVariables.setValue(681, 0);
//回复生命999,可以给更多
     target.gainHp(999);
//播放动画49(rmmv自带的复活动画)
     target.startAnimation(49, 0, 0);
//回复数值弹出
     target.startDamagePopup();
}
}
</Custom Apply Effect>

//以下输入在一个空状态中
//战斗开始时
<Custom Battle Effect>
//将变量681设定为1
$gameVariables.setValue(681, 1);
</Custom Battle Effect>

//以下输入在武器中
<Passive State: 空状态的编号>

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
343
在线时间
36 小时
注册时间
2022-4-17
帖子
30
10
 楼主| 发表于 2022-12-7 14:31:11 | 只看该作者
一定回合数后给自己添加一个状态,需要”状态核心“插件,原名YEP_BuffStatesCore
\\为装备\角色添加以下这条代码,X替换为状态编号
<Passive State: X>

\\以下部分添加到X号状态中
\\战斗开始时
<Custom Battle Effect>
\\设定一个角色的冷却值(3可以替换为几回合加状态)
user._Cooldown = 3;
</Custom Battle Effect>
\\每回合循环发生
<Custom Regenerate Effect>
user._Cooldown = user._Cooldown || 0;
\\如果冷却时间大于0
if (user._Cooldown > 0) {
\\冷却时间减少1
  user._Cooldown -= 1;
如果冷却时间小于或等于0
if (user._Cooldown <= 0) {
\\播放35号动画,当然你可以任选
  user.startAnimation(35);
\\添加Y状态Y为状态编号,不是这个状态的编号,是你想要固定回合刷新的状态
  user.addState(Y);
\\重新设定冷却时间为3(或者你想要的数字)
  user._Cooldown = 3;
  }
}
</Custom Regenerate Effect>
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-29 16:40

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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