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

【原创 代码?教学】受击TP获取

我会陆续把自己适用的一些战斗脚本封成插件,并附上代码解析。
一方面整理找BUG 一方面为想深入脚本的朋友做教学


该插件功能
1.自定义tp上限
2.控制战前,战后tp重置
3.改变受伤时tp获取量
*   具体表现为愤怒值,单次受伤超过一定量获得定量的tp。
*   trg大于200%时 角色将被激怒,每次受伤都将回满tp




JAVASCRIPT 代码
var parameters = PluginManager.parameters('Limpid_PeculiarTP');
    var Limpid_Maxtp = parseInt(String(parameters["MaxTP"]));
    var Limpid_InitTp = parseInt(String(parameters["InitTp"]));
    var Base_Tpget = parseFloat(String(parameters["Base_Tpget"]));


这段是脚本读取插件配置的属性存到对应的变量内。


JAVASCRIPT 代码
/**tp上限改变*/
    Game_BattlerBase.prototype.maxTp = function(){return Limpid_Maxtp;};



初始化是战前TP清除是战后我也服原生是怎么想出来的战前战后都清tp
JAVASCRIPT 代码
/**控制tp初始化*/
    Game_Battler.prototype.initTp = function(){if(Limpid_InitTp>0)this.setTp(Math.randomInt(25));};

JAVASCRIPT 代码
/**控制tp清除*/
    Game_Battler.prototype.clearTp = function(){if(Limpid_InitTp>0)this.setTp(0);};



JAVASCRIPT 代码
/**受到伤害 固定得到tp*/
    Game_Battler.prototype.chargeTpByDamage = function(damageRate){
      var btp=Base_Tpget*0.01*((2-this.trg)/2)
      if(btp
页: [1]
查看完整版本: 【原创 代码?教学】受击TP获取