じ☆ve冰风 发表于 2024-3-2 13:57:13

【原创】口袋妖怪式 能力升降

重新定义Buff,现在能力提升为战斗内永续,编辑器内的回合数变为等级提升量。
HP MP提升无效。其他属性正负6级(Base_Capa)
基数为Base_Upg (负数从2/2-2/8 正数从2/2-8/2)


JAVASCRIPT 代码
/**基础buff加成算法*/
    /**
   * 仿造口袋妖怪
   * 大于0 为(2+x)/2   1级 *1.5   2级*26级 *4
   * 小于0 为 2/(x+2)    1级 *0.66    2级*0.5   6级*0.25
   * */
    Game_BattlerBase.prototype.paramBuffRate = function(paramId){
      returnthis._buffs > 0 ? (Base_Upg + this._buffs)/ Base_Upg :Base_Upg/(Base_Upg+ Math.abs(this._buffs))};




JAVASCRIPT 代码
/**能力提升上下限改变*/
    /**
   *原生只能提高/降低2级这两个方法return 改变即可
   **/
    Game_BattlerBase.prototype.isMaxBuffAffected = function(paramId){returnthis._buffs >= Base_Capa;};
    Game_BattlerBase.prototype.isMaxDebuffAffected = function(paramId){returnthis._buffs 1){this.increaseBuff(paramId,lvl);this._result.pushAddedBuff(paramId);}
            elsethis._buffs += lvl
            this.overwriteBuffTurns(paramId, 1);
            this.refresh();
      }
    };
    Game_BattlerBase.prototype.increaseBuff = function(paramId,lvl){if(!this.isMaxBuffAffected(paramId)){this._buffs+=lvl;if(this._buffs>Base_Capa)this._buffs=Base_Capa}};

    /**添加减益效果*/
    Game_Battler.prototype.addDebuff = function(paramId, lvl){
      if(this.isAlive()){
            if(paramId>1){this.decreaseBuff(paramId,lvl);this._result.pushAddedDebuff(paramId);}
            else{this._buffs -= lvl; if(this._buffs(paramId>1?Base_Upg/2:300)?1:0) * 8 + paramId;
      elseif(buffLevel < 0)return Game_BattlerBase.ICON_DEBUFF_START + (-1*buffLevel>Base_Upg/2?1:0) * 8 + paramId;
    };


             本帖来自P1论坛作者清澈淌漾,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=485848若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页: [1]
查看完整版本: 【原创】口袋妖怪式 能力升降