查看: 94|回复: 0

[转载发布] 小白求助,添加的状态,战后仍然存在,无法取消

[复制链接]
  • TA的每日心情
    开心
    2024-5-10 09:55
  • 签到天数: 37 天

    连续签到: 3 天

    [LV.5]常住居民I

    2028

    主题

    32

    回帖

    7260

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    0
    卡币
    5184
    OK点
    16
    积分
    7260
    发表于 同元九百九十六年三月十一日(春) | 显示全部楼层 |阅读模式

    可以了
    JAVASCRIPT 代码
    1. //==========================================
    2. // RPG Maker MZ - Actions
    3. //==========================================
    4. /*:
    5. * @target MZ
    6. * @plugindesc
    7. * @author
    8. * @help
    9. *------------------------------------------
    10. * @param addStates
    11. * @text 使用技能击败敌人添加状态
    12. * @type struct[]
    13. * @default []
    14. * @desc
    15. */
    16. /*~struct~addStates:
    17. * @param skillId
    18. * @text 技能ID
    19. * @type skill
    20. * @default 0
    21. * @desc
    22. *
    23. * @param stateId
    24. * @text 状态ID
    25. * @type state
    26. * @default 0
    27. * @desc
    28. *
    29. */
    30. (() => {
    31.         'use strict';
    32.         const pluginName = "Actions";
    33.         const parameters = PluginManager.parameters(pluginName);
    34.         const realparameters =JSON.parse(parameters['addStates']);
    35.                 //读取参数        
    36.         if(realparameters){
    37.             for(let i = 0;i < realparameters.length;i++){
    38.                 realparameters[i] =JSON.parse(realparameters[i]);
    39.             }
    40.         };
    41.         // 表现倒下(死亡后的消失效果)
    42.         const _Game_Enemy_performCollapse =Game_Enemy.prototype.performCollapse;
    43.         Game_Enemy.prototype.performCollapse = function() {
    44.             Game_Battler.prototype.performCollapse.call(this);
    45.             switch (this.collapseType()) {
    46.                 case 0:
    47.                                 //取得最后杀敌角色使用技能ID
    48.                                 const lastSkill = BattleManager._subject._lastBattleSkill._itemId;
    49.                                 for(let i = 0;i < realparameters.length;i++){
    50.                                         if (lastSkill == realparameters[i].skillId) {
    51.                                         //添加状态
    52.                                     BattleManager._subject.addState(parseInt(realparameters[i].stateId));
    53.                                         //强制行动
    54.                                         //BattleManager._subject.forceAction(parseInt(realparameters[i].skillId),-1);
    55.                                         }
    56.                                 }
    57.                     this.requestEffect("collapse");
    58.                     SoundManager.playEnemyCollapse();
    59.                     break;
    60.                 case 1:
    61.                     this.requestEffect("bossCollapse");
    62.                     SoundManager.playBossCollapse1();
    63.                     break;
    64.                 case 2:
    65.                     this.requestEffect("instantCollapse");
    66.                     break;
    67.             }
    68.         };
    69. })();
    复制代码

                 本帖来自P1论坛作者gp371322,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=486914  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
    天天去同能,天天有童年!
    回复 论坛版权

    使用道具 举报

    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2024-5-20 17:51 , Processed in 0.047010 second(s), 41 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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