Project1

标题: 【原创】口袋妖怪式 能力升降 [打印本页]

作者: 清澈淌漾    时间: 2021-5-31 17:38
标题: 【原创】口袋妖怪式 能力升降
  重新定义Buff,现在能力提升为战斗内永续,编辑器内的回合数变为等级提升量。
  HP MP提升无效。其他属性正负6级  (Base_Capa)
  基数为Base_Upg (负数从2/2-2/8 正数从2/2-8/2)


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




JAVASCRIPT 代码复制
  1. /**能力提升上下限改变*/
  2.     /**
  3.      *原生只能提高/降低2级  这两个方法return 改变即可
  4.      **/
  5.     Game_BattlerBase.prototype.isMaxBuffAffected = function(paramId) {return this._buffs[paramId] >= Base_Capa;};
  6.     Game_BattlerBase.prototype.isMaxDebuffAffected = function(paramId) {return this._buffs[paramId] <= -1*Base_Capa;};



JAVASCRIPT 代码复制
  1. /**添加正面效果*/
  2.     /**
  3.      * 原来第二个参数是truns 回合数
  4.      * 我将其作用变为等级提升,回合默认为1  ,配合下面的清空
  5.      * 做到能力提升在战斗能永续
  6.      * */
  7.     Game_Battler.prototype.addBuff = function(paramId, lvl) {
  8.         if (this.isAlive()) {
  9.             if(paramId>1) {this.increaseBuff(paramId,lvl);this._result.pushAddedBuff(paramId);}
  10.             else this._buffs[paramId] += lvl
  11.             this.overwriteBuffTurns(paramId, 1);
  12.             this.refresh();
  13.         }
  14.     };
  15.     Game_BattlerBase.prototype.increaseBuff = function(paramId,lvl) {if (!this.isMaxBuffAffected(paramId)) {this._buffs[paramId]+=lvl;if(this._buffs[paramId]>Base_Capa) this._buffs[paramId]=Base_Capa}};
  16.  
  17.     /**添加减益效果*/
  18.     Game_Battler.prototype.addDebuff = function(paramId, lvl) {
  19.         if (this.isAlive()) {
  20.             if(paramId>1) {this.decreaseBuff(paramId,lvl);this._result.pushAddedDebuff(paramId);}
  21.             else {this._buffs[paramId] -= lvl; if (this._buffs[paramId]<0) this._buffs[paramId] =0}
  22.             this.overwriteBuffTurns(paramId, 1);
  23.             this.refresh();
  24.         }
  25.     };
  26.     Game_BattlerBase.prototype.decreaseBuff = function(paramId,lvl) {if (!this.isMaxDebuffAffected(paramId)) {this._buffs[paramId]-=lvl;if(this._buffs[paramId]<-1*Base_Capa) this._buffs[paramId]=-1*Base_Capa}};


JAVASCRIPT 代码复制
  1. /**基础能力提升变为永续*/
  2.     /**
  3.      *将此方法清空
  4.      **/
  5.     Game_BattlerBase.prototype.updateBuffTurns = function() {};
  6.  
  7.  
  8.     /**修改状态图标*/
  9.     /**原生MV只有2级图标  这里我处理了一下 让高于2的显示2级*/
  10.     Game_BattlerBase.prototype.buffIconIndex = function(buffLevel, paramId) {
  11.         if (buffLevel > 0) return Game_BattlerBase.ICON_BUFF_START + (buffLevel>(paramId>1?Base_Upg/2:300)?1:0) * 8 + paramId;
  12.         else if (buffLevel < 0) return Game_BattlerBase.ICON_DEBUFF_START + (-1*buffLevel>Base_Upg/2?1:0) * 8 + paramId;
  13.     };

Limpid_PeculiarRate.zip

1.52 KB, 下载次数: 36


作者: ww984957002    时间: 2021-6-1 20:28
支持支持!!!
作者: mengjiyao122    时间: 2021-8-18 16:30
多谢分享,收藏一下。
作者: 超凡入梦    时间: 2021-9-3 22:35
正在做这个类型的   支持




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1