Hello friends! First time poster, long time lurker (if you count the old forum).
I’ve been using the Visustella core plugins and I love them but the Shop and Equip store is giving me more trouble than any other. So here are some bullet points of my troubles:
-I have 4 extra custom parameters. The only way they will show is if I use the “compare” Data style.
-It’s cool! Right? Now the problem is that it only shows the current battle members. But this is not useful because I will have a lot of playable characters eventually.
-Ideally I would want for it to just show playable characters/party members (regardless if they are in the battle party or not) that can use the weapon type selected and to extend the max number of characters shown to 5 or 6
I assume it has to do with “actor.canEquip(this._item)” but I am way in over my head with this!
Here is the unedited code in the JS: Draw Equip Data
// Set Variables
const lineHeight = this.lineHeight();
const paramheight = this.gaugeLineHeight() + 8;
let x = 0;
let y = 0;
let width = this.innerWidth;
let height = this.innerHeight;
let hw = Math.floor(width / 2);
let hx = x + width - hw;
// Draw Item Name, Type, and Quantity
this.drawItemName(this._item, x + this.itemPadding(), y, width - this.itemPadding() * 2);
this.drawItemDarkRect(x, y, width);
y += lineHeight;
if (this.drawItemEquipType(x, y, hw)) y += 0;
if (this.drawItemQuantity(hx, y, hw)) y += lineHeight;
// Draw Parameter Names
const params = this.actorParams();
const backY = y;
y = height - (params.length * paramheight) - 4;
let paramX = x;
let paramWidth = 0;
let tableY = y;
for (const paramId of params) {
paramWidth = Math.max(this.drawParamName(paramId, x + 4, y + 4, width), paramWidth);
y += paramheight;
}
// Draw Actor Data
const actorMax = $gameParty.maxBattleMembers();
const actorWidth = Math.floor((width - paramWidth) / actorMax);
paramWidth = width - (actorWidth * actorMax);
for (const actor of $gameParty.battleMembers()) {
const index = $gameParty.battleMembers().indexOf(actor);
const actorX = paramX + paramWidth + (index * actorWidth);
this.changePaintOpacity(actor.canEquip(this._item));
this.drawActorCharacter(actor, actorX + (actorWidth / 2), tableY);
let actorY = tableY;
// Draw Parameter Changes
for (const paramId of params) {
const diffY = actorY - ((lineHeight - paramheight) / 2);
this.drawActorParamDifference(actor, paramId, actorX, diffY, actorWidth);
actorY += paramheight;
}
}
// Draw Back Rectangles
this.drawItemDarkRect(paramX, backY, paramWidth, tableY - backY);
for (let i = 0; i < actorMax; i++) {
const actorX = paramX + paramWidth + (i * actorWidth);
this.drawItemDarkRect(actorX, backY, actorWidth, tableY - backY);
}
for (const paramId of params) {
this.drawItemDarkRect(paramX, tableY, paramWidth, paramheight);
for (let i = 0; i < actorMax; i++) {
const actorX = paramX + paramWidth + (i * actorWidth);
this.drawItemDarkRect(actorX, tableY, actorWidth, paramheight);
}
tableY += paramheight;
}
Would appreciate if anyone has some input or knowledge! Thank you so much for you time


