UnforseenUplink

Villager
Member
Joined
Jan 4, 2023
Messages
8
Reaction score
0
First Language
English
Primarily Uses
RMMV
Hi there! I'm looking for a plugin that will make status ailments appear in a separate window on the battle screen. Are there any for front facing battles?
 

RCXGaming

Champion of Brightmoon Tor
Veteran
Joined
Jan 4, 2019
Messages
829
Reaction score
1,857
First Language
English
Primarily Uses
RMMV
Hi there! I'm looking for a plugin that will make status ailments appear in a separate window on the battle screen. Are there any for front facing battles?

Only one I can think of is Olivia's Tooltips. It shows a list of what the status effects actually do if you hover your mouse over the enemy, but I dunno if that's what you want.

Also, it costs money.
 

Astfgl66

Veteran
Veteran
Joined
Jan 5, 2016
Messages
756
Reaction score
629
First Language
French
Primarily Uses
You can also use my Icon Captions plugin for this. You can find a link for it in my signature.
 

UnforseenUplink

Villager
Member
Joined
Jan 4, 2023
Messages
8
Reaction score
0
First Language
English
Primarily Uses
RMMV
Neither of these are really what I'm looking for, I'm mostly looking for a plugin that will display the ailment icons in a separate window from the players health and MP.
 

kyonides

Reforged is laughable
Veteran
Joined
Nov 17, 2019
Messages
884
Reaction score
425
First Language
English
Primarily Uses
RMXP
So you just want to keep track of their current states on a different window, right?
 

kyonides

Reforged is laughable
Veteran
Joined
Nov 17, 2019
Messages
884
Reaction score
425
First Language
English
Primarily Uses
RMXP
Well, if you where using the default BS or some plugin that doesn't heavily alter its code, you could use my code here:

JavaScript:
//=============================================================================
// * KShowBattleStatesMV.js
//=============================================================================
/*:
 * @plugindesc It simply creates a new window where you can keep track of all
 * of the heroes' states without cluttering the Actors' Status Window
 * @author Kyonides Arkanthes
 * @help Date: 2023-02-10.
 * # * Free as in Beer * #
 * If you want to change the button that changes the Battle Status window's
 * contents, simply click on the only Plugin Parameter this code has and
 * enter your favorite button therein.
 * @param View Mode Button
 * @type text
 * @text View Mode Button
 * @value shift
 * @default shift
 * 
*/

function KShowBattleStates() {
  throw new Error('Seriously, why would you ever treat a static class just ' +
    'like a regular function?');
};

const param = PluginManager.parameters("KShowBattleStatesMV");

KShowBattleStates.view_button = param["View Mode Button"];
KShowBattleStates.default_mode = true;
KShowBattleStates.times = 0;
KShowBattleStates.view_command = "Show/Hide States";
KShowBattleStates.make_comm_list = Window_PartyCommand.prototype.makeCommandList;
KShowBattleStates.win_init = Window_BattleStatus.prototype.initialize;

Window_BattleStatus.prototype.initialize = function() {
  KShowBattleStates.win_init.call(this);
  this.view_button = KShowBattleStates.view_button;
  this.reset_timer();
  KShowBattleStates.times = 0;
};

Window_BattleStatus.prototype.reset_timer = function() {
  Input.clear;
  KShowBattleStates.times++;
  this.input_timer = 1;
};

Window_PartyCommand.prototype.makeCommandList = function() {
  KShowBattleStates.make_comm_list.call(this);
  this.addCommand(KShowBattleStates.view_command, 'states');
};

Window_BattleStatus.prototype.drawItem = function(index) {
  let actor = $gameParty.battleMembers()[index];
  this.drawBasicArea(this.basicAreaRect(index), actor);
  if (KShowBattleStates.default_mode) {
    this.drawGaugeArea(this.gaugeAreaRect(index), actor);
  }
};

Window_BattleStatus.prototype.basicAreaRect = function(index) {
  let rect = this.itemRectForText(index);
  if (KShowBattleStates.default_mode) {
    rect.width -= this.gaugeAreaWidth() + 15;
  }
  return rect;
};

Window_BattleStatus.prototype.drawBasicArea = function(rect, actor) {
  this.drawActorName(actor, rect.x + 0, rect.y, 150);
  if (!KShowBattleStates.default_mode) {
    this.drawActorIcons(actor, rect.x + 156, rect.y, rect.width - 156);
  }
};

Window_BattleStatus.prototype.is_time_up = function() {
  return this.input_timer == 0 && KShowBattleStates.times == 0;
};

Window_BattleStatus.prototype.update = function() {
  Window_Selectable.prototype.update.call(this);
  if (this.input_timer > 0) {
    this.input_timer--;
    KShowBattleStates.times = this.input_timer == 0 ? 0 : 1;
    return true;
  }
  if (Input.isTriggered(this.view_button) && this.is_time_up()) {
    SoundManager.playOk;
    KShowBattleStates.default_mode = !KShowBattleStates.default_mode;
    this.refresh();
    this.reset_timer();
  }
};

I've only tested it using the default BS so...
 

UnforseenUplink

Villager
Member
Joined
Jan 4, 2023
Messages
8
Reaction score
0
First Language
English
Primarily Uses
RMMV
It only seems to partially work for me, I made a new project to test it and it only seems to appear over enemies. I've tried using the option in the party select to show them and pressing shift but the window never seems to appear. Am I doing something wrong?
 

kyonides

Reforged is laughable
Veteran
Joined
Nov 17, 2019
Messages
884
Reaction score
425
First Language
English
Primarily Uses
RMXP
Well, I still don't know which battle system you're using so it's hard to come up with a solution tailored to your BS. I had to include a weird condition to make it work. Let's see what happens if you disable it.

In line 44 replace:
JavaScript:
KShowBattleStates.times++;

with:
JavaScript:
KShowBattleStates.times = 0;

If it still doesn't work as intended, then I'd need to know what's the name of your BS plugin and work on some sort of rewrite or aliasing of many BattleStatus related functions.
 

UnforseenUplink

Villager
Member
Joined
Jan 4, 2023
Messages
8
Reaction score
0
First Language
English
Primarily Uses
RMMV
My bad, I should've specified. I'm using Yanfly's Battle Engine Core for my games battles.

I tried replacing the line in my test project as well, no extra battle stuff just default front facing battles, and no window for the players.
 

Latest Threads

Latest Posts

Latest Profile Posts

My mom showed up yesterday and I wanted to proudly show off my comic con web page. So of course, it no longer existed. I guess when the 4 day event was over they removed it.
Feeling like a creative Pattato this morning...
Calibrating the timing of dialogue is deffo my new least favorite thing.
I died aged 27 to cancer. Then I was reborn in a South-American state. I retained all memories and skill and had a goal from my previous life I needed to finish, but now I was just a 1-year-old girl capable of only smiling at others.

Dreams like this one make me glad I'm able to wake up from them at will.
Found a critical bug the other day with the time system that would have caused none of the NPCs to spawn. Since I use dev mode to test time-based stuff, I didn't catch this for way too long!

Forum statistics

Threads
129,979
Messages
1,206,686
Members
171,205
Latest member
CuriousMonkeyX
Top