Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Getting Face graphics to appear in an editted default battle system

------------------
Editted Due to Progress
--------------------------

Ok, so far, I've played around with the scripts, and have managed to get full screen battlebacks (yay!), and got the charactersets for my heroes to appear on the battlefield instead of their battlers. (Though, I kinda took the easy way out on that part - I just made their battlers to be a side view pose of their charactersets.

I've editted my Battle Status window, Help Window, and Party command window to be in the positions I want and the information within them to show up the way I want.

http://img.photobucket.com/albums/v241/ZericCallavis/CBS_1.png[/img]

Yay, prettiness! (Well, I'm proud of it, at least)

But now I'm faced with another problem. I want to edit the Command window that appears in battle, but so far my efforts have proven futile.

Here's what I've managed to get it to right now:

http://img.photobucket.com/albums/v241/ZericCallavis/CBS_2.png[/img]

What i want to do with it is this (and hopefully this is where I can get some master scripter to guide me):

I want the Command Window to appear in the center, much like the Party Command Window in the first pic. But, I don't want them to appear as 1 column, 4 rows.

I would like to have the Window Command appear at x-coordinate: 160, y-coordinate: 20 (That's the same as the party command and the help window), and the four battle choices (attack, skill, item, defend) to show up in a 2 column, 2 row format, with the faceset of the active hero in the middle. I know my description is kinda hard to follow, so I'ma try to ASCII art it:

http://img.photobucket.com/albums/v241/ZericCallavis/Example.png[/img]


Hopefully that'll be a helpful visual. As I've said, I've played around with this all day, but my scripting skills are still in the budding stages. I thought that I could make the changes to the Window_Command script, but in doing that I messed up the command window that appears on the title screen (New Game, Continue, Quit), and I couldn't figure out how to make it into a 2 row 2 column anyway. (Though I managed to turn the Skill Window into a single column one...go figure).

I appreciate any and all help, and I eagerly await your replies.



----------------
Progress
---------------

I managed to manipulate the Window Command Box into the format I wanted, (though I made a replica of Window_Command to be used specifically for Scene_Battle, so as to not mess up the other Command windows in the game, particularly the one in Scene_Title).

Here's my code:

Code:
#==============================================================================
# â–  Window_Command
#------------------------------------------------------------------------------
#  
#==============================================================================

class Window_Command2 < Window_Selectable
  #--------------------------------------------------------------------------
  # 
  #	 
  #	
  #--------------------------------------------------------------------------
  def initialize(width, commands)
	super(0, 64, 480, 100)
	@item_max = 4
	@column_max = 2
	@commands = ["	   Attack", "		  Skill", "		   Item", "	   Defend"]
	self.contents = Bitmap.new(width + 75, @item_max * 32)
	self.contents.font.name = $fontface
	self.contents.font.size = $fontsize
	refresh
	self.index = 0
  end
  #--------------------------------------------------------------------------
  # 
  #--------------------------------------------------------------------------
  def refresh
	self.contents.clear
	for i in 0...@item_max
	  draw_item(i, normal_color)
	end
  end
  #--------------------------------------------------------------------------
  # 
  #	 
  #	 
  #--------------------------------------------------------------------------
  def draw_item(index, color)
	self.contents.font.color = color
	x = 4 + index % 2 * (170)
	y = index / 2 * 32
	rect = Rect.new(x, y, self.width / @column_max - 32, 32)
	self.contents.draw_text(x, y, 204, 32, @commands[index], 0)
  end
  #--------------------------------------------------------------------------
  # 
  #	 
  #--------------------------------------------------------------------------
  def disable_item(index)
	draw_item(index, disabled_color)
  end
end

And a pic of my progress:

http://img.photobucket.com/albums/v241/ZericCallavis/Cbs_3.png[/img]


Sloppy, I'm sure, but like I said, I'm still learning Ruby. However as you can tell from my pic, I'm missing the faceset in the middle. Since my battle system implements the Battle Results script that someone made (probably Trickster/Seph, but I might be wrong), I browsed through it and found a draw_actor_face on one of the lines, but my playing around with it ended up unproductive. Probably because I have the default Window_Base and no method to define the use of facesets.....however, the implementation of draw_actor_graphic gave me an undefined error, so I'm thinking I'm have to try something else.

So, I'm making progress, and I'm learning at the same time. If someone has an idea on how to get a faceset to appear in the Command Window, I'm willing to try it. (If it helps any...the facesets I'm planning on using are 96x96 pixels.)


------------
Second Edit
--------------

I have since included a draw_actor_face method in Window_Base:

Code:
  def draw_actor_face(actor, x, y)
  bitmap = RPG::Cache.picture("MenuFace/#{actor.id}")
   cw = bitmap.width 
   ch = bitmap.height 
   src_rect = Rect.new(0, 0, cw, ch)
   self.contents.blt(x - cw/5, y - ch, bitmap, src_rect)
 end

Now I just need help figuring out how to get Window_Command2 to utilize it.
 
I appreciate the input, but I have tried that and I got an error.

(I'm not at my computer right now, so I can't give you the exact error...I think it was something to do with actor not being defined.)

I've already defined draw_actor_face in Window_Base (on a side note - I think I have a problem with the method or a conflict with another script. It's hard to explain without being at my comp.)

Maybe I'm thinking to hard about this, but what I think I need to do is (either in the editted Window_Command, or one of the Scene_battles) have a code that draws the graphic at x,y coordinates based on the currently active actor. This is the part I'm having trouble with.

Sorry for the quick and somewhat vague response, but I'ma be late for my next class if I don't leave now.

I'll check back in about an hour and a half.
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top