设为首页收藏本站同能贴吧 切换语言 繁体中文
开启辅助访问 切换到窄版
扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 101|回复: 0

[转载发布] Turn TP Bar into an EXP Bar

[复制链接]
累计送礼:
0 个
累计收礼:
1 个
  • TA的每日心情
    开心
    2026-7-12 04:10
  • 签到天数: 209 天

    连续签到: 2 天

    [LV.7]常住居民III

    7975

    主题

    864

    回帖

    3万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    7
    卡币
    29957
    OK点
    16
    推广点
    0
    同能卷
    50
    积分
    38826

    灌水之王

    发表于 4 天前 | 显示全部楼层 |阅读模式
    TPX v1.0
    Drakkonis


    Introduction
    This is a small little plugin made by request, but it's not too specific that others can't use it too. It simply converts the actor TP gauge into an EXP gauge.

    Features
    -Make the TP bar useful if you're not using the TP system.
    -Two modes: Show current EXP value, or show the percentage towards the next level.
    -No need to set any values or change actor TP charge rates, the gauge stays locked to the actor's experience.

    How to Use
    If you copy the code from below, save it in a file named Drak_TPX.js, and put it in your project's plugin folder and set it up like any other plugin. Alternatively, the file is included below for download.
    In the parameters window, select which mode you'd like to use.
    Make sure you have "Show TP in Window" checked in the options of the system tab.
    You'll probably want to change the TP name setting to something more appropriate, like XP or EXP. Unless you WANT it to still say TP, of course.

    Script
    Spoiler: TPX Script
                    Code:       
    1. /*:
    2. @plugindesc Turns the TP bar into an EXP bar. Only use if you're not going to use the TP system at all.
    3. @author Drakkonis
    4. @param dispMode
    5. @type select
    6. @option Current EXP
    7. @option Percentage
    8. @text TP Guage Display
    9. @desc Do you want the gauge to display the EXP amount, or a percentage towards the next level?
    10. @default Current EXP
    11. */
    12. var Imported = Imported || {};
    13. Imported.Drak_TPX = true;
    14. var TPX = TPX || {};
    15. TPX.Parameters = PluginManager.parameters('Drak_TPX');
    16. TPX.mode = TPX.Parameters['dispMode'];
    17. const battler_refresh = Game_BattlerBase.prototype.refresh; //alias the original function, so we can call the original version
    18. Game_BattlerBase.prototype.refresh = function() {
    19.     battler_refresh.call(this); //call the aliased (original) version of this function, since we're adding to it, not replacing it
    20.     if (this.isActor()) {
    21.         if (TPX.mode == "Current EXP") {
    22.             this._tp = this.currentExp();
    23.         } else if (TPX.mode == "Percentage") {
    24.             this._tp = Math.round((this.currentExp() / this.nextLevelExp()) * 100);
    25.         };
    26.     };
    27. };
    28. Game_Actor.prototype.maxTp = function() {
    29.     if (TPX.mode == "Current EXP") {
    30.         return this.nextLevelExp();
    31.     } else return 100;
    32. };
    33. Game_BattlerBase.prototype.isPreserveTp = function() { //allows you to see the right amount of xp outside of battle
    34.     return true;
    35. };
    36. Sprite_Gauge.prototype.drawValue = function() {
    37.     var val = this.currentValue();
    38.     if (this._battler && this._statusType == "tp" && TPX.mode == "Percentage") {
    39.         val += "%";
    40.     };
    41.     const currentValue = val;
    42.     const width = this.bitmapWidth();
    43.     const height = this.bitmapHeight();
    44.     this.setupValueFont();
    45.     this.bitmap.drawText(currentValue, 0, 0, width, height, "right");
    46. };
    复制代码


    FAQ
    Post question and answers to common question here in the following format:

    Q: Can I change the gauge color?
    A: Not with this plugin, no. Maybe in the future if there's a need for it. In the meantime, any plugins that let you customize gauge colors should work just fine.

    Q: How will this affect the TP system?
    A: Since this only affects actors, it won't affect any TP system you have for enemies. And because this links an actor's TP to their EXP directly, you don't have to modify any TP costs/gains attached to items/skills, they won't have any actual effect on actors. This means that if you have a mechanic for enemies that DOES use the TP system, this shouldn't interfere with it.

    Credit and Thanks
    - Drakkonis, author
    - Sirius270, who made the request. This plugin literally wouldn't exist otherwise. At least, not from me.

    Author's Notes
    I don't have MV, I have MZ. The request was for MV, and as far as I can tell, works just fine in both.
    Side note, I find it hilarious that, with so many potential uses for the TP system, this plugin provides a use for the gauge by NOT using the TP system!

    This plugin is free to use in any RPG Maker MV or MZ project, commercial or otherwise. No credit necessary, though would be appreciated!


    本贴来自国际rpgmaker官方论坛作者:Drakkonis处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/turn-tp-bar-into-an-exp-bar.134864/

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    简体中文
    繁體中文
    English(英语)
    日本語(日语)
    Deutsch(德语)
    Русский язык(俄语)
    بالعربية(阿拉伯语)
    Türkçe(土耳其语)
    Português(葡萄牙语)
    ภาษาไทย(泰国语)
    한어(朝鲜语/韩语)
    Français(法语)
    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2026-8-1 08:32 , Processed in 0.100053 second(s), 55 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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