设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 202|回复: 5
打印 上一主题 下一主题

[有事请教] 关于自动恢复TP的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
214
在线时间
19 小时
注册时间
2019-11-2
帖子
24
跳转到指定楼层
1
发表于 2025-2-10 23:12:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
10星屑
我在装备中设置一个特性可以自动恢复固定百分比TP,并且我设定TP每次战斗后可以保留,但是我发现就算没有在战斗中TP也会不断慢慢增长,请问这是什么原因?

Lv3.寻梦者

梦石
0
星屑
3115
在线时间
368 小时
注册时间
2018-8-3
帖子
17
2
发表于 2025-2-11 14:33:41 | 只看该作者
因为和战斗外保留的状态是属于同一种效果,战斗外中毒每走几步就会掉血,这个回复tp也是在这个步骤里执行的,理论上可以给这个写成被动,只是插件少,不常见
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
214
在线时间
19 小时
注册时间
2019-11-2
帖子
24
3
 楼主| 发表于 2025-2-11 18:18:06 | 只看该作者
jack99zgp 发表于 2025-2-11 14:33
因为和战斗外保留的状态是属于同一种效果,战斗外中毒每走几步就会掉血,这个回复tp也是在这个步骤里执行的 ...

有沒有辦法能够实现在非战斗的时候TP不自动增长呢?
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
214
在线时间
19 小时
注册时间
2019-11-2
帖子
24
4
 楼主| 发表于 2025-2-13 21:41:55 | 只看该作者
经过研究已经把这个问题解决了,有需求的朋友可以参考一下,在object的脚本里面有一个代码关于regenerateTp的函数,把里面的代码改成以下就能实现,原理就是检测角色是否是在战斗中,如果是的会便会自动恢复,同理也可运用到MP,HP的自动恢复中。
Game_Battler.prototype.regenerateTp = function() {
   
     if ($gameParty.inBattle()) {
        var value = Math.floor(100 * this.trg);
    } else {
       var value = 0;
    }

   this.gainSilentTp(value);
};

点评

建议再改一下把 this.gainSilentTp(value); 也放在 }else{ 之前,否则即使 value 为 0 也可能有副作用。  发表于 2025-2-15 11:14
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
214
在线时间
19 小时
注册时间
2019-11-2
帖子
24
5
 楼主| 发表于 2025-2-15 11:28:15 | 只看该作者
Kaede_123 发表于 2025-2-13 21:41
经过研究已经把这个问题解决了,有需求的朋友可以参考一下,在object的脚本里面有一个代码关于regenerateTp ...

谢谢建议,我的想法else里面的代码就是非战斗状态下的TP自动增长效果,如果有人希望在非战斗状态下有不一样的增长效果的话就能实现,当然我代码能力基本属于小白,确实不清楚会不会有副作用就是了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-4-2 09:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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