Stop buff icons from incrementing

● ARCHIVED · READ-ONLY
Started by warlobster 4 posts View original ↗
  1. Short version: I want the buff icons to be on/off instead of changing every time a buff increases. Is there an easy way to do this? I don't know where to look.

    The reason: I've increased the maximum number of buffs that can stack at a time from 2 to 5. But for every new buff, the icon shifts again, so by the time ATK (for example) has its 5th buff, the icon next to the character is something irrelevant.

    I'd rather just make the buff icons binary than draw three extra layers of every kind of buff and debuff--even if I could do that and make it look good.
  2. I've never played around with buffs (since I think they're just really poor versions of States), but in a quick glance at the code, you should probably be modifying either buff_icon_index in Game_BattlerBase or draw_actor_icons in Window_Base.

    If it's the Buff Icon Index, you'd probably want to change both "(buff level - 1)" and "(-buff level - 1)" to the number 0.  I don't know what you might need to do with draw_actor_icons except maybe changing one or both of the "n"s to the number 1.

    So like I said, far from an expert on this set of methods, but hopefully if you start from here you can figure it out.
  3. I've moved this thread to RGSSx Script Support. Please be sure to post your threads in the correct forum next time. Thank you.
  4. For what it's worth, after messing around with things I only partly understand, I seem to have found my solution. Under Game_BattlerBase, I changed the section labeled "Get Icon Number Corresponding to Buff/Debuff" starting with line 168 to:
     

    def buff_icon_index(buff_level, param_base)

        if buff_level > 0

          return ICON_BUFF_START + param_base

        elsif buff_level < 0

          return ICON_DEBUFF_START + param_base 

        else

          return 0

        end

      end