Submit Your Article


 
RPG Maker

Welcome Guest ( Log In | Register )


  Games Resources RPG Maker VX RPG Maker XP Scripts Tutorials Downloads

> Jens009's Simple HUD, Show HP/SP/State in map
jens009
post Aug 10 2008, 09:05 PM
Post #1


L Did you know? Death gods... only eat apples
Group Icon

Group: +Gold Member
Posts: 2,976
Type: Scripter
RM Skill: Skilled




Simple HUD
Version 2.0
Author Jens009
Release DateAugust 9, 2008

Updated, August 10, 2008
Exclusive Script at RPG RPG Revolution


Introduction
So I was in the RGSS2 Request forum and VerifyedRasta requested for a simple HUD that shows an actor's HP and SP. So I took on the request and here it is.

Features
-Remove HUD with a call script
-Change maximum actors shown in HUD
-Can change update methods This decreases lag and increases performance of script
-Either Always update HUD on map or update the HUD only when necessary

- Less buggy and more flexible.

Script
[Show/Hide] Jens009's Simple HUD version 2.0

CODE
#============================================================================
# Jens009 Simple HP/SP/State HUD
# Version 2.0
# Release Date: August 11,2008
# Description: Display an HP/SP and State HUD information in map.
# Compatibility: Should be compatible with any system
# Configuration:
#   I. Turning off the HUD in game
#       use the call script $game_system.show_hud = true/false
#           true = show HUD, false = disable HUD
#   II. Changing maximum information shown
#        look at SHOW_MAX under JCONFIG, you can change the value to show
#        how many of the actors in the party to display their information
#        by default, it is set to show only 2 actors.
#   III. Changing maximum information shown in game
#        use the call script JCONFIG::SHOW_MAX = *integer*
#        You can change the amount of actors displayed in the HUD in game.
#        simply change integer to the value you want.
#   IV.  Changing Update methods
#        if you want the HUD to always update, set ALWAYS_UPDATE_HUD to true
#        but if you want to only update the HUD whenever you want to, set
#        this to false.
#        When $game_sysyem.always_update is false, you can update the hud
#        manually in game using the call script $game_system.refresh_hud = true.
#        this will refresh the hud information once.
#        However, you can also switch between always updating the HUD and
#        only updating the hud once during in game.
#        Simply use the call script:
#           $game_sysyem.always_update = true/false
#        and to reupdate once
#           $game_system.refresh_hud = true
#
# Optimization to achieve higher FPS
#    1) Set SHOW_MAX to a low value
#    You can also:
#    2) Set $game_sysyem.always_update = false
#      2.1) Use $game_temp.refresh_hud = true to reupdate the hud manually.
#============================================================================
module JCONFIG
  SHOW_MAX = 4 # By default, show 4 actor's information
end

#======================================
# Game_System edit
#=====================================
class Game_System
  # Add new instance
  attr_accessor :refresh_hud
  attr_accessor :show_hud
  attr_accessor :always_update
  alias jens009_initialize_hud initialize
  def initialize
    # Initialize instances
    @show_hud = true
    @always_update = true
    @refresh_hud = false
    # Call default methods
    jens009_initialize_hud
  end
  
end

#=============================================================================
# Window Hud < Window_Base
# Description: Handles Information to be shown in HUD
#=============================================================================

class Window_Hud < Window_Base
#==========================
# Initialize Values
#==========================
  def initialize
    super(0,0,544,110)
    self.opacity = 0
    self.visible = false if $game_system.show_hud == false
    refresh
  end
#=========================
# Create Information
#===========================
   def refresh
    self.contents.clear
    @item_max = JCONFIG::SHOW_MAX
    @party_size = $game_party.members.size
      for actor in $game_party.members
        x = actor.index * 120
        y = 0
        if actor.index < @item_max
          draw_actor_information(actor, x, y)
        end
      end
    end
  
  def draw_actor_information(actor, x, y)
    draw_actor_name(actor,x,y + 0)
    draw_actor_hp(actor, x, y + 16, 96)
    draw_actor_mp(actor, x, y + 32, 96)
    draw_actor_state(actor, x, y + 54)
  end
    
#=================================  
# Define Update
#====================================
  def update
    refresh
  end

end
#===============================
# Start Scene_Map edit
#===============================
class Scene_Map
  # Alias methods main, update and terminate
  alias jens009_hud_main main
  alias jens009_hud_update update
  alias jens009_hud_terminate terminate
  # Edit Main
  def main
    # Call HUD
    @hud = Window_Hud.new
    # Call previous Methods
    jens009_hud_main
  end

  # Edit Update
  def update
    # Update hud only if $game_system.show_hud is true
    if $game_system.show_hud and $game_system.always_update
      @hud.update
    end
    
    if $game_system.refresh_hud == true
        @hud.update
       $game_system.refresh_hud = false
    end
    
    if $game_system.show_hud == true
      @hud.visible = true
    else
      @hud.visible = false
    end
    # Call previous methods
    jens009_hud_update
  end

  # Edit Terminate
  def terminate
    # Call previous methods, dispose of other windows first before HUD
    jens009_hud_terminate
    # Dispose HUD
    @hud.dispose
  end

#========================
# End of Scene_Map edit
#========================
end


[Show/Hide] Jens009's Simple HUD version 1.0

CODE
#============================================================================
# Jens009 Simple HP/SP/State HUD
# Version 1.0
# Release Date: August 10,2008
# Description: Display an HP/SP and State HUD information in map.
# Compatibility: Should be compatible with any system
# Configuration:
#   I. Turning off the HUD in game
#       use the call script $game_system.show_hud = true/false
#           true = show HUD, false = disable HUD
#   II. Changing maximum information shown
#        look at SHOW_MAX under JCONFIG, you can change the value to show
#        how many of the actors in the party to display their information
#        by default, it is set to show only 2 actors.
#   III. Changing maximum information shown in game
#        use the call script JCONFIG::SHOW_MAX = *integer*
#        You can change the amount of actors displayed in the HUD in game.
#        simply change integer to the value you want.
# Optimization
#   For the sake of simplicity, I made this script as user friendly as
#   much as possible. Because of this, the game map will get laggy if
#   there are a lot of actors are shown in the HUD all at the same time
#   it is recommended that you show only 2 actors or less for a higher FPS.
#  
#   Besides, this HUD was meant to show only one actor at a time.
#============================================================================
module JCONFIG
  SHOW_MAX = 1 # By default, show only 1 actor's information
end

#======================================
# Game_System edit
#=====================================
class Game_System
  # Add new instance
  attr_accessor :show_hud
  alias jens009_initialize_hud initialize
  def initialize
    # Initialize instances
    @show_hud = true
    # Call default methods
    jens009_initialize_hud
  end
  
end

#=============================================================================
# Window Hud < Window_Base
# Description: Handles Information to be shown in HUD
#=============================================================================

class Window_Hud < Window_Base
#==========================
# Initialize Values
#==========================
  def initialize
    super(0,0,544,110)
    self.opacity = 0
    self.visible = false if $game_system.show_hud == false
    refresh
  end
#=========================
# Create Information
#===========================
   def refresh
    self.contents.clear
    @item_max = JCONFIG::SHOW_MAX + 1
    for i in 1...@item_max
      actor = $game_actors[i]
      x = actor.index * 120
      draw_actor_name(actor,x,0)
      draw_actor_hp(actor, x, 16, 96)
      draw_actor_mp(actor, x, 32, 96)
      draw_actor_state(actor, x, 54)
    end
  end
#=================================  
# Define Update
#====================================
  def update
    refresh
  end

end
#===============================
# Start Scene_Map edit
#===============================
class Scene_Map
  # Alias methods main, update and terminate
  alias jens009_hud_main main
  alias jens009_hud_update update
  alias jens009_hud_terminate terminate
  # Edit Main
  def main
    # Call HUD
    @hud = Window_Hud.new
    # Call previous Methods
    jens009_hud_main
  end

  # Edit Update
  def update
    # Update hud only if $game_system.show_hud is true
    @hud.update if $game_system.show_hud
    if $game_system.show_hud == true
      @hud.visible = true
    else
      @hud.visible = false
    end
    # Call previous methods
    jens009_hud_update
  end

  # Edit Terminate
  def terminate
    # Call previous methods, dispose of other windows first before HUD
    jens009_hud_terminate
    # Dispose HUD
    @hud.dispose
  end

#========================
# End of Scene_Map edit
#========================
end



Customization
See Script for info.

Compatibility
Should be compatible with any system. Except if you have another system that also has a HUD which defines the window as Window_Hud.

But high compatibility nonetheless.
Screenshot

This is a sample screenie if you want to show all actors with all 4 states used up for every actor.


DEMO
Uploading version 2.0

Installation
Paste below Materials.

FAQ
There's a bug
-Post it up
I have a suggestion
-Post it up

Terms and Conditions
RRR exclusive
Not for commercial use unless I'm contacted.
Credit me


Credits
Jens009


__________________________

My RMXP Project:


Farewell RRR. =]
Go to the top of the page
 
+Quote Post
   
 
Start new topic
Replies
VerifyedRasta
post Aug 11 2008, 12:00 PM
Post #2


Level 20
Group Icon

Group: Revolutionary
Posts: 407
Type: Musician
RM Skill: Advanced




It works great now!! And updating the HUD manually is not a hassle at all, so it works out fine with the battle

Thanks again Jens009

This post has been edited by VerifyedRasta: Aug 11 2008, 12:00 PM


__________________________
Go to the top of the page
 
+Quote Post
   
kreytor
post Aug 11 2008, 02:33 PM
Post #3


Level 1
Group Icon

Group: Member
Posts: 8
Type: Event Designer
RM Skill: Beginner




This works better than I hoped it would. Now I just have to move it to the bottom of my screen smile.gif Shouldn't be to hard.
Go to the top of the page
 
+Quote Post
   

Posts in this topic
- jens009   Jens009's Simple HUD   Aug 10 2008, 09:05 PM
- - VerifyedRasta   Great work! Thanks for helping me with my requ...   Aug 10 2008, 10:11 PM
- - jens009   Odd errror. Try these: 1) Place my script below ...   Aug 10 2008, 10:22 PM
- - Lukedevoux   I figured out the reason why the error is coming u...   Aug 10 2008, 10:34 PM
|- - jens009   QUOTE (Lukedevoux @ Aug 10 2008, 10:56 PM...   Aug 10 2008, 11:03 PM
- - VerifyedRasta   Ok i did all the steps you mentioned ... I ended ...   Aug 10 2008, 10:35 PM
- - Lukedevoux   Ive got it, the answer to solve this problem is to...   Aug 10 2008, 10:37 PM
- - VerifyedRasta   Thanks alot Luke! And Jens for making the scri...   Aug 10 2008, 10:45 PM
- - VerifyedRasta   lol k Well user friendly or not, it should be pl...   Aug 10 2008, 11:19 PM
|- - jens009   QUOTE (VerifyedRasta @ Aug 10 2008, 11:41...   Aug 10 2008, 11:25 PM
- - VerifyedRasta   Lol as i said i am a fast learner ... Sounds easy...   Aug 10 2008, 11:42 PM
- - Lukedevoux   Instead of posting the many errors you can get fro...   Aug 11 2008, 09:37 AM
- - jens009   @Luke: Version 2.0 tested and posted This time, I...   Aug 11 2008, 11:30 AM
- - gamox1   I don't need an mp bar for my game how do you ...   Aug 12 2008, 07:34 AM
|- - VerifyedRasta   QUOTE (gamox1 @ Aug 12 2008, 07:56 AM) I ...   Aug 12 2008, 10:01 AM
- - JoRu   I don't know if this is the right place to ask...   Aug 12 2008, 11:34 AM
- - VerifyedRasta   Heres an extremely easy common event i just whippe...   Aug 12 2008, 12:34 PM
|- - jens009   QUOTE (VerifyedRasta @ Aug 12 2008, 12:56...   Aug 12 2008, 02:34 PM
- - JoRu   Thanks, VerifyedRasta! This will come in handy...   Aug 12 2008, 01:38 PM
- - VerifyedRasta   No problem! QUOTE I can also do this with sc...   Aug 12 2008, 04:58 PM
- - TheJonathanStewart   I was just wondering whether it would be possible ...   Jan 26 2011, 01:58 PM
- - Sel Feena   Thanks for sharing this, hopefully I can use it as...   Mar 1 2011, 11:15 AM
- - Kread-EX   Uh no. Aliases are really important. They copy the...   Mar 1 2011, 11:18 AM
- - Sel Feena   Ah, OK, thankyou. I've tried searching through...   Mar 1 2011, 03:12 PM
- - Kread-EX   This is not the place to ask this. Make a topic in...   Mar 2 2011, 02:02 AM
- - Wellus   Very nice it is my 1st script & it worked 100%...   Apr 11 2011, 11:40 PM


Closed TopicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 

Lo-Fi Version Time is now: 17th June 2013 - 10:13 PM
RPG RPG Revolution is an Privacy Policy and Legal
eXTReMe Tracker