RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
[Solved][VXAce] Menu Appearance and Extra Info Window

0 Members and 1 Guest are viewing this topic.

**
Rep:
Level 66
~RTP Princess~
Hey there, so basically I have two requests. One is a pretty simple one, I think. The other, possibly not.
 
The first is something I'm sure is easy enough to do, I just can't seem to figure it out.
I'm using Fomar's Menu script that changes the layout depending on the amount of characters in the party. I've got only one character so I'm using a portrait to show my characters' face instead of an actual faceset. The issue I'm having is finding a way to add some space between the level/name and class/gauges. As it stands they're currently like so:
 

 
As you can see, there's not much room between the two. If possible I'd like a code to make them separate a bit to make the class/gauges line up with the information on the left. I've tried to find the line in the actual script that might do this but to no avail.
 
Here's the script (after my edits)
Code: [Select]
=begin
1-5 Member Party Status Huds
by Fomar0153
Version 1.0
----------------------
Notes
----------------------
Automatically uses up all available space in the status menus.
----------------------
Instructions
----------------------
Follow the instructions in the MembersPlus module.
----------------------
Known bugs
----------------------
None
=end
module MembersPlus

# Set this to the number of people you want to take part in battle
Battle_Party_Size = 1
# When one person is in the party you can draw a portrait, it should
# be placed in pictures and then you can notetag the actor e.g.
# <portrait RalphPortrait>
One_Member_Party_Use_Portrait = true
# When 5 people are in the party their faces can sometimes overlap slightly,
# this prevents that.
Five_Party_Trunc_Faces = false

end

class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# * Get Item Height
#--------------------------------------------------------------------------
def item_height
(height - standard_padding * 2) / [$game_party.members.size, MembersPlus::Battle_Party_Size].min
end
#--------------------------------------------------------------------------
# * Draw Item
#--------------------------------------------------------------------------
def draw_item(index)
actor = $game_party.members[index]
enabled = $game_party.battle_members.include?(actor)
rect = item_rect(index)
draw_item_background(index)
#draw_actor_face(actor, rect.x + 1, rect.y + 1, enabled)
if MembersPlus::One_Member_Party_Use_Portrait && $game_party.members.size == 1
bitmap = Cache.picture(actor.actor.portrait)
contents.blt(rect.x + 0, rect.y + line_height * 5, bitmap, bitmap.rect)
end
if MembersPlus::Battle_Party_Size == 5 && $game_party.members.size >= 5
draw_actor_simple_status(actor, rect.x + 108, rect.y + line_height / 4)
else
draw_actor_simple_status(actor, rect.x + 2, rect.y + line_height / 2)
end
case [$game_party.members.size, MembersPlus::Battle_Party_Size].min
when 1
draw_exp_info(actor, rect.x + 200,rect.y + line_height * 4)
6.times {|i| draw_actor_param(actor, rect.x + 200, rect.y + line_height * (9 + i), i + 2) }
when 2
draw_exp_info(actor, rect.x + 4,rect.y + line_height * 4)
end
end
#--------------------------------------------------------------------------
# * Draw Experience Information
#--------------------------------------------------------------------------
def draw_exp_info(actor, x, y)
s1 = actor.max_level? ? "-------" : actor.exp
s2 = actor.max_level? ? "-------" : actor.next_level_exp - actor.exp
s_next = sprintf(Vocab::ExpNext, Vocab::level)
change_color(system_color)
draw_text(x, y + line_height * 0, 156, line_height, Vocab::ExpTotal)
draw_text(x, y + line_height * 2, 156, line_height, s_next)
change_color(normal_color)
draw_text(x, y + line_height * 1, 156, line_height, s1, 2)
draw_text(x, y + line_height * 3, 156, line_height, s2, 2)
end

class Game_Party < Game_Unit
#--------------------------------------------------------------------------
# * Get Maximum Number of Battle Members
#--------------------------------------------------------------------------
def max_battle_members
return MembersPlus::Battle_Party_Size
end
end

class RPG::Actor < RPG::BaseItem
def portrait
if @portrait.nil?
if @note =~ /<portrait (.*)>/i
@portrait = $1
else
@portrait = @name
end
end
@portrait
end
end

class Window_BattleStatus < Window_Selectable
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(0, 0, window_width, window_height)
refresh
self.openness = 0
end
#--------------------------------------------------------------------------
# * Get Digit Count
#--------------------------------------------------------------------------
def col_max
item_max
end
#--------------------------------------------------------------------------
# * Get Spacing for Items Arranged Side by Side
#--------------------------------------------------------------------------
def spacing
0
end
#--------------------------------------------------------------------------
# * Get Item Height
#--------------------------------------------------------------------------
def item_height
line_height * 4
end
#--------------------------------------------------------------------------
# * Draw Item
#--------------------------------------------------------------------------
def draw_item(index)
actor = $game_party.battle_members[index]
draw_basic_area(basic_area_rect(index), actor)
draw_gauge_area(gauge_area_rect(index), actor)
end
#--------------------------------------------------------------------------
# * Get Basic Area Retangle
#--------------------------------------------------------------------------
def basic_area_rect(index)
item_rect_for_text(index)
end
#--------------------------------------------------------------------------
# * Get Gauge Area Rectangle
#--------------------------------------------------------------------------
def gauge_area_rect(index)
rect = item_rect_for_text(index)
rect.x += 4
rect.width -= 8
rect
end
#--------------------------------------------------------------------------
# * Get Gauge Area Width
#--------------------------------------------------------------------------
def gauge_area_width
return contents.width / item_max
end
#--------------------------------------------------------------------------
# * Draw Basic Area
#--------------------------------------------------------------------------
def draw_basic_area(rect, actor)
#draw_actor_face(actor, rect.x + 1, rect.y + 1, actor.alive?)
if $data_system.opt_display_tp
draw_actor_icons(actor, rect.x, rect.y, rect.width)
else
if $game_party.members.size <= 2
draw_actor_name(actor, rect.x + 1, rect.y, rect.width - 1)
draw_actor_icons(actor, rect.x + 1, rect.y + line_height, rect.width - 1)
else
draw_actor_name(actor, rect.x, rect.y, rect.width)
draw_actor_icons(actor, rect.x, rect.y + line_height, rect.width)
end
end
end
#--------------------------------------------------------------------------
# * Draw Gauge Area
#--------------------------------------------------------------------------
def draw_gauge_area(rect, actor)
if $game_party.members.size <= 2
rect.x += 1
rect.width -= 1
end
if $data_system.opt_display_tp
draw_gauge_area_with_tp(rect, actor)
else
draw_gauge_area_without_tp(rect, actor)
end
end
#--------------------------------------------------------------------------
# * Draw Gauge Area (with TP)
#--------------------------------------------------------------------------
def draw_gauge_area_with_tp(rect, actor)
draw_actor_hp(actor, rect.x, rect.y + line_height, rect.width)
draw_actor_mp(actor, rect.x, rect.y + line_height * 2, rect.width)
draw_actor_tp(actor, rect.x, rect.y + line_height * 3, rect.width)
end
#--------------------------------------------------------------------------
# * Draw Gauge Area (without TP)
#--------------------------------------------------------------------------
def draw_gauge_area_without_tp(rect, actor)
draw_actor_hp(actor, rect.x, rect.y + line_height * 2, rect.width)
draw_actor_mp(actor, rect.x, rect.y + line_height * 3, rect.width)
end
#--------------------------------------------------------------------------
#
end
end


The second script is a little harder.
 
Since this game doesn't use money in any way, shape or form, I find the money box unnecessary and decided it would be a neat idea to instead replace it with another box.
 
I have Type levels for my weapons (there's 9 Types all up). What I'd like to do is have a box with a series of icons down one side with an LV next to them, and on the other side a number for each that would be generated by a variable. And a small heading that could be edited.
 
I'd imagine each icon would correspond with an icon number in the icon list, for easy changing. I've a mockup to show clearer what I mean.
 

It's a little rough, but it should give the right idea. (also, the top right as an example of the first part.)
 
Any help would be really appreciated!
 

« Last Edit: February 27, 2013, 05:43:18 AM by littlesatyr »



*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Most Mature Member2010 Favourite Staff Member
The lack of indenting is giving me a little trouble. First things first though, your draw_exp_info method is outside of the Window_MenuStatus class.

For the spacing issue, you can add a new method to the Window_MenuStatus class that looks like this:

Code: [Select]
#--------------------------------------------------------------------------
  # * Draw Simple Status
  #--------------------------------------------------------------------------
  def draw_actor_simple_status(actor, x, y)
    draw_actor_name(actor, x, y)
    draw_actor_level(actor, x, y + line_height * 1)
    draw_actor_icons(actor, x, y + line_height * 2)
    draw_actor_class(actor, x + 120, y)
    draw_actor_hp(actor, x + 120, y + line_height * 1)
    draw_actor_mp(actor, x + 120, y + line_height * 2)
  end

The last three lines are set at x + 120. Just adjust the 120 until you get the spacing you want.

For the second problem, I am not positive that it will work with whatever script you have reducing the number of commands, but you can try using my Customizable Main Menu. It has the ability to remove the gold window and to add a window with variables like the one you describe. It will probably need to be below your other custom scripts in the Script Editor.

If it doesn't work with the script you have which reduces the commands, then it can substitute for it in any event.

**
Rep:
Level 66
~RTP Princess~
Thank you very much, MA!
That snippet worked perfectly and I'm gonna mess around with your menu script and see what I can achieve. ^.^
(I didn't really use a script as such for the removal of the commands, so much as adding a # in front of the command that made them show up in the menu. That way if I want them back I just have to remove the symbol and it shouldn't mess with the original scripts in ways to break them. ^.^ )

I'll reply in your script topic if I have any questions~
Thanks again, though. I really appreciate it. ^.^