じ☆ve冰风 发表于 2026-7-26 21:16:53

MV Critical Popup

Introduction


        I always thought the little flash of red wasn't enough to signify a critical hit, so I made this!


Features


        - This Plugin will add a "Critical" popup above the damage popup.


        - Customizable through use of the damage.png in the system graphics

https://forums.rpgmakerweb.com/data/attachments/23/23725-33435804cb543d0840ff9d2dac8cf0ae.jpg
Click to expand...




        It uses the damage.png graphic, in the purple section.

https://forums.rpgmakerweb.com/data/attachments/23/23726-083cc3e576bfbcbe14ed70ffc1913b79.jpg
Click to expand...



How to Use
        This Plugin requires YEP_BattleEngineCore.js and must be placed below it on the plugin list.
*** All I did was add a line into a function that he already altered, not sure if this counts as re-posting his work as it's only to make my plugin compatible but i have given credit.

                        /*:
* @plugindesc Adds a Critical Popup.
* @author Jory4001
*
* @help
*
*
* Must be placed below YEP_BattleEngineCore
*
*
*/

// This function taken from Yanfly's YEP_BattleEngineCore.js for compatibility
Sprite_Damage.prototype.setup = function(target) {
    var result = target.shiftDamagePopup();
    if (result.missed || result.evaded) {
      this.createMiss();
    } else if (result.hpAffected) {
      this.createDigits(0, result.hpDamage);
    } else if (target.isAlive() && result.mpDamage !== 0) {
      this.createDigits(2, result.mpDamage);
    }
    if (result.critical) {
      this.createCrit(); // My Added line to Yanfly's Function
      this.setupCriticalEffect();
    }
};

//My Function that draws the Critical graphic
Sprite_Damage.prototype.createCrit = function() {
    var w = this.digitWidth();
    var h = this.digitHeight();
    var sprite = this.createChildSprite();
    sprite.setFrame(4 * w, 4 * h, 5 * w, h);
    sprite.anchor.y = 2;
    sprite.dy = 0;
};               
Click to expand...


Stand Alone Version
        Below is the Stand Alone version, it will create problems if you have Yanfly's YEP_BattleEngineCire plugin.
         

                        /*:
* @plugindesc Adds a Critical Popup.
* @author Jory4001
*
* @help
*
*
* This version is not compatible with Yanfly's
* YEP_BattleEngineCore.js Please get the compatible
* version if you are using Yanfly.
*
*/



Sprite_Damage.prototype.setup = function(target) {
    var result = target.result();
    console.log("NewLog");
    if (result.missed || result.evaded) {
      this.createMiss();
    } else if (result.hpAffected) {
      this.createDigits(0, result.hpDamage);
    } else if (target.isAlive() && result.mpDamage !== 0) {
      this.createDigits(2, result.mpDamage);
    }
    if (result.critical) {
      this.createCrit();
      this.setupCriticalEffect();
    }
};

Sprite_Damage.prototype.createCrit = function() {
    var w = this.digitWidth();
    var h = this.digitHeight();
    var sprite = this.createChildSprite();
    sprite.setFrame(4 * w, 4 * h, 5 * w, h);
    sprite.anchor.y = 2;
    sprite.dy = 0;
};               
Click to expand...


Credit and Thanks
        - Yanfly for making his already awesome Plugins.

Author's Notes


        - I might add plugin parameters that alter the positioning of the Critical text


          Usage


        - Stand Alone version is free for use with non-commercial and commercial games, credit is nice but not needed.


        - Yanfly Compatible version follows Yanfly's Usage rules Here


本贴来自国际rpgmaker官方论坛作者:Jory4001处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/mv-critical-popup.63172/
页: [1]
查看完整版本: MV Critical Popup