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

Project1

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

[有事请教] 请教:如何让敌人死亡一定回合后复活

[复制链接]

Lv2.观梦者

梦石
0
星屑
259
在线时间
32 小时
注册时间
2022-8-9
帖子
8
跳转到指定楼层
1
发表于 2022-8-14 22:00:42 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
5星屑
请问下怎么让敌人在战斗中死亡一定回合后自动复活?

最佳答案

查看完整内容

//============================================================================= // ZombieDeathState.js //============================================================================= /*: * @plugindesc 备注栏写有的敌人在死亡时会附加另一个死亡状态 * @author alexncf125 * * @param New Death State ID * @desc 带有回合数的死亡状态的ID * @default 11 * * @param HP Recovery When Revive * @desc 复 ...

Lv5.捕梦者

梦石
0
星屑
26274
在线时间
5356 小时
注册时间
2016-3-8
帖子
1655
2
发表于 2022-8-14 22:00:43 | 只看该作者
本帖最后由 alexncf125 于 2022-8-15 20:29 编辑

JAVASCRIPT 代码复制
  1. //=============================================================================
  2. // ZombieDeathState.js
  3. //=============================================================================
  4.  
  5. /*:
  6.  * @plugindesc 备注栏写有<zombie:true>的敌人在死亡时会附加另一个死亡状态
  7.  * @author alexncf125
  8.  *
  9.  * @param New Death State ID
  10.  * @desc 带有回合数的死亡状态的ID
  11.  * @default 11
  12.  *
  13.  * @param HP Recovery When Revive
  14.  * @desc 复活时, 恢复HP的百分比(0.5即50%)
  15.  * @default 0.5
  16.  *
  17.  * @help
  18.  *
  19.  * 此插件不提供任何插件指令
  20.  *
  21.  * 使用前先去数据库复制出一个新的死亡状态
  22.  * 之后给这个死亡状态设定自动解除的回合数
  23.  * 最后在「在死亡时会附加这个状态的敌人」的备注栏填写<zombie:true>
  24.  *
  25.  */
  26.  
  27. (function() {
  28.  
  29.     var parameters = PluginManager.parameters('ZombieDeathState');
  30.     var newDeathStateId = Number(parameters['New Death State ID'] || 11);
  31.     var hpRecoveryWhenRevive = Number(parameters['HP Recovery When Revive'] || 0.5);
  32.  
  33.     var _Game_BattlerBase_deathStateId = Game_BattlerBase.prototype.deathStateId
  34.     Game_BattlerBase.prototype.deathStateId = function() {
  35.         if (this.isEnemy() && this.enemy().meta.zombie === "true") {
  36.             return newDeathStateId;
  37.         };
  38.         _Game_BattlerBase_deathStateId.call(this);
  39.     };
  40.  
  41.     var _Game_BattlerBase_revive = Game_BattlerBase.prototype.revive
  42.     Game_BattlerBase.prototype.revive = function() {
  43.         if (this.isEnemy() && this.enemy().meta.zombie === "true" && this._hp === 0) {
  44.             this._hp = Math.floor(this.mhp * hpRecoveryWhenRevive);
  45.             return;
  46.         };
  47.         _Game_BattlerBase_revive.call(this);
  48.     };
  49.  
  50. })();

点评

MZ能用吗?  发表于 2022-12-2 00:19
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2524
在线时间
281 小时
注册时间
2020-4-3
帖子
297

极短22参与

3
发表于 2022-8-15 05:13:19 | 只看该作者
本帖最后由 CopyCindy 于 2022-8-15 05:16 编辑

请问你打算做明雷还是暗雷?
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
259
在线时间
32 小时
注册时间
2022-8-9
帖子
8
4
 楼主| 发表于 2022-8-15 11:45:15 | 只看该作者
CopyCindy 发表于 2022-8-15 05:13
请问你打算做明雷还是暗雷?

暗雷,谢谢
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8064
在线时间
1862 小时
注册时间
2017-10-23
帖子
355
5
发表于 2022-8-15 12:44:06 | 只看该作者
没意义的事情想太多。。。。

<常规无限复活怪物>
要打死母体,否则小怪无限复活





如果你要某个NPC敌人,那么玩家又怎么会先打他?复活意义又何在?
如果你要在一场战斗中搞这么多剧情复活,你怎么保证这个NPC敌人死之前其它敌人没被清光?敌群被清光不就全结束了?还战斗触发什么剧情?
如果只是要演出这个敌人NPC能够复活,那么直接第一场战斗打完 进入演出剧情 说他复活就行,然后新的战斗。

点评

当然是做 "不死系敌人死后X回合自动复活" 的效果啦, 笑  发表于 2022-8-15 15:26
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2524
在线时间
281 小时
注册时间
2020-4-3
帖子
297

极短22参与

6
发表于 2022-8-15 13:20:24 | 只看该作者

那你是不是想做一个类似刷刷的游戏?
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
259
在线时间
32 小时
注册时间
2022-8-9
帖子
8
7
 楼主| 发表于 2022-8-15 16:56:05 | 只看该作者
CopyCindy 发表于 2022-8-15 13:20
那你是不是想做一个类似刷刷的游戏?

就是回合制战斗中"不死系敌人死后X回合自动复活" 的效果
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9852
在线时间
1884 小时
注册时间
2020-1-2
帖子
1089
8
发表于 2022-8-15 20:11:32 | 只看该作者
B站没人气的夏目漠漠,直播间:5378938实用插件教程点击红字传送
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-18 01:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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