[RMVX ACE] HOW TO ADD A HELP WINDOW TO ACTOR COMMAND?

Posts

Pages: 1
Me again, again.

I'm a little apprehensive about this post, because I'm not entirely sure just how much effort is needed for what I'm about to ask. If the request is too much of a hassle to take on, I would understand.

Anyways, on to my problem: I'm trying to get the Help window to appear in Actor Command, exactly how it's seen in Window_BattleItem and Window_BattleSkill.

I need to mention up front that my project uses a script that skips the Party Command window and goes right to Actor Command, and another script that adds Escape to Actor Command. These two scripts are very lightweight and likely won't cause any conflicts, but if you'd still like to see them just in case, that's fine!

So, bearing in mind that my Actor Command window isn't exactly vanilla, the Help window will need to pull up descriptions for these commands:

Attack
Defend
Item
Escape


One problem I'm foreseeing is that, while skills like Attack and Defend have editable description boxes, commands like Escape and Item do not. (At least not that I know of.) So, technically, I would also need a way to assign descriptions to those commands.

Ugh...

Thank you for taking the time to read this.
Fingers crossed.
Marrend
Guardian of the Description Thread
21806
This has been very, very weird. So, the code I'm using as of this writing looks like...

class Window_Help < Window_Base
  def set_text(text)
    msgbox(text)
    if text != @text
      @text = text
      refresh
    end
  end
end

class Window_ActorCommand < Window_Command
  def initialize(help_window)
    super(0, 0)
    self.openness = 0
    deactivate
    @actor = nil
    @help_window = help_window
  end
  
  def show
    if @help_window != nil
      @help_window.show
    end
    super
  end
  
  def hide
    if @help_window != nil
      @help_window.hide
    end
    super
  end
  
  def refresh
    super
    case self.index
    when 0
      #Attack
      show
      @help_window.set_text("Physical attack on an enemy.")
    when 1
      #Defend
      show
      @help_window.set_text("Defends against attacks.")
    when 2
      #Item"
      show
      @help_window.set_text("Uses an item.")
    when 3
      #Escape
      show
      @help_window.set_text("Attempts to escape from battle.")
    else
      hide
    end
  end
end

class Scene_Battle < Scene_Base
  def create_all_windows
    create_help_window
    create_message_window
    create_scroll_text_window
    create_log_window
    create_status_window
    create_info_viewport
    create_party_command_window
    create_actor_command_window
    #create_help_window
    create_skill_window
    create_item_window
    create_actor_window
    create_enemy_window
  end
  
  def create_actor_command_window
    @actor_command_window = Window_ActorCommand.new(@help_window)
    @actor_command_window.viewport = @info_viewport
    @actor_command_window.set_handler(:attack, method(:command_attack))
    @actor_command_window.set_handler(:skill,  method(:command_skill))
    @actor_command_window.set_handler(:guard,  method(:command_guard))
    @actor_command_window.set_handler(:item,   method(:command_item))
    @actor_command_window.set_handler(:cancel, method(:prior_command))
    @actor_command_window.x = Graphics.width
  end
end

...this mess of code. However, from what I can tell, the text only updates once (for reasons I cannot figure out), and even then, the textbox ends up being empty.

Like, the Window_Help.set_text function apparently gets called twice (thanks for that, msgbox). The first call may have parameters, but, second call does not, so, it displays nothing?


Sorry, I'm rather confused over the whole ordeal.

*Edit: I think I understand it better now. It's...

class Window_Help < Window_Base
  def set_item(item)
    set_text(item ? item.description : "")
  end
end

...this function that keeps resetting the text. Darigaaz, I HATE-HATE-HATE if-statements written this way! Er, anyway, the way I'm reading this, selections on this particular list aren't "item"s in the sense that they have a "description" property. Therefore, it uses the "else" portion of this if-condition statement, which is to generate no text. Given what I'm seeing, it's being called after the initial set_text method, so, it doesn't matter what I would have put in there!

Saying that, I'm not sure what the best move is, here!
Well, the original code did something fairly unexpected! Instead of a Help window, it made this:

http://i.imgur.com/jxdqhb3.png

But the edit you made to the Window_Help portion did get a Help window to appear! However, like you said, it's blank, and also the Actor Command window is now missing.

I'm super appreciative that you even took a look at my problem.

I managed to find this through google:

http://www.diamondandplatinum3.net/rpg-maker-scripts/rgss3-vxa/system-utilities/help-window-for-choices/#comment-96

It's a script that may very well do what I'm looking for, but I can't actually get past the Pastebin link to find out. It's called "Help Window for Choices", by DP3. I'm considering maybe trying to get in contact with him, but ...it looks like she hasn't been active for years.

Also, just as a side note: Darigaaz? As in... this Darigaaz?

http://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=220499

*loves playing Burn in MtG*
Marrend
Guardian of the Description Thread
21806
I'm thinking this link might be what the patsebin eventually links to, once you get past the add.


To wit, I've been playing Commander each week for years on end, and have used "Darigaaz" as a replacement for "Dear God" because I'm a crazy person. I mean, gee, I use Game of Chaos in conjunction with Chance Encounter with one deck!
Woah, it's the script!! There may yet be hope! Thanks a ton!

Hah!
I give those cards a big thumbs up. *wink*

*WINK*

I used to have a Modern coin flip deck that was the scourge of my play group. Man. Now I kinda want to tinker with it...
Pages: 1