YERD Victory Aftermath Script:
I've been racking my brain at how to customize this script to work for my project. I love the script itself. It just has a slight problem, wherein all the graphics/text doesn't fit on the screen during the first scene in which the party is accumulating EXP. I have a large party script and have 6 playable members at a single time. So, I need for this script to be able to show all 6 members of the party and their EXP increases accordingly. Here's the part of the script where I'm sure it is located. I messed around with it a little. I changed text size and implemented a smaller EXP bar, trying to make it all fit, however I was unable to make it work.
class Window_Party_Exp_Front < Window_Base
#--------------------------------------------------------------------------
# initialize
#--------------------------------------------------------------------------
def initialize
super(0, 112, 544, 176)
self.opacity = 0
refresh
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh(extraper = 0)
self.contents.clear
px = (self.width - 32) / 2 - ($game_party.members.size * 120) / 2
@full_actors = 0
for actor in $game_party.members
#---
self.contents.font.color = normal_color
self.contents.font.size = Font.default_size
py = WLH * 4
#---
pw = 50
gc1 = text_color(YE::BATTLE::DISPLAY::VA_EXP_GAUGE_COLOUR1)
gc2 = text_color(YE::BATTLE::DISPLAY::VA_EXP_GAUGE_COLOUR2)
if actor.level > $old_level[actor.id]
gw = pw
gc1 = text_color(YE::BATTLE::DISPLAY::VA_LVL_UP_GAUGE1)
gc2 = text_color(YE::BATTLE::DISPLAY::VA_LVL_UP_GAUGE2)
elsif actor.next_exp != 0
gw = pw * (actor.now_exp + exp_gained(extraper, actor))
gw /= actor.next_exp
gw = pw if gw > pw
else
gw = pw
end
self.contents.fill_rect(px + 12, py - 6, pw, 6, gauge_back_color)
self.contents.gradient_fill_rect(px + 12, py - 6, gw, 6, gc1, gc2)
#---
self.contents.font.size = YE::BATTLE::DISPLAY::VA_FONT_SIZE
if actor.level > $old_level[actor.id]
colour = text_color(YE::BATTLE::DISPLAY::VA_LVL_UP_TEXT_COLOUR)
self.contents.font.color = colour
text = YE::BATTLE::DISPLAY::VA_LVL_UP_TEXT
elsif actor.next_exp != 0
text = sprintf(YE::BATTLE::DISPLAY::VA_MSG_NEXT_LVL, actor.level + 1)
else
text = YE::BATTLE::DISPLAY::VA_MSG_MAX_LVL
end
self.contents.draw_text(px, py, 120, WLH, text, 1)
self.contents.font.color = normal_color
#---
py += WLH
if actor.level > $old_level[actor.id]
expercent = 100.000
text = sprintf(YE::BATTLE::DISPLAY::VA_PERCENT_EXP, expercent)
self.contents.draw_text(px, py - WLH * 2, 120, WLH, text, 1)
text = sprintf(YE::BATTLE::DISPLAY::VA_LVL_UP_LEVEL, actor.level)
self.contents.draw_text(px, py, 120, WLH, text, 1)
else
if actor.next_exp != 0
expercent = (actor.now_exp + exp_gained(extraper, actor))* 100.000
expercent /= actor.next_exp
if expercent > 100.000
expercent = 100.000
@full_actors += 1
end
value = actor.next_rest_exp_s - exp_gained(extraper, actor)
value = 0 if value < 0
else
expercent = 100.000
@full_actors += 1
end
text = sprintf(YE::BATTLE::DISPLAY::VA_PERCENT_EXP, expercent)
self.contents.draw_text(px, py - WLH * 2, 120, WLH, text, 1)
if actor.next_exp != 0
text = sprintf(YE::BATTLE::DISPLAY::VA_NEXT_LV_EXP, value)
else
text = ""
end
self.contents.draw_text(px, py, 120, WLH, text, 1)
end
#---
px += 120
end
end
A lot of variables and positioning is involved in this part of the script and it's hard to distinguish which numbers are doing what. Like I said, I've been messing with it myself for a long time. I think the problem is, I must somehow shorten the gap between the character's shown. Then, center the text and information below them. Wanted to take a screen shot and show you how it was looking. I just can't get the Screenshot script I have to work when a text box is present, and unfortunately, there's a text box open during this part of the script. Anyway, this is a problem which has been driving me crazy for a long time. Let me know if you can help.