Project1

标题: 如何在某些条件下对TP上限进行消减或增多? [打印本页]

作者: a5f001    时间: 2014-7-5 23:15
标题: 如何在某些条件下对TP上限进行消减或增多?
比如在修改默认TP上限为300的情况下,某某开关打开时,某某角色TP上限消减为100.开关关闭时恢复为300.
或在某状态下,TP上限增多为400.
如何以上这种效果?
作者: 泉塚四季    时间: 2014-7-6 00:40
(未测试)
修改TP上限为300:
  1. class Game_BattlerBase
  2.   def max_tp
  3.     return 300
  4.   end
  5. end
复制代码
开关1打开时,1号角色的TP上限变为100
  1. class Game_Actor
  2.   def max_tp
  3.     return 100 if @actor_id == 1 && $game_switches[1]
  4.     super   
  5.   end  
  6. end
复制代码
如果包含2号状态,TP上限变为400
  1. class Game_Actor
  2.   def max_tp
  3.     return 400 if state?(2)
  4.     super   
  5.   end  
  6. end
复制代码

作者: taroxd    时间: 2014-7-6 06:36
泉塚四季 发表于 2014-7-6 00:40
(未测试)
修改TP上限为300:开关1打开时,1号角色的TP上限变为100如果包含2号状态,TP上限变为400 ...


我悄悄地告诉你啊,这个坑爹的默认脚本呢,有个东西叫做tp_rate,还有一个东西呢叫做regenerate_tp。
这两个方法的定义十分简洁易懂,真是方便到了极致。不妨去看一下这两个方法,你会有新的体悟。

让我们亲切地问候一下RGSS3默认脚本的作者吧




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