本帖最后由 alexncf125 于 2022-8-15 20:29 编辑
//============================================================================= // ZombieDeathState.js //============================================================================= /*: * @plugindesc 备注栏写有<zombie:true>的敌人在死亡时会附加另一个死亡状态 * @author alexncf125 * * @param New Death State ID * @desc 带有回合数的死亡状态的ID * @default 11 * * @param HP Recovery When Revive * @desc 复活时, 恢复HP的百分比(0.5即50%) * @default 0.5 * * @help * * 此插件不提供任何插件指令 * * 使用前先去数据库复制出一个新的死亡状态 * 之后给这个死亡状态设定自动解除的回合数 * 最后在「在死亡时会附加这个状态的敌人」的备注栏填写<zombie:true> * */ (function() { var parameters = PluginManager.parameters('ZombieDeathState'); var newDeathStateId = Number(parameters['New Death State ID'] || 11); var hpRecoveryWhenRevive = Number(parameters['HP Recovery When Revive'] || 0.5); var _Game_BattlerBase_deathStateId = Game_BattlerBase.prototype.deathStateId Game_BattlerBase.prototype.deathStateId = function() { if (this.isEnemy() && this.enemy().meta.zombie === "true") { return newDeathStateId; }; _Game_BattlerBase_deathStateId.call(this); }; var _Game_BattlerBase_revive = Game_BattlerBase.prototype.revive Game_BattlerBase.prototype.revive = function() { if (this.isEnemy() && this.enemy().meta.zombie === "true" && this._hp === 0) { this._hp = Math.floor(this.mhp * hpRecoveryWhenRevive); return; }; _Game_BattlerBase_revive.call(this); }; })();
//=============================================================================
// ZombieDeathState.js
//=============================================================================
/*:
* @plugindesc 备注栏写有<zombie:true>的敌人在死亡时会附加另一个死亡状态
* @author alexncf125
*
* @param New Death State ID
* @desc 带有回合数的死亡状态的ID
* @default 11
*
* @param HP Recovery When Revive
* @desc 复活时, 恢复HP的百分比(0.5即50%)
* @default 0.5
*
* @help
*
* 此插件不提供任何插件指令
*
* 使用前先去数据库复制出一个新的死亡状态
* 之后给这个死亡状态设定自动解除的回合数
* 最后在「在死亡时会附加这个状态的敌人」的备注栏填写<zombie:true>
*
*/
(function() {
var parameters = PluginManager.parameters('ZombieDeathState');
var newDeathStateId = Number(parameters['New Death State ID'] || 11);
var hpRecoveryWhenRevive = Number(parameters['HP Recovery When Revive'] || 0.5);
var _Game_BattlerBase_deathStateId = Game_BattlerBase.prototype.deathStateId
Game_BattlerBase.prototype.deathStateId = function() {
if (this.isEnemy() && this.enemy().meta.zombie === "true") {
return newDeathStateId;
};
_Game_BattlerBase_deathStateId.call(this);
};
var _Game_BattlerBase_revive = Game_BattlerBase.prototype.revive
Game_BattlerBase.prototype.revive = function() {
if (this.isEnemy() && this.enemy().meta.zombie === "true" && this._hp === 0) {
this._hp = Math.floor(this.mhp * hpRecoveryWhenRevive);
return;
};
_Game_BattlerBase_revive.call(this);
};
})();
|