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.
[XP] Status and Equipment Script - Need help

0 Members and 1 Guest are viewing this topic.

**
Rep: +0/-0Level 81
Sick and tired of being sick and tired...
EDIT: Half a year later and I found the solution to these two scripts coexisting. (randomly got bored of school and started up the RMXP from my old laptop only to remember why I quit - so I fiddled with the codes for a few hours before I figured it out).

Solution for those with similar problems:
Guillaume777's equip script edits the Window_Status script. Solution was as easy  as deleting from Guillame's script the code that changes Window_Status. This way, Fyre's Status Window script (which reads from the original Window_Status) isn't screwed over by incompatible factors. Oh - but Fyre's script will not display correct equips if you do this - on the other hand though, why do you need equips on the status screen when you have them on the equipment screen? Just delete the stuff from Fyre's script about equipment. Irritatingly - I only thought of this randomly =.=;;; It wasn't even trial and error - I just read the code and started laughing about how idiotic I was half a year ago. *sighs*

original post:

Reposting because I got no response elsewhere. I don't post often, so I'm not entirely sure if this is the right place for this, so let me know if I'm in the way.

I usually try to solve these myself since I can read the scripts to a certain point, but no chance, I can't write anything I'm confident will work. So, if a scripter isn't to busy to help me modify these to work together, I would be extremely pleased.

A slightly modified version of Fyre's Custom Status Menu
Code: [Select]
module FYRECUSTOMSTATUS
# Highest value that the character's stats can reach.
ST_MAX = 999
# The extra title for the actors.
# Instuctions:
#
#To edit the actors age, height, and element just change the lines that say ACTOR#_AGE, ACTOR#_HEIGHT, and ACTOR#_ELEMENT, where # is what number the character is in the database. For example, I you wanted to edit Aluxes age, height, or element and he is the actor 001 in you database, the you would edit ACTOR1_AGE, ACTOR1_HEIGHT, and ACTOR1_ELEMENT.
#
#Now, to edit the actor's biography, you have 5 lines available to you. So, whatever you want to say about the character, you have to say it in 5 lines, heh. To edit each line, just edit the ACTOR#_LINE*, where # is the actor's number in the database and * is the line's number. Just don't do past the margin line in the script editor when editing the biography or else the words will run onto the equipment.
#
#By default, the script only supports the status for 8 actors. However, it's extremely easy to add another one. Let's say you wanted to add the 9th character in your database. Just add these line's right below ACTOR8_LINE5, but replace # with the character's number.
#
#ACTOR#_AGE = ""
#ACTOR#_HEIGHT = ""
#ACTOR#_ELEMENT = ""
#ACTOR#_LINE1 = ""
#ACTOR#_LINE2 = ""
#ACTOR#_LINE3 = ""
#ACTOR#_LINE4 = ""
#ACTOR#_LINE5 = ""
#
#Then scroll down a bit until you see 'def draw_actor_bio' the scroll to where it says 'if actor.id == 8'. At the bottom of that you will see this.
#
#self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR8_LINE5)
#else
#end*
#end
#
#Now add a line where I put the star and then copy and past this data. Just change the # to the character's number.
#
#if actor.id == #
#cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR#_LINE1).width
#cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR#_LINE2).width
#cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR#_LINE3).width
#cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR#_LINE4).width
#self.contents.font.color = system_color
#self.contents.draw_text(x, y, 40, 32, "Age :")
#self.contents.draw_text(x, y + 20, 40, 32, "Height :")
#self.contents.draw_text(x, y + 40, 40, 32, "Class :")
#self.contents.draw_text(x, y + 60, 40, 32, "Element :")
#self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
#self.contents.font.color = normal_color
#self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR#_AGE)
#self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR#_HEIGHT)
#self.contents.draw_text(x + 30, y + 40, 140, 32, actor.class_name)
#self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR#_ELEMENT)
#self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR#_LINE1)
#self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR#_LINE2)
#self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR#_LINE3)
#self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR#_LINE4)
#self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR#_LINE5)
#else
#end
#
#And now the character will be viewable on the status screen without the game crashing.
#
#-v1.0-
#
#For the full-sized picture of the character, the name of the picture should be the character's name + "(Status)". So if your character's name is Aluxes, then the picture's name should be "Aluxes(Status)". The resolution is 232 x 434.
#
#For the extra information, the name of the picture should be the character's name + "(Extra)". So if your character's name is Aluxes, then the picture's name should be "Aluxes(Extra)". The resolution is 244 x 209. On a side note, as mentioned below, I'm not too good a scripter, as this is my first one. So until I can figure out something else, all of the extra info has to be in graphic form.
#-----------------------------------------
# Script Start
#-----------------------------------------
ACTOR1_AGE = "??"
ACTOR1_HEIGHT = "5'9"
ACTOR1_CLASS = "Rogue"
ACTOR1_ELEMENT = "Dark"
ACTOR1_LINE1 = "blank"
ACTOR1_LINE2 = "blank"
ACTOR1_LINE3 = "blank"
ACTOR1_LINE4 = "blank"
ACTOR1_LINE5 = "blank"
ACTOR2_AGE = "17"
ACTOR2_HEIGHT = "5'4"
ACTOR2_CLASS = "Cleric"
ACTOR2_ELEMENT = "Fire"
ACTOR2_LINE1 = "blank"
ACTOR2_LINE2 = "blank"
ACTOR2_LINE3 = "blank"
ACTOR2_LINE4 = "blank"
ACTOR2_LINE5 = "blank"
ACTOR3_AGE = "22"
ACTOR3_HEIGHT = "5'11"
ACTOR3_CLASS = "Mage"
ACTOR3_ELEMENT = "Ice"
ACTOR3_LINE1 = "blank"
ACTOR3_LINE2 = "blank"
ACTOR3_LINE3 = "blank"
ACTOR3_LINE4 = "blank"
ACTOR3_LINE5 = "blank"
ACTOR4_AGE = "20"
ACTOR4_HEIGHT = "5'7"
ACTOR4_CLASS = "Marksman"
ACTOR4_ELEMENT = "Wind"
ACTOR4_LINE1 = "blank"
ACTOR4_LINE2 = "blank"
ACTOR4_LINE3 = "blank"
ACTOR4_LINE4 = "blank"
ACTOR4_LINE5 = 'blank"
ACTOR5_AGE = ""
ACTOR5_HEIGHT = ""
ACTOR5_CLASS = ""
ACTOR5_ELEMENT = ""
ACTOR5_LINE1 = ""
ACTOR5_LINE2 = ""
ACTOR5_LINE3 = ""
ACTOR5_LINE4 = ""
ACTOR5_LINE5 = ""
ACTOR6_AGE = ""
ACTOR6_HEIGHT = ""
ACTOR6_CLASS = ""
ACTOR6_ELEMENT = ""
ACTOR6_LINE1 = ""
ACTOR6_LINE2 = ""
ACTOR6_LINE3 = ""
ACTOR6_LINE4 = ""
ACTOR6_LINE5 = ""
ACTOR7_AGE = ""
ACTOR7_HEIGHT = ""
ACTOR7_CLASS = ""
ACTOR7_ELEMENT = ""
ACTOR7_LINE1 = ""
ACTOR7_LINE2 = ""
ACTOR7_LINE3 = ""
ACTOR7_LINE4 = ""
ACTOR7_LINE5 = ""
ACTOR8_AGE = ""
ACTOR8_HEIGHT = ""
ACTOR8_CLASS = ""
ACTOR8_ELEMENT = ""
ACTOR8_LINE1 = ""
ACTOR8_LINE2 = ""
ACTOR8_LINE3 = ""
ACTOR8_LINE4 = ""
ACTOR8_LINE5 = ""
end


#==============================================================================
# ** Window_BaseStatus
#------------------------------------------------------------------------------
#  I'm just adding a few methods to Window_Base and changing some values.
#==============================================================================

class Window_BaseStatus < Window
 
   def initialize(x, y, width, height)
    super()
    @windowskin_name = $game_system.windowskin_name
    self.windowskin = RPG::Cache.windowskin(@windowskin_name)
    self.x = x
    self.y = y
    self.width = width
    self.height = height
    self.z = 100
  end
  #--------------------------------------------------------------------------
  # * Dispose
  #--------------------------------------------------------------------------
  def dispose
    # Dispose if window contents bit map is set
    if self.contents != nil
      self.contents.dispose
    end
    super
  end
  #--------------------------------------------------------------------------
  # * Get Text Color
  #     n : text color number (0-7)
  #--------------------------------------------------------------------------
  #--------------------------------------------------------------------------
  # * Get Normal Text Color
  #--------------------------------------------------------------------------
  def normal_color
    return Color.new(255, 255, 255, 255)
  end
  #--------------------------------------------------------------------------
  # * Get Disabled Text Color
  #--------------------------------------------------------------------------
  def disabled_color
    return Color.new(255, 255, 255, 128)
  end
  #--------------------------------------------------------------------------
  # * Get System Text Color
  #--------------------------------------------------------------------------
  def system_color
    return Color.new(192, 224, 255, 255)
  end
  #--------------------------------------------------------------------------
  # * Get Crisis Text Color
  #--------------------------------------------------------------------------
  def crisis_color
    return Color.new(255, 255, 64, 255)
  end
  #--------------------------------------------------------------------------
  # * Get Knockout Text Color
  #--------------------------------------------------------------------------
  def knockout_color
    return Color.new(255, 64, 0)
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    # Reset if windowskin was changed
    if $game_system.windowskin_name != @windowskin_name
      @windowskin_name = $game_system.windowskin_name
      self.windowskin = RPG::Cache.windowskin(@windowskin_name)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Graphic
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #--------------------------------------------------------------------------
  def draw_actor_graphic(actor, x, y)
    bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
    cw = bitmap.width / 4
    ch = bitmap.height / 4
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
  end
  #--------------------------------------------------------------------------
  # * Draw Name
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #--------------------------------------------------------------------------
  def draw_actor_name(actor, x, y)
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 120, 32, actor.name)
  end
  #--------------------------------------------------------------------------
  # * Draw Class
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #--------------------------------------------------------------------------
  def draw_actor_class(actor, x, y)
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 236, 32, actor.class_name)
  end
  #--------------------------------------------------------------------------
  # * Draw Level
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #--------------------------------------------------------------------------
  def draw_actor_level(actor, x, y)
    self.contents.font.color = system_color
    self.contents.draw_text(x + 20, y, 32, 32, "Lv.")
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 20, y, 34, 32, actor.level.to_s, 2)
  end
 
  ##############################################################################
  #Draws the actors full picture in the status window.
  ##############################################################################
  def none
    actorfull = RPG::Cache.picture("")
  end
 
  def draw_actor_full(actor, x, y)
    actorfull = RPG::Cache.picture(actor.name + "(Status)") rescue none
    cw = actorfull.width
    ch = actorfull.height
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x - cw / 2, y - ch, actorfull, src_rect)
  end
 
  ##############################################################################
  #Draws the picture for the extra information for each actor.
  ##############################################################################
 
  def draw_actor_bio(actor, x, y)
    if actor.id == 1
      cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR1_LINE1).width
      cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR1_LINE2).width
      cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR1_LINE3).width
      cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR1_LINE4).width
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 40, 32, "Age :")
      self.contents.draw_text(x, y + 20, 40, 32, "Height :")
      self.contents.draw_text(x, y + 40, 40, 32, "Class :")
      self.contents.draw_text(x, y + 60, 40, 32, "Element :")
      self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR1_AGE)
      self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR1_HEIGHT)
      self.contents.draw_text(x + 30, y + 40, 140, 32, FYRECUSTOMSTATUS::ACTOR1_CLASS)
      self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR1_ELEMENT)
      self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR1_LINE1)
      self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR1_LINE2)
      self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR1_LINE3)
      self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR1_LINE4)
      self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR1_LINE5)
    else
    end
    if actor.id == 2
      cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR2_LINE1).width
      cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR2_LINE2).width
      cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR2_LINE3).width
      cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR2_LINE4).width
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 40, 32, "Age :")
      self.contents.draw_text(x, y + 20, 40, 32, "Height :")
      self.contents.draw_text(x, y + 40, 40, 32, "Class :")
      self.contents.draw_text(x, y + 60, 40, 32, "Element :")
      self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR2_AGE)
      self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR2_HEIGHT)
      self.contents.draw_text(x + 30, y + 40, 140, 32, FYRECUSTOMSTATUS::ACTOR2_CLASS)
      self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR2_ELEMENT)
      self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR2_LINE1)
      self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR2_LINE2)
      self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR2_LINE3)
      self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR2_LINE4)
      self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR2_LINE5)
    else
    end
    if actor.id == 3
      cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR3_LINE1).width
      cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR3_LINE2).width
      cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR3_LINE3).width
      cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR3_LINE4).width
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 40, 32, "Age :")
      self.contents.draw_text(x, y + 20, 40, 32, "Height :")
      self.contents.draw_text(x, y + 40, 40, 32, "Class :")
      self.contents.draw_text(x, y + 60, 40, 32, "Element :")
      self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR3_AGE)
      self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR3_HEIGHT)
      self.contents.draw_text(x + 30, y + 40, 140, 32, FYRECUSTOMSTATUS::ACTOR3_CLASS)
      self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR3_ELEMENT)
      self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR3_LINE1)
      self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR3_LINE2)
      self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR3_LINE3)
      self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR3_LINE4)
      self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR3_LINE5)
    else
    end
    if actor.id == 4
      cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR4_LINE1).width
      cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR4_LINE2).width
      cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR4_LINE3).width
      cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR4_LINE4).width
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 40, 32, "Age :")
      self.contents.draw_text(x, y + 20, 40, 32, "Height :")
      self.contents.draw_text(x, y + 40, 40, 32, "Class :")
      self.contents.draw_text(x, y + 60, 40, 32, "Element :")
      self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR4_AGE)
      self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR4_HEIGHT)
      self.contents.draw_text(x + 30, y + 40, 140, 32, FYRECUSTOMSTATUS::ACTOR4_CLASS)
      self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR4_ELEMENT)
      self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR4_LINE1)
      self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR4_LINE2)
      self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR4_LINE3)
      self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR4_LINE4)
      self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR4_LINE5)
    else
    end
    if actor.id == 5
      cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR5_LINE1).width
      cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR5_LINE2).width
      cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR5_LINE3).width
      cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR5_LINE4).width
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 40, 32, "Age :")
      self.contents.draw_text(x, y + 20, 40, 32, "Height :")
      self.contents.draw_text(x, y + 40, 40, 32, "Class :")
      self.contents.draw_text(x, y + 60, 40, 32, "Element :")
      self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR5_AGE)
      self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR5_HEIGHT)
      self.contents.draw_text(x + 30, y + 40, 140, 32, FYRECUSTOMSTATUS::ACTOR5_CLASS)
      self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR5_ELEMENT)
      self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR5_LINE1)
      self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR5_LINE2)
      self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR5_LINE3)
      self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR5_LINE4)
      self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR5_LINE5)
    else
    end
    if actor.id == 6
      cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR6_LINE1).width
      cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR6_LINE2).width
      cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR6_LINE3).width
      cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR6_LINE4).width
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 40, 32, "Age :")
      self.contents.draw_text(x, y + 20, 40, 32, "Height :")
      self.contents.draw_text(x, y + 40, 40, 32, "Class :")
      self.contents.draw_text(x, y + 60, 40, 32, "Element :")
      self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR6_AGE)
      self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR6_HEIGHT)
      self.contents.draw_text(x + 30, y + 40, 140, 32, FYRECUSTOMSTATUS::ACTOR6_CLASS)
      self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR6_ELEMENT)
      self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR6_LINE1)
      self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR6_LINE2)
      self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR6_LINE3)
      self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR6_LINE4)
      self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR6_LINE5)
    else
    end
    if actor.id == 7
      cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR7_LINE1).width
      cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR7_LINE2).width
      cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR7_LINE3).width
      cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR7_LINE4).width
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 40, 32, "Age :")
      self.contents.draw_text(x, y + 20, 40, 32, "Height :")
      self.contents.draw_text(x, y + 40, 40, 32, "Class :")
      self.contents.draw_text(x, y + 60, 40, 32, "Element :")
      self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR7_AGE)
      self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR7_HEIGHT)
      self.contents.draw_text(x + 30, y + 40, 140, 32, FYRECUSTOMSTATUS::ACTOR7_CLASS)
      self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR7_ELEMENT)
      self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR7_LINE1)
      self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR7_LINE2)
      self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR7_LINE3)
      self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR7_LINE4)
      self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR7_LINE5)
    else
    end
    if actor.id == 8
      cw1 = contents.text_size(FYRECUSTOMSTATUS::ACTOR8_LINE1).width
      cw2 = contents.text_size(FYRECUSTOMSTATUS::ACTOR8_LINE2).width
      cw3 = contents.text_size(FYRECUSTOMSTATUS::ACTOR8_LINE3).width
      cw4 = contents.text_size(FYRECUSTOMSTATUS::ACTOR8_LINE4).width
      self.contents.font.color = system_color
      self.contents.draw_text(x, y, 40, 32, "Age :")
      self.contents.draw_text(x, y + 20, 40, 32, "Height :")
      self.contents.draw_text(x, y + 40, 40, 32, "Class :")
      self.contents.draw_text(x, y + 60, 40, 32, "Element :")
      self.contents.draw_text(x, y + 90, 80, 32, "Biography :")
      self.contents.font.color = normal_color
      self.contents.draw_text(x + 40, y, 24, 32, FYRECUSTOMSTATUS::ACTOR8_AGE)
      self.contents.draw_text(x + 40, y + 20, 24, 32, FYRECUSTOMSTATUS::ACTOR8_HEIGHT)
      self.contents.draw_text(x + 30, y + 40, 140, 32, FYRECUSTOMSTATUS::ACTOR8_CLASS)
      self.contents.draw_text(x + 50, y + 60, 24, 32, FYRECUSTOMSTATUS::ACTOR8_ELEMENT)
      self.contents.draw_text(x, y + 110, cw1, 32, FYRECUSTOMSTATUS::ACTOR8_LINE1)
      self.contents.draw_text(x, y + 130, cw2, 32, FYRECUSTOMSTATUS::ACTOR8_LINE2)
      self.contents.draw_text(x, y + 150, cw3, 32, FYRECUSTOMSTATUS::ACTOR8_LINE3)
      self.contents.draw_text(x, y + 170, cw4, 32, FYRECUSTOMSTATUS::ACTOR8_LINE4)
      self.contents.draw_text(x, y + 190, cw4, 32, FYRECUSTOMSTATUS::ACTOR8_LINE5)
    else
    end
  end
 
 
  #--------------------------------------------------------------------------
  # * Make State Text String for Drawing
  #     actor       : actor
  #     width       : draw spot width
  #     need_normal : Whether or not [normal] is needed (true / false)
  #--------------------------------------------------------------------------
  def make_battler_state_text(battler, width, need_normal)
    # Get width of brackets
    brackets_width = self.contents.text_size("[]").width
    # Make text string for state names
    text = ""
    for i in battler.states
      if $data_states[i].rating >= 1
        if text == ""
          text = $data_states[i].name
        else
          new_text = text + "/" + $data_states[i].name
          text_width = self.contents.text_size(new_text).width
          if text_width > width - brackets_width
            break
          end
          text = new_text
        end
      end
    end
    # If text string for state names is empty, make it [normal]
    if text == ""
      if need_normal
        text = "[Normal]"
      end
    else
      # Attach brackets
      text = "[" + text + "]"
    end
    # Return completed text string
    return text
  end
  #--------------------------------------------------------------------------
  # * Draw State
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #     width : draw spot width
  #--------------------------------------------------------------------------
  def draw_actor_state(actor, x, y, width = 120)
    text = make_battler_state_text(actor, width, true)
    self.contents.font.color = actor.hp == 0 ? knockout_color : normal_color
    self.contents.draw_text(x, y, width, 32, text)
  end

  #--------------------------------------------------------------------------
  # * Draw HP
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #     width : draw spot width
  #--------------------------------------------------------------------------
  def draw_actor_hp(actor, x, y, width = 144)
    # Draw "HP" text string
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 32, 32, $data_system.words.hp)
    # Calculate if there is draw space for MaxHP
    if width - 32 >= 108
      hp_x = x + width - 108
      flag = true
    elsif width - 32 >= 48
      hp_x = x + width - 48
      flag = false
    end
    # Draw HP
    self.contents.font.color = actor.hp == 0 ? knockout_color :
      actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color
    self.contents.draw_text(hp_x, y, 32, 32, actor.hp.to_s, 2)
    # Draw MaxHP
    if flag
      self.contents.font.color = normal_color
      self.contents.draw_text(hp_x + 32, y, 12, 32, "/", 1)
      self.contents.draw_text(hp_x + 46, y, 48, 32, actor.maxhp.to_s)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw SP
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #     width : draw spot width
  #--------------------------------------------------------------------------
  def draw_actor_sp(actor, x, y, width = 144)
    # Draw "SP" text string
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 32, 32, $data_system.words.sp)
    # Calculate if there is draw space for MaxHP
    if width - 32 >= 108
      sp_x = x + width - 108
      flag = true
    elsif width - 32 >= 48
      sp_x = x + width - 48
      flag = false
    end
    # Draw SP
    self.contents.font.color = actor.sp == 0 ? knockout_color :
      actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color
    self.contents.draw_text(sp_x, y, 32, 32, actor.sp.to_s, 2)
    # Draw MaxSP
    if flag
      self.contents.font.color = normal_color
      self.contents.draw_text(sp_x + 32, y, 12, 32, "/", 1)
      self.contents.draw_text(sp_x + 46, y, 48, 32, actor.maxsp.to_s)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Parameter
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #     type  : parameter type (0-6)
  #--------------------------------------------------------------------------
  def draw_actor_parameter(actor, x, y, type)
    case type
    when 0
      parameter_name = $data_system.words.atk
      parameter_value = actor.atk
    when 1
      parameter_name = $data_system.words.pdef
      parameter_value = actor.pdef
    when 2
      parameter_name = $data_system.words.mdef
      parameter_value = actor.mdef
    when 3
      parameter_name = $data_system.words.str
      parameter_value = actor.str
    when 4
      parameter_name = $data_system.words.dex
      parameter_value = actor.dex
    when 5
      parameter_name = $data_system.words.agi
      parameter_value = actor.agi
    when 6
      parameter_name = $data_system.words.int
      parameter_value = actor.int
    end
    self.contents.font.color = system_color
    self.contents.draw_text(x, y + 2, 120, 32, parameter_name)
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 105, y, 36, 32, parameter_value.to_s, 2)
  end
 
  #--------------------------------------------------------------------------
  # * Draw Item Name
  #     item : item
  #     x    : draw spot x-coordinate
  #     y    : draw spot y-coordinate
  #--------------------------------------------------------------------------
  def draw_item_name(item, x, y)
    if item == nil
      return
    end
    bitmap = RPG::Cache.icon(item.icon_name)
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24))
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 28, y, 212, 32, item.name)
  end

  #--------------------------------------------------------------------------
  # * Draw Slant Bar(by SephirothSpawn)
  #--------------------------------------------------------------------------
  def draw_slant_bar(x, y, min, max, width = 152, height = 6,
      bar_color = Color.new(150, 0, 0, 255), end_color = Color.new(255, 255, 60, 255))
    # Draw Border
    for i in 0..height
      self.contents.fill_rect(x + i, y + height - i, width + 1, 1, Color.new(50, 50, 50, 255))
    end
    # Draw Background
    for i in 1..(height - 1)
      r = 100 * (height - i) / height + 0 * i / height
      g = 100 * (height - i) / height + 0 * i / height
      b = 100 * (height - i) / height + 0 * i / height
      a = 255 * (height - i) / height + 255 * i / height
      self.contents.fill_rect(x + i, y + height - i, width, 1, Color.new(r, b, g, a))
    end
    # Draws Bar
    for i in 1..( (min / max.to_f) * width - 1)
      for j in 1..(height - 1)
        r = bar_color.red * (width - i) / width + end_color.red * i / width
        g = bar_color.green * (width - i) / width + end_color.green * i / width
        b = bar_color.blue * (width - i) / width + end_color.blue * i / width
        a = bar_color.alpha * (width - i) / width + end_color.alpha * i / width
        self.contents.fill_rect(x + i + j, y + height - j, 1, 1, Color.new(r, g, b, a))
      end
    end
  end
end
#==============================================================================
# ** Window_Status
#------------------------------------------------------------------------------
#  This window displays full status specs on the status screen.
#==============================================================================

class Window_Status < Window_BaseStatus
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(0, 0, 640, 480)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = actor
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.font.name = "Century Gothic"
    self.contents.font.size = 18
    draw_actor_full(@actor, 490, 450)
    draw_actor_name(@actor, 4, 0)
    draw_actor_class(@actor, 4 + 144, 0)
    draw_actor_level(@actor, 80, 0)
    draw_actor_state(@actor, 300, 0)
    draw_slant_bar(x + 43, y + 58, @actor.hp, @actor.maxhp, 65, 6, bar_color = Color.new(200, 200, 255, 255), end_color = Color.new(24, 68, 196, 255))
    draw_slant_bar(x + 43, y + 88, @actor.sp, @actor.maxsp, 65, 6, bar_color = Color.new(245, 216, 223, 255), end_color = Color.new(188, 2, 218, 255))
    draw_slant_bar(x + 205, y + 58, @actor.exp_s.to_i, @actor.next_exp_s.to_i, 130, 6, bar_color = Color.new(130, 255, 130, 255), end_color = Color.new(70, 255, 70, 255))
    draw_actor_hp(@actor, 4, 42, 144)
    draw_actor_sp(@actor, 4, 72, 144)
    draw_slant_bar(x + 95, y + 136, @actor.atk, FYRECUSTOMSTATUS::ST_MAX, 80, 6, bar_color = Color.new(255, 50, 50, 255), end_color = Color.new(196, 24, 68, 255))
    draw_actor_parameter(@actor, 4, 120, 0)
    draw_slant_bar(x + 95, y + 156, @actor.pdef, FYRECUSTOMSTATUS::ST_MAX, 80, 6, bar_color = Color.new(50, 255, 50, 255), end_color = Color.new(196, 24, 68, 255))
    draw_actor_parameter(@actor, 4, 140, 1)
    draw_slant_bar(x + 95, y + 176, @actor.mdef, FYRECUSTOMSTATUS::ST_MAX, 80, 6, bar_color = Color.new(50, 50, 255, 255), end_color = Color.new(196, 24, 68, 255))
    draw_actor_parameter(@actor, 4, 160, 2)
    draw_slant_bar(x + 281, y + 136, @actor.str, FYRECUSTOMSTATUS::ST_MAX, 80, 6, bar_color = Color.new(255, 50, 50, 255), end_color = Color.new(196, 24, 68, 255))
    draw_actor_parameter(@actor, 190, 120, 3)
    draw_slant_bar(x + 281, y + 156, @actor.dex, FYRECUSTOMSTATUS::ST_MAX, 80, 6, bar_color = Color.new(255, 128, 0, 255), end_color = Color.new(196, 24, 68, 255))
    draw_actor_parameter(@actor, 190, 140, 4)
    draw_slant_bar(x + 281, y + 176, @actor.agi, FYRECUSTOMSTATUS::ST_MAX, 80, 6, bar_color = Color.new(50, 255, 50, 255), end_color = Color.new(196, 24, 68, 255))
    draw_actor_parameter(@actor, 190, 160, 5)
    draw_slant_bar(x + 281, y + 196, @actor.int, FYRECUSTOMSTATUS::ST_MAX, 80, 6, bar_color = Color.new(50, 50, 255, 255), end_color = Color.new(196, 24, 68, 255))
    draw_actor_parameter(@actor, 190, 180, 6)
    draw_actor_bio(@actor, 5, 200)
    self.contents.font.color = system_color
    self.contents.draw_text(165, 42, 80, 32, "Exp.")
    self.contents.font.color = normal_color
    self.contents.draw_text(165, 42, 84, 32, @actor.exp_s, 2)
    self.contents.draw_text(165 + 35, 42, 84, 32, "/", 2)
    self.contents.draw_text(165 + 82, 42, 84, 32, @actor.next_exp_s, 2)
    self.contents.font.color = system_color
    self.contents.draw_text(320, 160, 96, 32, "equipment")
    draw_item_name($data_weapons[@actor.weapon_id], 320 + 16, 208)
    draw_item_name($data_armors[@actor.armor1_id], 320 + 16, 256)
    draw_item_name($data_armors[@actor.armor2_id], 320 + 16, 304)
    draw_item_name($data_armors[@actor.armor3_id], 320 + 16, 352)
    draw_item_name($data_armors[@actor.armor4_id], 320 + 16, 400)
  end
  def dummy
    self.contents.font.color = system_color
    self.contents.draw_text(320, 112, 96, 32, $data_system.words.weapon)
    self.contents.draw_text(320, 176, 96, 32, $data_system.words.armor1)
    self.contents.draw_text(320, 240, 96, 32, $data_system.words.armor2)
    self.contents.draw_text(320, 304, 96, 32, $data_system.words.armor3)
    self.contents.draw_text(320, 368, 96, 32, $data_system.words.armor4)
    draw_item_name($data_weapons[@actor.weapon_id], 320 + 24, 144)
    draw_item_name($data_armors[@actor.armor1_id], 320 + 24, 208)
    draw_item_name($data_armors[@actor.armor2_id], 320 + 24, 272)
    draw_item_name($data_armors[@actor.armor3_id], 320 + 24, 336)
    draw_item_name($data_armors[@actor.armor4_id], 320 + 24, 400)
  end
end

#==============================================================================
# ** Scene_Status
#------------------------------------------------------------------------------
#  This class performs status screen processing.
#==============================================================================

class Scene_Status
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor_index : actor index
  #--------------------------------------------------------------------------
  def initialize(actor_index = 0, equip_index = 0)
    @actor_index = actor_index
  end
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    # Get actor
    @actor = $game_party.actors[@actor_index]
    # Make status window
    @status_window = Window_Status.new(@actor)
    # Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of windows
    @status_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to menu screen
      $scene = Scene_Menu.new(3)
      return
    end
    # If R button was pressed
    if Input.trigger?(Input::RIGHT)
      # Play cursor SE
      $game_system.se_play($data_system.cursor_se)
      # To next actor
      @actor_index += 1
      @actor_index %= $game_party.actors.size
      # Switch to different status screen
      $scene = Scene_Status.new(@actor_index)
      return
    end
    # If L button was pressed
    if Input.trigger?(Input::LEFT)
      # Play cursor SE
      $game_system.se_play($data_system.cursor_se)
      # To previous actor
      @actor_index += $game_party.actors.size - 1
      @actor_index %= $game_party.actors.size
      # Switch to different status screen
      $scene = Scene_Status.new(@actor_index)
      return
    end
  end
end

and a slightly edited Guillaumme777's Equipment script. (Really long...)
Too long, attached it instead.

The error is stated to be on line 757 of the status menu script. The line reads   
@status_window = Window_Status.new(@actor)
and yeah, that goes into Window_Status... Which heads somewhere else. Both scripts work completely fine on their own.

If you need more information, I'll gladly provide it. Thanks in advance.
« Last Edit: July 09, 2011, 11:05:18 AM by DeckuZora »

***
Rep:
Level 82
We learn by living...
are you trying to create a second status window?
that might make it work a little smoother.

for example

Code: [Select]
#==============================================================================
# ** Window_Status
#------------------------------------------------------------------------------
#  This window displays full status specs on the status screen.
#==============================================================================

class Window_Status_2 < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(0, 0, 640, 480)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = actor
    refresh
  end
    #--------------------------------------------------------------------------
  # * Refresh: Edited to Contain random other crap
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    draw_actor_graphic(@actor, 40, 112)
    self.contents.draw_text(348, 0, 180, 32, "Status Menu II")
    draw_actor_name(@actor, 4, 0)
    draw_actor_class(@actor, 4 + 144, 0)
   # Random Crap 1
    draw_actor_parameter(@actor, 96, 48, 9)
    self.contents.draw_text(96, 80, 150, 32, "Stuff")
   
    # More stats!
    draw_actor_parameter(@actor, 96, 160, 10)
    draw_actor_parameter(@actor, 96, 192, 11)
    draw_actor_parameter(@actor, 96, 224, 12)
   
    draw_actor_parameter(@actor, 96, 256, 13)
    draw_actor_parameter(@actor, 96, 288, 14)
    draw_actor_parameter(@actor, 96, 320, 15)

    draw_actor_parameter(@actor, 96, 352, 16)
    draw_actor_parameter(@actor, 96, 384, 17)
    draw_actor_parameter(@actor, 96, 416, 18)
   
    #even More stats!
   
    draw_actor_parameter(@actor, 320, 160, 19)
    draw_actor_parameter(@actor, 320, 192, 20)
    draw_actor_parameter(@actor, 320, 224, 21)
   
    draw_actor_parameter(@actor, 320, 256, 22)
    draw_actor_parameter(@actor, 320, 288, 23)
    draw_actor_parameter(@actor, 320, 320, 24)

    draw_actor_parameter(@actor, 320, 352, 25)
    draw_actor_parameter(@actor, 320, 384, 26)
    draw_actor_parameter(@actor, 320, 416, 27)
   
    self.contents.font.color = system_color
    # self.contents.draw_text(320, 48, 120, 32, "Pts. Available") =28
     self.contents.draw_text(320, 80, 120, 32, "Points Left")
    self.contents.font.color = normal_color
    draw_actor_parameter(@actor, 320, 48, 28)
   #blah blah blah more stuff
end


and stick this crap in main

Code: [Select]
#==============================================================================
# ** Scene_Status
#------------------------------------------------------------------------------
#  This class performs status screen processing.
#==============================================================================

class Scene_Status
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor_index : actor index
  #--------------------------------------------------------------------------
  def initialize(actor_index = 0, equip_index = 0, window_2 = false)
    @actor_index = actor_index
    @window_2 = window_2 #this is the on/off button, not a window
  end

I don't know... maybe your new status window thing is looping on itself or something and you need to separate it?

**
Rep: +0/-0Level 81
Sick and tired of being sick and tired...
Um, moreover, I need both scripts to work as intended. So the status window to work when you pull it up, and the equipment script to not interfere with that. In other words, the equipment script overwrites the status script... I'm going to try the method you gave me, but if you could do more, it'd be appreciated.

Thank you very much for the help. Get back to me, okay?

Edit: nope... I got syntax errors in the Window_Scene script for the last few lines.
« Last Edit: December 15, 2010, 07:02:48 AM by DeckuZora »