iPhone App Directory
RPG Maker VX
 
Gallery Members Search Calendar Help


Welcome Guest ( Log In | Register )

Collapse

>Announcement

Keep an eye out for the upcoming 3rd Quarter Contest!
6 Pages V   1 2 3 > »   
Reply to this topicStart new topic
> Burst Gauge v1.9b, Last Update: 02-05-10
Rating 5 V
wltr3565
post Aug 7 2009, 08:11 PM
Post #1


The best BAKA ever
Group Icon


Type: Undisclosed
Alignment: True Neutral




wltr3565's Burst Gauge v1.9b

Made by wltr3565


Introduction
This is a fulfillment of my dream. Burst Gauge of A8 (Atelier Iris 3) and A9(Mana Khemia 1). That feature is very fun. I wish to use it to in RGSS2, and this is the result.

Features
Spoiler:

QUOTE
- Give advantage by activating the hard-to-fill burst gauge!
The burst gauge effect when it's full, it will power up the party's skills! It
gives pleasure to inflict a lot of damage and more rating to win.

- Controlable by setting!
You can fulfill your dreams of controlling the gauge. How much will it increase,
... and things you like / don't like will be your control!

- EXP and GOLD boost!
The burst's another feature is to give the players a boost of their earnings
except items. It won't be more than the total gettings * 2 though. And only
happens if they use a skill.

- Gauged HUD!
The gauge is gauged! It will be easier to indicate how much it is!

- Changeable term!
Feel free to change the name of this system, but you can't change fact that this
is a burst gauge system of Gust's smile.gif

- Animated gauge!
The gauge's increase and decrease is now using image and animated! But in exchange the old script-made gauges are not available anymore...

- Controllable activation!
Now the players can handle the gauge's activation at their own will, as long it's full tongue.gif


Screenies
Spoiler:


before full

after full


How to use:
Place it below the used battle system and above main. Plug and play with some adjustments in there. And you need some gauge images in the Graphics/System folder. Read the script for more information.

Well, you can manipulate the gauge by calling some script commands:
Spoiler:

CODE
#===========================================
#How to manipulate the gauge in events
#===========================================
#  Call a script command, and you can increase the gauge at your
#  liking, like this for example:
#
# $game_party.Burst_Gauge += n
#
# It will increase the gauge by n value. You can decrease it,
# divide it, or anything else.
#
# If you want a conditional branch that activates as the burst
# gauge full, use the conditional branch event command, click
# the fourth tab, then click the lowermost option, and type this:
#
# $game_party.burst_activate?
#
# by then, the conditional branch will run when the gauge has
# been activated.



Demo
Ralph's Story: Curse and Blessing of Ability Crest
The one that contained in the demo is v1.8a. You can take the gauge images from there.

Script:
[spoiler]
CODE
=begin
/////////=======================================================\\\\\\\\\\\\\\\\
========             wltr3565's Burst Gauge v1.9b                ================
================================================================================
My favorite games in PS2, Atelier 8 and Atelier 9, has this system, burst gauge.
Gust is the best! \(^-^)/ I wish this thing can be added in RGSS2, and making
this, then after countless times of headache and hunger, this script is done!
================================================================================
Script effect: It varies. You can look below to see the instructions. General
effect(suggested to use with Tankentai):

- Give advantage by activating the hard-to-fill burst gauge!
The burst gauge effect when it's full, it will power up the party's skills! It
gives pleasure to inflict a lot of damage and more rating to win.

- Controlable by setting!
You can fulfill your dreams of controlling the gauge. How much will it increase,
... and things you like / don't like will be your control!

- EXP and GOLD boost!
The burst's another feature is to give the players a boost of their earnings
except items. It won't be more than the total gettings * 2 though. And only
happens if they use a skill.

- MP cost 0 if in burst!?
The mp cost can be 0 as you like. It's even not in the game :)

- Gauged HUD!
The gauge is gauged! It will be easier to indicate how much it is!

- Changeable term!
Feel free to change the name of this system, but you can't change fact that this
is a burst gauge system of Gust's :)

- More expandable features for this gauge
Thanks for the RMVX.net communities's suggestions, this system even expanded and
have features that mixed up with the other games.

- Using images!
And easy format for making the gauge image, unlike overdrive gauge that gives
you headache!
================================================================================
#===============================================================================
#How to manipulate the gauge in events
#===============================================================================
#  Call a script command, and you can increase the gauge at your
#  liking, like this for example:
#
# $game_party.Burst_Gauge += n
#
# It will increase the gauge by n value. You can decrease it,
# divide it, or anything else.
#
# If you want a conditional branch that activates as the burst
# gauge full, use the conditional branch event command, click
# the fourth tab, then click the lowermost option, and type this:
#
# $game_party.burst_activate?
#
# by then, the conditional branch will run when the gauge has
# been activated or full.
================================================================================
FAQ:
Q: I want things to be available by this system!
A: Post at the forum where I posted this script / link!

Q: I want to change the BGM mid-battle, but it doesn't change at all!
It's happened when the burst gauge activates and I made the BGM to change
as burst activates.
A: This is not a glitch, but another function of this script. I do feel weird
when you changed the song, then revert again after the burst ends. Isn't this
annoying? So instead, the BGM that you want to use will be played after the
burst ends.
================================================================================
Incompability:
It's hard to tell. Please tell me the existing bugs when using with another
script.
================================================================================
Install:
Put it below a battle system (ATB, Sideview, etc) and above main.
================================================================================
Terms of use:
Credit wltr3565. For commercial projects, PM me first so I can add your game
into my free-to-get games list :).
================================================================================
=end
#===============================================================================
#   IMPORTING. In case of incompability. Things can be slightly easier by using
#              this stuff.
#===============================================================================

$imported = {} if $imported == nil
$imported["wltr3565's_Burst_Gauge"] = true

#===============================================================================
#                        END IMPORT
#===============================================================================
module WLTR
  module BURST_GAUGE_SETUP

#===============================================================================
#What's the name of the burst? Name yourself! I do suggest to empty this if
#you desire to use images as your gauge, and you've written the burst name in
#the image.
#===============================================================================
    BURST_NAME = "Tension"

#===============================================================================
#How many points till the gauge to be recognized as full?
#===============================================================================
    MAX_NUMBER = 1000
    
#===============================================================================
#For each hits inflicted, how many points it will increase? It will rise as
#the players attack, but decreases as the players got a damage.
#===============================================================================
    BURST_INCREASE = 100
    
#===============================================================================
#While the burst gauge activates, how much do you want to divide the burst
#increase? Only effects if the attacker is the player, though. Enter it 1 if
#you want to disable this.
#===============================================================================
    BURST_DIVIDE = 2
    
#===============================================================================
#Determine if the gauge decreases as the players got hit.
#    True  =   The gauge will decrease as players got hit.
#    False =   The gauge won't decrease.
#===============================================================================
    ABLE_DECREASE_BY_HIT = true
    
#===============================================================================
#This controls the burst gauge decreasement as players got hit. This will cut
#the decreasement amount by the assigned value below. So if a slime hits you,
#and you've set the BURST_INCREASE to 50 and the thing below is 5, the burst
#gauge will only decrease by 10. Just enter it 1 if you don't want it to be
#divided.
#===============================================================================
    ENEMY_HITTING_CUT = 5

#===============================================================================
#Determine if you want the damage to not change when the target is guarding.
#    True  =   Don't make the gauge change while the target is guarding.
#    False =   Make the gauge change while the target is guarding.
#===============================================================================
    GUARD_NULLS_GAUGE = false
    
#===============================================================================
#How many points the gauge will decrease as you in a burst? Decrease per turn.
#===============================================================================
    BURST_DECREASE = 200
    
#===============================================================================
#Do you want the gauge to instantly drop to zero as the enemy inflicts a
#critical hit? Only occurs when the burst gauge activates.
#    True  = Make the gauge drop to 0 when got a critical hit.
#    False = Make the gauge to not drop to 0 when got a critical hit.
#===============================================================================
    CRITICAL_GAUGE_CUTTER = false
    
#===============================================================================
#   If one of the ally KOed, do you want to cut the gauge?
#    True  = Gauge will cut.
#    False = Gauge will not cut.
#===============================================================================
    CUT_BURST_IF_KO = true
    
#===============================================================================
# Do you want the burst gauge activate if the assigned button was pressed?
#   True  = Burst activates when the button pressed.
#   False = Let the burst activate automatically.
#===============================================================================
    ACTIVATE_NEED_BUTTON = true
    
#===============================================================================
# What is the button for triggering the burst gauge to activate? Don't forget
# to put Input:: in the front and the buttons are joypad keys, not keyboard.
#===============================================================================
    ACTIVATE_BUTTON = Input::X
    
#===============================================================================
#Ignore this if you set the CUT_BURST_IF_KO to false. The gauge will cut by
#the added value. Calculation = Gauge / BURST_CUT
#===============================================================================
    BURST_CUT = 2
    
#===============================================================================
#As the gauge full, what SE will you play?
#===============================================================================
    SOUND_PLAY = "Saint7"

#===============================================================================
#What BGM do you want to play while the burst activates?
#Write this = RPG::BGM.new("song_name", volume, pitch)
#Write this nil if you don't want the BGM to change.
#===============================================================================
    BGM_CHANGE = RPG::BGM.new("Battle7", 100, 100)

#===============================================================================
#How much the gauge increasement to be multiplied as you inflict a weakness?
#===============================================================================
    ELE_WEAK_MULTIPLY = 5
    
#===============================================================================
#How much the gauge increasement to be divided as you inflict a resistance?
#===============================================================================
    ELE_RES_MULTIPLY = 2
    
#===============================================================================
#As the gauge fulls, do you want to give the enemies a state? All of them.
#    True  = inflct the state.
#    False = do not inflict the state.
#===============================================================================
    GIVE_STATE = true
    
#===============================================================================
#As the gauge fulls, do you want to give the players a state? All of them.
#    True  = inflct the state.
#    False = do not inflict the state.
#===============================================================================
    GIVE_STATE_PLAYER = false

#===============================================================================
#Ignore this if you set GIVE_STATE to false. Which states do you want to inflict?
#enter the state id in array.
#===============================================================================
    STATE_INFLICT = [7]

#===============================================================================
#Ignore this if you set GIVE_STATE_PLAYER to false. Which states do you want to
#inflict? Enter the state id in array.
#===============================================================================
    STATE_INFLICT_PLAYER = [12]
    
#===============================================================================
#Below will determine how many percent the hp and mp will heal as the burst
#activates. You can set both to zero if you don't want to use this function.
#Entering number bigger than 100 will result like as you input 100.
#===============================================================================
    HP_HEAL = 50 #healing party's HP
    MP_HEAL = 50 #healing party's MP
    
#===============================================================================
#Do you want to keep the gauge?
#   true  = keep the gauge like the last battle
#   false = reset the gauge at the start of the battle
#===============================================================================
    KEEP_GAUGE = true
    
#===============================================================================
#As the burst activates, the players can get a bonus. Set up here. For exp:
#    True  = give the bonus.
#    False = do not give the bonus.
#===============================================================================
    GIVE_EXP_BONUS = true

#===============================================================================
#Ignore this if you set GIVE_EXP_BONUS = false. The bonus is based on the damage
#inflicted. Bonus = damage(skill) * EXP_CALCULATE / 100
#===============================================================================
    EXP_CALCULATE = 1
    
#===============================================================================
#As the burst activates, the players can get a bonus. Set up here. For gold:
#    True  = give the bonus.
#    False = do not give the bonus.
#===============================================================================
    GIVE_GOLD_BONUS = true
    
#===============================================================================
#Ignore this if you set GIVE_GOLD_BONUS = false. The bonus is based on the damage
#inflicted. Bonus = damage(skill) * GOLD_CALCULATE / 100
#===============================================================================
    GOLD_CALCULATE = 1
    
#===============================================================================
#Limit for a damage to give the bonus.
#===============================================================================
    EXP_BONUS_LIMIT = 100
    
    GOLD_BONUS_LIMIT = 100

#===============================================================================
#The multiplier for powering up the skill while in a burst.
#===============================================================================
    POWER_UP_RATE = 2

#===============================================================================
#Do you want the skills to not require mp to use? Set up here:
#     true  =  will not use the mp as the burst activates
#     false =  will use mp as the burst activates
#===============================================================================
    MP_COST_LESS = false
    
#===============================================================================
#Gauge layout adjusting.
#===============================================================================
    TEXT_X = 306 #The text's x coordinate. Positive value moves the text to the
               #right, and negative value moves the text to the right.
    
    TEXT_Y = 0#The text's y coordinate. Positive value moves the text to the
              #bottom, and negative value moves the text to the top.
    
    GAUGE_X = 306#The gauge's x coordinate. Positive value moves the gauge to the
                #right, and negative value moves the gauge to the right.
    
    GAUGE_Y = 0#The gauge's y coordinate. Positive value moves the gauge to the
               #bottom, and negative value moves the gauge to the top.
              
    GAUGE_HEIGHT = 6#Size of the gauge's height. The bigger the number, the
                    #bigger the gauge. 0 makes it shows nothing, really. And
                    #only effects if you set IMAGE_BASED to false. If you have
                    #set it to true, then the gauge's height depends on your
                    #set image.
                    
    GAUGE_ALTER_SPEED = 4 #The speed of gauge's altering. The more the number
                          #the faster the gauge increase.
                    
#===============================================================================
# If you've set IMAGE_BASED to true... The image are picked from Graphics/System
# folder.
#===============================================================================
    GAUGE_SKIN_NORMAL = "Burst1" #The gauge's skin's file name while the
                                       #burst has not activated yet.
    GAUGE_SKIN_BURST  = "Burst1" #The gauge's skin's file name while the
                                       #burst is activating.
    GAUGE_FILL_NORMAL = "Burst2" #The gauge's gauge color's file name
                                       #while the burst has not activated yet.
    GAUGE_FILL_BURST  = "Burst3" #The gauge's gauge color's file name
                                       #while the burst is activating.
    
#===============================================================================
#Do you want the skills that needs the burst to activate for using
#to consume the entire gauge? Skills that needing burst to activate is defined
#by putting <Burst-need> in the note tag. The letters must match.
#     True  = the gauge will be gone to zero as used.
#     False = the gauge won't be gone to zero as used.
#===============================================================================
    EAT_BURST = false
    
  end
end

#===============================================================================
#/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
#Edit below and you might die if you don't have a appropriate level of scripting.
#\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
#===============================================================================


module RPG
#===============================================================================
#Defining skills that will need the burst to be activated or not.
#===============================================================================
class Skill < UsableItem
  def Burst_need
    self.note.each_line { |line| return true if line.include?('<Burst-need>') }
    return false
  end
end
end

class Game_Party < Game_Unit
#===============================================================================
# Defining the burst gotten.
#===============================================================================
  def Burst_Gauge
    @burst = 0 unless $game_temp.in_battle and @burst != nil
    return @burst
  end
#===============================================================================
# Defining the burst max
#===============================================================================
  def Burst_Gauge=(value)
    @burst = [[value, total_burst].min, 0].max  
  end
#===============================================================================
# Defining the total for a burst to activate.
#===============================================================================
  def total_burst
    return WLTR::BURST_GAUGE_SETUP::MAX_NUMBER
  end
#===============================================================================
# Defining if the burst has maxed or not
#===============================================================================
  def burst_max?
    @burst = 0 unless @burst != nil
    if @burst <= 0 #if the burst has ran out...
    @burst_flag = false   #set burst_max? to false
    clear_states
    change_bgm_after_burst
    @burst_sound_play = false  #as well the sound.
    end   #@burst == 0
    if @burst == total_burst or @burst_flag #if the burst has maxed or the burst
                                            #have been activated
    if WLTR::BURST_GAUGE_SETUP::ACTIVATE_NEED_BUTTON
      return @burst_flag unless Input.press?(WLTR::BURST_GAUGE_SETUP::ACTIVATE_BUTTON)
    end
    @burst_flag = true  #set about the burst has been activated.
    if @burst_sound_play == false  #did the sound has played?
    sound = RPG::SE.new(WLTR::BURST_GAUGE_SETUP::SOUND_PLAY)
    sound.play
    change_bgm_while_burst
    add_state_due_burst  #give state to the enemies.
    heal_as_burst_active
    @burst_sound_play = true  #flag so the burst has been played and the process
                              #before has done.
    end  #@burst_sound_play
    end  #burst
    return @burst_flag  #true or false is defined by this @burst_flag.
  end  #burst_max?
  
  def heal_as_burst_active
    for recipient in $game_party.existing_members
      recipient.hp += (recipient.maxhp * WLTR::BURST_GAUGE_SETUP::HP_HEAL) / 100
      recipient.mp += (recipient.maxmp * WLTR::BURST_GAUGE_SETUP::MP_HEAL) / 100
    end
  end
  
  def change_bgm_after_burst
    $memorized_bgm.play unless $memorized_bgm == nil
  end
  
  def change_bgm_while_burst
    if WLTR::BURST_GAUGE_SETUP::BGM_CHANGE != nil
      $memorized_bgm = RPG::BGM.last unless RPG::BGM == nil
      bgm = WLTR::BURST_GAUGE_SETUP::BGM_CHANGE
      bgm.play
    end
  end
  
#===============================================================================
#Defines the state infliction
#===============================================================================
  def add_state_due_burst
    if WLTR::BURST_GAUGE_SETUP::GIVE_STATE
    for victim in $game_troop.members
      for state in WLTR::BURST_GAUGE_SETUP::STATE_INFLICT
        victim.add_state(state)
      end
    end
  end
  
    if WLTR::BURST_GAUGE_SETUP::GIVE_STATE_PLAYER
      party_count = $game_party.existing_members
      for player in party_count
      for state in WLTR::BURST_GAUGE_SETUP::STATE_INFLICT
        player.add_state(state)
      end
      end
    end
  end
  
  def clear_states
  if WLTR::BURST_GAUGE_SETUP::GIVE_STATE
    for victim in $game_troop.members
      for state in WLTR::BURST_GAUGE_SETUP::STATE_INFLICT
        victim.remove_state(state)
      end
    end
  end
  
    if WLTR::BURST_GAUGE_SETUP::GIVE_STATE_PLAYER
      party_count = $game_party.existing_members
    for player in party_count
      for state in WLTR::BURST_GAUGE_SETUP::STATE_INFLICT
        player.remove_state(state)
      end
    end
    end
  end
#===============================================================================
# Is the burst activating? Only go to false if the burst_max? are not true.
#===============================================================================
  def burst_activate?
    return true if burst_max?
  end
  
  def burst_activate=(value)
    @burst_flag = value
  end

#===============================================================================
#EXP bonus
#===============================================================================
  def exp_extend
    @exp_extra = 0 if @exp_extra == nil
    return @exp_extra
  end
  
  def exp_extend=(value)
    @exp_extra = [[value, WLTR::BURST_GAUGE_SETUP::EXP_BONUS_LIMIT].min, 0].max    
  end

#===============================================================================
#GOLD bonus
#===============================================================================
  def gold_extend
    @gold_extra = 0 if @gold_extra == nil
    return @gold_extra
  end
  
  def gold_extend=(value)
    @gold_extra = [[value, WLTR::BURST_GAUGE_SETUP::GOLD_BONUS_LIMIT].min, 0].max    
  end
#===============================================================================
# Let's end defining the Burst.
#===============================================================================
end

class Game_Interpreter
  def command_241
    unless $game_temp.in_battle
      @params[0].play
    else
      if $game_party.burst_activate? and WLTR::BURST_GAUGE_SETUP::BGM_CHANGE != nil
        $memorized_bgm = @params[0]
      else
        @params[0].play
      end
    end
    return true
  end
end


class Game_Troop
  alias burst_decrease increase_turn
  def increase_turn
     if $game_party.burst_activate?
       $game_party.Burst_Gauge -= WLTR::BURST_GAUGE_SETUP::BURST_DECREASE
     end
     burst_decrease
   end
  
  alias exp_with_burst exp_total
  def exp_total
    exp = exp_with_burst
    exp += [$game_party.exp_extend, exp].min if WLTR::BURST_GAUGE_SETUP::GIVE_EXP_BONUS
    return exp
  end
  #--------------------------------------------------------------------------
  # * Calculate Total Gold
  #--------------------------------------------------------------------------
  alias gold_with_burst gold_total
  def gold_total
    gold = gold_with_burst
    gold += [$game_party.gold_extend, gold].min if WLTR::BURST_GAUGE_SETUP::GIVE_GOLD_BONUS
    return gold
  end
end

class Scene_Battle < Scene_Base
  alias empty_gauge battle_end
    def battle_end(result)
      empty_gauge(result)
      $game_party.Burst_Gauge = 0 if !WLTR::BURST_GAUGE_SETUP::KEEP_GAUGE
      $game_party.burst_activate = false
      $game_party.gold_extend = 0
      $game_party.exp_extend = 0
    end
end


class Game_Battler

  def burst_multiply
    @burst_multi = 1 if @burst_multi == nil
    return @burst_multi
  end
  
  def burst_multiply=(value)
    @burst_multi = value
  end
  
#===============================================================================
# Decreases the gauge if a member has KOed.
#===============================================================================
  def decrease_burst_on_ko
    $game_party.Burst_Gauge /= WLTR::BURST_GAUGE_SETUP::BURST_CUT if self.actor? and WLTR::BURST_GAUGE_SETUP::CUT_BURST_IF_KO
  end
#===============================================================================
# Increase or decrease the multiply based on the elements.
#===============================================================================

  alias burst_count_ele elements_max_rate
  def elements_max_rate(element_set)
    @burst_multis = Array.new if @burst_multis == nil
    unless element_set.empty?  
      rate_list = []
      for i in element_set
        rate_list.push(element_rate(i))
      end
    end
    unless element_set.empty?
    ele_count = rate_list.max
    else
    ele_count = 100
    end
      @burst_multi = 1
    if ele_count < 100
      @burst_multi /= WLTR::BURST_GAUGE_SETUP::ELE_RES_MULTIPLY
    elsif ele_count > 100
      @burst_multi *= WLTR::BURST_GAUGE_SETUP::ELE_WEAK_MULTIPLY
    else
      @burst_multi = 1
    end
    @burst_multis.push(@burst_multi)
      burst_count_ele(element_set)
  end
    
  alias increase_gauge_or_decrease execute_damage
  def execute_damage(user)
    if $imported["GuardRecover"] and guarding?
    burst_gauge_increase(true) unless @hp_damage == 0 and @mp_damage == 0
    else
    burst_gauge_increase(user.actor?) unless @hp_damage == 0 and @mp_damage == 0
    end
    increase_gauge_or_decrease(user)
end
  
def burst_gauge_increase(check = true)
   burst_increase = WLTR::BURST_GAUGE_SETUP::BURST_INCREASE
   burst_increase /= WLTR::BURST_GAUGE_SETUP::BURST_DIVIDE if check == true and $game_party.burst_activate?
   burst_increase *= @burst_multis.max if !@burst_multis.empty?
   @burst_multis = nil
   @burst_multi = nil
   if check == true
   $game_party.Burst_Gauge += burst_increase unless guarding? and WLTR::BURST_GAUGE_SETUP::GUARD_NULLS_GAUGE
   else
   if WLTR::BURST_GAUGE_SETUP::ABLE_DECREASE_BY_HIT
   burst_increase /= WLTR::BURST_GAUGE_SETUP::ENEMY_HITTING_CUT
   $game_party.Burst_Gauge -= burst_increase unless guarding? and WLTR::BURST_GAUGE_SETUP::GUARD_NULLS_GAUGE
   end
   end
   @burst_multiply = 1
   decrease_burst_on_ko if dead?
end

  alias state_check add_state
  def add_state(state_id)
    state_check(state_id)
    decrease_burst_on_ko if dead?
  end
  
  def gold_and_exp_plus(damage)
    gold_plus = damage * WLTR::BURST_GAUGE_SETUP::GOLD_CALCULATE / 100.0
    exp_plus = damage * WLTR::BURST_GAUGE_SETUP::EXP_CALCULATE / 100.0
    $game_party.gold_extend += gold_plus.round
    $game_party.exp_extend += exp_plus.round
  end
  
    def critical_gauge_cutter(commander)                            
       if WLTR::BURST_GAUGE_SETUP::CRITICAL_GAUGE_CUTTER
        if commander.actor? == false and $game_party.burst_activate?
           $game_party.Burst_Gauge == 0 if @critical
        end
       end
    end
    
  alias attack_critical_count make_attack_damage_value
  def make_attack_damage_value(attacker)
    attack_critical_count(attacker)
    critical_gauge_cutter(attacker)
  end
  
  alias skill_power_up make_obj_damage_value
  def make_obj_damage_value(user, obj)
    skill_power_up(user, obj)
    @mp_damage *= WLTR::BURST_GAUGE_SETUP::POWER_UP_RATE if $game_party.burst_activate?  and user.actor?                       # damage MP
    @hp_damage *= WLTR::BURST_GAUGE_SETUP::POWER_UP_RATE if $game_party.burst_activate?  and user.actor?
    gold_and_exp_plus(@hp_damage) if $game_party.burst_activate?  and user.actor?
    gold_and_exp_plus(@mp_damage) if $game_party.burst_activate?  and user.actor?
    critical_gauge_cutter(user)
  end
  
  alias burst_consume skill_effect
  def skill_effect(user, skill)
      burst_consume(user, skill)  
    if skill.Burst_need
      if WLTR::BURST_GAUGE_SETUP::EAT_BURST
      $game_party.Burst_Gauge = 1 if user.actor? and $game_party.burst_activate?
      end
    end
  end

  alias burst_only_skills skill_can_use?
  def skill_can_use?(skill)
    result = burst_only_skills(skill)
    return false if skill == nil
    if skill.Burst_need
      return false unless $game_party.burst_activate? and self.actor?
    end
    return result
  end

  alias casting_manipulation calc_mp_cost
  def calc_mp_cost(skill)
     if WLTR::BURST_GAUGE_SETUP::MP_COST_LESS
        return 0 if self.actor? and $game_party.burst_activate?
     end
     casting_manipulation(skill)
  end
end


class Window_Base < Window
  def draw_burst_gauge
    self.contents.clear
    width = 366
    text = sprintf(WLTR::BURST_GAUGE_SETUP::BURST_NAME)
    gw = width * $game_party.Burst_Gauge / $game_party.total_burst
    if WLTR::BURST_GAUGE_SETUP::IMAGE_BASED
        if $game_party.burst_activate?
         gs = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_SKIN_BURST)
         gm = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_FILL_BURST)
       else
         gs = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_SKIN_NORMAL)
         gm = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_FILL_NORMAL)
       end
       cwn = gs.width
       cw = gm.width * gw / width
       ch1 = gs.height
       ch2 = gm.height
       src_rect1 = Rect.new(0,0,cwn,ch1)
       src_rect2 = Rect.new(0,0,cw,ch2)
       self.contents.blt(WLTR::BURST_GAUGE_SETUP::GAUGE_X,WLTR::BURST_GAUGE_SETUP::GAUGE_Y, gs, src_rect1)
       self.contents.blt(WLTR::BURST_GAUGE_SETUP::GAUGE_X,WLTR::BURST_GAUGE_SETUP::GAUGE_Y, gm, src_rect2)
    else
  if $game_party.burst_activate?
    gc1 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[0])
    gc2 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[1])
  else
    gc1 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[2])
    gc2 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[3])
  end
    self.contents.fill_rect(WLTR::BURST_GAUGE_SETUP::GAUGE_X, WLTR::BURST_GAUGE_SETUP::GAUGE_Y + WLH - 8, width, WLTR::BURST_GAUGE_SETUP::GAUGE_HEIGHT , gauge_back_color)
    self.contents.gradient_fill_rect(WLTR::BURST_GAUGE_SETUP::GAUGE_X,WLTR::BURST_GAUGE_SETUP::GAUGE_Y + WLH - 8, gw, WLTR::BURST_GAUGE_SETUP::GAUGE_HEIGHT , gc1, gc2)
  end
    self.contents.draw_text(WLTR::BURST_GAUGE_SETUP::TEXT_X,WLTR::BURST_GAUGE_SETUP::TEXT_Y,200,WLH-8, text)
  end
end

class Window_Burst < Sprite
  def initialize
    super(Viewport.new(0, 0, 544, 416))
    @gauge_skin = Sprite.new
    @gauge_skin.bitmap = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_SKIN_BURST)
    @gauge_skin.viewport = Viewport.new(WLTR::BURST_GAUGE_SETUP::GAUGE_X,WLTR::BURST_GAUGE_SETUP::GAUGE_Y, @gauge_skin.width, @gauge_skin.height)
    @gauge_color = Sprite.new
    @gauge_color.bitmap = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_FILL_NORMAL)
    @gauge_color.viewport = Viewport.new(WLTR::BURST_GAUGE_SETUP::GAUGE_X,WLTR::BURST_GAUGE_SETUP::GAUGE_Y, @gauge_color.width, @gauge_color.height)
    gauge_width = @gauge_color.bitmap.width * $game_party.Burst_Gauge / $game_party.total_burst
    @gauge_color.src_rect.width = gauge_width
    @bursttext = Sprite.new
    @bursttext.bitmap = Bitmap.new(544, 416)
    @bursttext.bitmap.font.color.set(255, 255, 255)
    @bursttext.bitmap.draw_text(0, 0, 544, 416, WLTR::BURST_GAUGE_SETUP::BURST_NAME)
    @bursttext.viewport = Viewport.new(0, 0, 544, 416)
    @bursttext.x = WLTR::BURST_GAUGE_SETUP::TEXT_X
    @bursttext.y = WLTR::BURST_GAUGE_SETUP::TEXT_Y - 200
    @bursttext.z = 300
    @gauge_color.z = 200
    @gauge_skin.z = 100
  end
  def dispose
    @gauge_skin.dispose
    @gauge_color.dispose
    @bursttext.dispose
    super
  end
  def check_activation
    if $game_party.burst_activate?
      @gauge_skin.bitmap = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_SKIN_BURST)
      @gauge_color.bitmap = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_FILL_BURST)
    else
      @gauge_skin.bitmap = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_SKIN_NORMAL)
      @gauge_color.bitmap = Cache.system(WLTR::BURST_GAUGE_SETUP::GAUGE_FILL_NORMAL)
    end
  end
  def update
    gauge_width = @gauge_color.bitmap.width * $game_party.Burst_Gauge / $game_party.total_burst
    gauge_width.round
    if @gauge_color.width < gauge_width
      boost = WLTR::BURST_GAUGE_SETUP::GAUGE_ALTER_SPEED
      @gauge_color.src_rect.width += boost
      @gauge_color.src_rect.width = gauge_width.round if @gauge_color.src_rect.width > gauge_width.round
    elsif @gauge_color.width > gauge_width
      boost = WLTR::BURST_GAUGE_SETUP::GAUGE_ALTER_SPEED
      @gauge_color.src_rect.width -= boost
      @gauge_color.src_rect.width = gauge_width.round if @gauge_color.src_rect.width < gauge_width.round
    end
    check_activation
  end
end

class Scene_Battle < Scene_Base
  alias draw_burst create_info_viewport
  def create_info_viewport
    @burst_gauge = Window_Burst.new
    @burst = $game_party.Burst_Gauge
    @refreshed = false
    draw_burst
  end
  alias delete_burst dispose_info_viewport
  def dispose_info_viewport
    @burst_gauge.dispose
    delete_burst
  end
  alias gauge_burst_update update_info_viewport
  def update_info_viewport
    @burst_gauge.update
    gauge_burst_update
  end
end
#===============================================================================
#
# END OF SCRIPT
#
#===============================================================================
[/spoiler]

Patch(es):
Here's for making the gauge like the old one:
[spoiler]
CODE
=begin
================================================================================
The patch for Burst Gauge to make the gauge drawn by script. Some people does
still love the old one...
================================================================================
=end
module WLTR
  module BURST_GAUGE_SETUP
#===============================================================================
# Gauge's height. The bigger the number, the taller the gauge.
#===============================================================================
    GAUGE_HEIGHT = 10
    
    COLOR = [] # Don't touch.
    
#===============================================================================
# COLOR[0] and COLOR[1] is for the normal gauge's gradient, and COLOR[2] +
# COLOR[3] is for the bursting gauge's gradient. COLOR[4] is for the skin's
# color. The color used is based on text color.
#===============================================================================
    COLOR[0] = 1
    
    COLOR[1] = 2
    
    COLOR[2] = 3
    
    COLOR[3] = 4
    
    COLOR[4] = 7
  end
end

"=============================================================================="
"   BELOW IS TOO DANGEROUS TO READ WITHOUT PROPER SCRIPTING SKILLS. THEREFOR,  "
"                            EDIT AT YOUR OWN RISK!                            "
"=============================================================================="

class Window_Burst < Sprite
  def text_color(n)
    x = 64 + (n % 8) * 8
    y = 96 + (n / 8) * 8
    return @windowskin.get_pixel(x, y)
  end
  
  def initialize
    @windowskin = Cache.system("Window")
    super(Viewport.new(0, 0, 544, 416))
    width = 366
    if $game_party.burst_activate?
      gc1 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[0])
      gc2 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[1])
    else
      gc1 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[2])
      gc2 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[3])
    end
    @gauge_skin = Sprite.new
    @gauge_skin.bitmap = Bitmap.new(width, WLTR::BURST_GAUGE_SETUP::GAUGE_HEIGHT)
    @gauge_skin.viewport = Viewport.new(WLTR::BURST_GAUGE_SETUP::GAUGE_X,WLTR::BURST_GAUGE_SETUP::GAUGE_Y, 544, 416)
    @gauge_skin.bitmap.fill_rect(0, 0, width, WLTR::BURST_GAUGE_SETUP::GAUGE_HEIGHT , text_color(WLTR::BURST_GAUGE_SETUP::COLOR[4]))
    @gauge_color = Sprite.new
    @gauge_color.bitmap = Bitmap.new(width, WLTR::BURST_GAUGE_SETUP::GAUGE_HEIGHT)
    @gauge_color.bitmap.gradient_fill_rect(0,0, width, WLTR::BURST_GAUGE_SETUP::GAUGE_HEIGHT , gc1, gc2)
    @gauge_color.viewport = Viewport.new(WLTR::BURST_GAUGE_SETUP::GAUGE_X,WLTR::BURST_GAUGE_SETUP::GAUGE_Y, 544, 416)
    gauge_width = @gauge_color.bitmap.width * $game_party.Burst_Gauge / $game_party.total_burst
    @gauge_color.src_rect.width = gauge_width
    @bursttext = Sprite.new
    @bursttext.bitmap = Bitmap.new(544, 416)
    @bursttext.bitmap.font.color.set(255, 255, 255)
    @bursttext.bitmap.draw_text(0, 0, 544, 416, WLTR::BURST_GAUGE_SETUP::BURST_NAME)
    @bursttext.viewport = Viewport.new(0, 0, 544, 416)
    @bursttext.x = WLTR::BURST_GAUGE_SETUP::TEXT_X
    @bursttext.y = WLTR::BURST_GAUGE_SETUP::TEXT_Y - 200
    @bursttext.z = 300
    @gauge_color.z = 200
    @gauge_skin.z = 100
  end
  
  def check_activation(width)
    if $game_party.burst_activate?
      gc1 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[0])
      gc2 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[1])
      @gauge_color.bitmap.clear
      @gauge_color.bitmap.gradient_fill_rect(0,0, width, WLTR::BURST_GAUGE_SETUP::GAUGE_HEIGHT , gc1, gc2)
    else
      gc1 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[2])
      gc2 = text_color(WLTR::BURST_GAUGE_SETUP::COLOR[3])
      @gauge_color.bitmap.clear
      @gauge_color.bitmap.gradient_fill_rect(0,0, width, WLTR::BURST_GAUGE_SETUP::GAUGE_HEIGHT , gc1, gc2)
    end
  end

def update
    gauge_width = @gauge_color.bitmap.width * $game_party.Burst_Gauge / $game_party.total_burst
    gauge_width.round
    if @gauge_color.width < gauge_width
      boost = WLTR::BURST_GAUGE_SETUP::GAUGE_ALTER_SPEED
      @gauge_color.src_rect.width += boost
      @gauge_color.src_rect.width = gauge_width.round if @gauge_color.src_rect.width > gauge_width.round
    elsif @gauge_color.width > gauge_width
      boost = WLTR::BURST_GAUGE_SETUP::GAUGE_ALTER_SPEED
      @gauge_color.src_rect.width -= boost
      @gauge_color.src_rect.width = gauge_width.round if @gauge_color.src_rect.width < gauge_width.round
    end
    check_activation(gauge_width)
  end
end
#===============================================================================
#
# END OF SCRIPT
#
#===============================================================================
[/spoiler]
Terms of use:
It's okay to use it for both non-commercial and commercial games, but for commercial use, PM me so I can add your game into my free-to-play games smile.gif

Credits to give
- me, wltr3565.

Thanks to:
- Gust, maker of A8 and A9.
- NIS America, Gust's translator.

Note:
I suggest you to use this with Tankentai especially with ATB. Talk about hit numbers.
I'll just wait till I can have my own PS3... Atelier Totori's too beautiful... dry.gif

This post has been edited by wltr3565: Jul 23 2010, 01:16 PM


--------------------
This place is empty, just like I restarted myself.
Go to the top of the page
 
+Quote Post
   
jaydee15
post Aug 8 2009, 05:22 AM
Post #2


Something coherent... Also Muscle Milk
Group Icon


Type: Writer
Alignment: Lawful Good




@wltr3565:
So, is that somewhat similar to what could be called a "synchro-boost", meaning that once the gauge is full, you can increase all skills' power? Though I am not personally familiar with this type of system, I might as well put it in my game. By the way, is it compatible with SBS+ATB (the most recent version)? Does it have any compatibility issues with Ziifee's Spin Batlle Menu? Since, I am the first to comment this page, then I might as well say: CONGRATULATIONS! biggrin.gif I hope your Burst Gauge will attract many RPG Makers! (By the way, is it possible to PM me to explain further what it does exactly, since I am quite a noob? dry.gif)


--------------------
"Kinda bored, but still working on my project."
==========
I support:






==========
If you are a believer of Jesus Christ, and are 100% proud of it, put this in your sig.
Go to the top of the page
 
+Quote Post
   
wltr3565
post Aug 8 2009, 06:04 AM
Post #3


The best BAKA ever
Group Icon


Type: Undisclosed
Alignment: True Neutral




QUOTE (jaydee15 @ Aug 8 2009, 12:22 PM) *
@wltr3565:
So, is that somewhat similar to what could be called a "synchro-boost", meaning that once the gauge is full, you can increase all skills' power? Though I am not personally familiar with this type of system, I might as well put it in my game. By the way, is it compatible with SBS+ATB (the most recent version)? Does it have any compatibility issues with Ziifee's Spin Batlle Menu? Since, I am the first to comment this page, then I might as well say: CONGRATULATIONS! biggrin.gif I hope your Burst Gauge will attract many RPG Makers! (By the way, is it possible to PM me to explain further what it does exactly, since I am quite a noob? dry.gif)

I made and tested this in the latest version of Tankentai SBS + ATB, then it's 100% fine. Spin menu? I doubt it will disturb this system, yeah, trust me. I do suggest to use with Tankentai + ATB because it's multi-hits feature that really supports this burst gauge system. What is this syncro boost anyway?

PM? Okay.


--------------------
This place is empty, just like I restarted myself.
Go to the top of the page
 
+Quote Post
   
jaydee15
post Aug 8 2009, 06:20 AM
Post #4


Something coherent... Also Muscle Milk
Group Icon


Type: Writer
Alignment: Lawful Good




@wltr3565:
Oh, Synchro-system? It's just a term I tend to use whenever there is one same party that must fill out a specific gauge together, almost like Star Ocean 3: 'Til the End of Time in which you get bonuses if the gauge is full, depending on how you fill it... Hope it makes it a little clear now... smile.gif


--------------------
"Kinda bored, but still working on my project."
==========
I support:






==========
If you are a believer of Jesus Christ, and are 100% proud of it, put this in your sig.
Go to the top of the page
 
+Quote Post
   
Saekonungar
post Aug 8 2009, 07:49 AM
Post #5


Is a parody of himself
Group Icon


Type: Designer




Hey, no offense, meant, but I think a demo would actually be very helpful, since, not everyone (for example: not me tongue.gif) has played those games. And it would be a lot easier to understand what your script does if we saw it ourselves, instead of having to read an explanation. (like they say "show, don't tell" tongue.gif).
That aside, from what i could understand this is very similar to the force gauge in skies of arcadia, but much more limited and at the same time much more powerful. It looks very, very interesting, I'm starting to feel really tempted to chage to sideview. Great script. smile.gif


--------------------
Awesome games you should be playing:



One of those "scientific" tests...
Spoiler:


The meaning of life is Bernard
Spoiler:
Go to the top of the page
 
+Quote Post
   
Mr. Bubble
post Aug 8 2009, 08:06 AM
Post #6



Group Icon


Type: Undisclosed
Alignment: Unaligned




QUOTE (Saekonungar @ Aug 8 2009, 12:49 AM) *
Hey, no offense, meant, but I think a demo would actually be very helpful, since, not everyone (for example: not me tongue.gif) has played those games.

You don't need to have played those games to know how to read comments. I never played those games before either, but wtlr's customization module is detailed thoroughly and is very user friendly. I understood it just fine. Have you even tried to read it?

Making a demo would be no different than creating a new project and pasting the script in the script editor. Sorry, but it really riles me up when people don't put in the effort to simply read and test the script themselves before anything else.

Anyway, great job wltr. I hope to see more from you. smile.gif


--------------------
I no longer support Tankentai.
Go to the top of the page
 
+Quote Post
   
wltr3565
post Aug 8 2009, 08:17 AM
Post #7


The best BAKA ever
Group Icon


Type: Undisclosed
Alignment: True Neutral




@Mr.Bubble:
Thanks for the comment smile.gif

@Saekonungar:
Demo? Even KGC's overdrive doesn't need a demo. Anyway uploading a demo will be a hell. More than that, am I allowed to repost the Tankentai? If I use the default battle system, You'll know one thing: the burst gauge will be never full unless I use Tankentai if the conditions like this:
- The enemies total is more than party.
- The attacks are resistant by the enemies.
Feel free to use in the default battle system though. I don't force you to use Tankentai. I only suggesting.


--------------------
This place is empty, just like I restarted myself.
Go to the top of the page
 
+Quote Post
   
Saekonungar
post Aug 8 2009, 08:21 AM
Post #8


Is a parody of himself
Group Icon


Type: Designer




Sorry, I was just making a suggestion, you're right: I should've looked at it throughly before posting.


--------------------
Awesome games you should be playing:



One of those "scientific" tests...
Spoiler:


The meaning of life is Bernard
Spoiler:
Go to the top of the page
 
+Quote Post
   
wltr3565
post Aug 8 2009, 10:24 AM
Post #9


The best BAKA ever
Group Icon


Type: Undisclosed
Alignment: True Neutral




Sorry, when I testing my project, seems there's some bug. The bug is fixed now. Check the first post.


--------------------
This place is empty, just like I restarted myself.
Go to the top of the page
 
+Quote Post
   
RyouKachi
post Aug 8 2009, 11:20 AM
Post #10



Group Icon


Type: Designer
Alignment: Chaotic Evil




NO FRIGGIN WAY!!!!!!!!! I've always wanted this feature but could never find it instead I was using Yanfly's Moral system. Thanks so much!


--------------------
Five things I would tell other RMers:
-Frankenspriting is really easy, anyone can have a go for great results.
-What matters is not the script but how you use it
-NEVER underestimate the power of events.
-When using RTP remember Vibrato and recolours.
-Use the wondereous substance know as paper (plan, note and sketch your work)

My most epic IRC moment ever:
Spoiler:
* RyouKachi iniates a staring contest
<+CaptainJet> you're gonna lose
<RyouKachi> I WON'T LOOOOSE!
<+CaptainJet> you already did
<RyouKachi> Oh shit
<RyouKachi> Damn you JEEEEET!
<+CaptainJet> ;)
<RyouKachi> I'm too psyched to give up I shall see through time itself and stare UNTIL I WIN!
<+CaptainJet> well...
<+CaptainJet> you lost
<+CaptainJet> i see it already
<+CaptainJet> in the future
<RyouKachi> The future is not set in stone, I can change it!
<+CaptainJet> no you can't
<+CaptainJet> i also knew you'd say that
<+CaptainJet> and i know what you'll say next
<RyouKachi> Predictions cannot bind me I am RyouKachi.
<RyouKachi> I am my own man.
<RyouKachi> The future is shaped by ME!
<+CaptainJet> nope
<+CaptainJet> sorry to break it to ya bud
<+CaptainJet> i set the future
<RyouKachi> Then...
<RyouKachi> YOU ARE IN MY WAY!
<+CaptainJet> i am your way
<+CaptainJet> :|
<RyouKachi> INFINITE SOURCE OF EPIC I CALL APON YOU
<+CaptainJet> upon*
<RyouKachi> I DEFINE SPELLING
<+CaptainJet> no, i do
<+CaptainJet> since i set the future of the person who created english spelling
<RyouKachi> GURREN LAGANN
<+CaptainJet> :|
<RyouKachi> Kick reason to the curb and break through the impossible!
<RyouKachi> Who the hell do you think I am!
<RyouKachi> GIGA
<RyouKachi> DRILL
<RyouKachi> BREAKER!!!!!
<+CaptainJet> :|
* RyouKachi is now known as RYOUKACHI
<+CaptainJet> :"|
<RYOUKACHI> Capital letters cannot define the epic
<+CaptainJet> yeah, that's why i don't capitalize my name
<RYOUKACHI> Rule of Cool: If it's cool then it's possible.
<+CaptainJet> no...
<RYOUKACHI> I am a human a living thermo-dynamic miracle, I can do anything.

* Dissonance (~Dissonanc@93139DB9.3DF1602D.38BB7985.IP) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* &Touchfuzzy (~IceChat7@CABEB43A.693AA8F5.657E0562.IP) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* Shiro (Mibbit@synIRC-C777CA08.chi01.dsl-w.verizon.net) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* gonezoles (~bre@synIRC-2750A7DD.hr.hr.cox.net) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* &X (generic@botserv.synirc.net) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* Snacks (Snacks@synIRC-77B9841.hsd1.ma.comcast.net) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* DeviBOT (~DeviBOT@D8C7C2CE.95BA9E12.3E68EF55.IP) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* boon (~boon@synIRC-71559BEA.range86-158.btcentralplus.com) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* @Mithran (Mithran@synIRC-19B73521.static.rvsd.ca.charter.com) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* +Jaeroll (~chatzilla@synIRC-9FE553DE.dyn.embarqhsd.net) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* +CaptainJet (~chatzilla@synIRC-FAC5E26A.pools.spcsdns.net) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* cyangmou (~cyangmou@synIRC-115AE74B.adsl.highway.telekom.at) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)
* +InconspiciousBox (~chatzilla@synIRC-916B2F5E.dhcp.bluecom.no) Quit (naamio.fi.eu.synirc.net thoth.hub.eu.synirc.net)

<RYOUKACHI> Wow
<RYOUKACHI> I can do anything


I support:
Spoiler:















And lastly I made a blog, check it out here:
Ryou's Work Reports
(Blog last updated on 09/10/2010)
Go to the top of the page
 
+Quote Post
   
MrWaltz
post Aug 8 2009, 11:51 AM
Post #11



Group Icon


Type: Writer
Alignment: Neutral Good




the game seems to crash on me whenever I use a skill that an enemy is weak against.



I'm using a wait gauge battle system though, and i've progressed too far to switch to Tankentai. think you could help me?


--------------------
Do most of our members just go to the Completed Scripts Section?
Go to the top of the page
 
+Quote Post
   
wltr3565
post Aug 8 2009, 12:17 PM
Post #12


The best BAKA ever
Group Icon


Type: Undisclosed
Alignment: True Neutral




Fixed problem and should be multiplying with no problem. Sorry for the problem sad.gif


--------------------
This place is empty, just like I restarted myself.
Go to the top of the page
 
+Quote Post
   
ZheiN
post Aug 8 2009, 12:28 PM
Post #13


Crtcl Brkr
Group Icon


Type: Spriter




can you make the gauge a pic so that we can change the syle of it instead mo creating thing using bars?
Go to the top of the page
 
+Quote Post
   
Mr. Bubble
post Aug 8 2009, 12:31 PM
Post #14



Group Icon


Type: Undisclosed
Alignment: Unaligned






Here's an add-on script that makes the Burst Gauge work with woratana's Neo Gauge. You can customize the gradient for a full gauge as well.

Spoiler:
CODE
# Neo Burst Gauge.
# Requires Neo Gauge Final by woratana and Burst Gauge by wltr3565.

module WLTR
module BURST_GAUGE_SETUP
  
TEXT_X = 10 #Text's X coordinate. Positive numbers will make the text move to
            #right. Negative numbers will make the text move to left. Counted by
            #pixels.
            
TEXT_Y = 0  #Text's Y coordinate. Positive numbers will make the text move to
            #bottom. Negative numbers will make the text move to top. Counted by
            #pixels.

NEW_WLH = 24 #Just in case that the "Burst" text didn't shown properly. It's
             #because the needed room, line height, doesn't enough to show the
             #entire text. Enter it to your liking, but don't enter it 16 or
             #under, else it won't show anything.
            
end
end

class Window_Base < Window

  # Burst Gauge gradient colors (Red, Green, Blue)
  BURST_GCOLOR_1 = Color.new(163, 151, 219)
  BURST_GCOLOR_2 = Color.new(163, 151, 255)
  BURST_GCOLOR_3 = Color.new(236, 0, 140)

  # Maximum Burst Gauge gradient colors (Red, Green, Blue)
  BURST_MAX_GCOLOR_1 = Color.new(236, 0, 140)
  BURST_MAX_GCOLOR_2 = Color.new(199, 203, 255)
  BURST_MAX_GCOLOR_3 = Color.new(236, 0, 140)

  def draw_burst_gauge(x = 10, y = 0, width = 366)
    self.contents.clear
    gw = width * $game_party.Burst_Gauge / $game_party.total_burst
    cg = neo_gauge_back_color
    c1, c2, c3 = cg[0], cg[1], cg[2]
    draw_neo_gauge(x + HPMP_GAUGE_X_PLUS, y + WLH - 8 + HPMP_GAUGE_Y_PLUS, width,
HPMP_GAUGE_HEIGHT, c1, c2, c3)
    if gw == width # Max?
      (1..3).each {|i| eval("@c#{i} = BURST_MAX_GCOLOR_#{i}") }
    else # Not Max~
      (1..3).each {|i| eval("@c#{i} = BURST_GCOLOR_#{i}") }
    end
    draw_neo_gauge(x + HPMP_GAUGE_X_PLUS, y + WLH - 8 + HPMP_GAUGE_Y_PLUS, gw, HPMP_GAUGE_HEIGHT,
@c1, @c2, @c3, false, false, width, 50)
    text = sprintf(WLTR::BURST_GAUGE_SETUP::BURST_NAME)
    self.contents.draw_text(WLTR::BURST_GAUGE_SETUP::TEXT_X,
WLTR::BURST_GAUGE_SETUP::TEXT_Y,200,WLTR::BURST_GAUGE_SETUP::NEW_WLH, text)
  end
end


This was really easy since I just copied the Neo Gauge overdrive method and changed it to work for the burst gauge instead.

This post has been edited by Mr. Bubble: Aug 13 2009, 02:19 PM


--------------------
I no longer support Tankentai.
Go to the top of the page
 
+Quote Post
   
wltr3565
post Aug 8 2009, 01:40 PM
Post #15


The best BAKA ever
Group Icon


Type: Undisclosed
Alignment: True Neutral




@Mr.Bubble:
He means the burst gauge is using image like ATB gauge, not using wora's Neo Gauge system. I want to use that too, but it outlimits my skills sad.gif. It's pretty hard.
I would like to post the link of your script at the first post. Can I?


--------------------
This place is empty, just like I restarted myself.
Go to the top of the page
 
+Quote Post
   
MrWaltz
post Aug 8 2009, 01:42 PM
Post #16



Group Icon


Type: Writer
Alignment: Neutral Good




QUOTE (wltr3565 @ Aug 8 2009, 08:17 AM) *
Fixed problem and should be multiplying with no problem. Sorry for the problem sad.gif


works like a charm now, thank you!

you know, a cool feature would be if you enter Burst Mode, all of your skills consume 0 MP, so your party can go crazy on the enemy. just a thought ^^


--------------------
Do most of our members just go to the Completed Scripts Section?
Go to the top of the page
 
+Quote Post
   
Mr. Bubble
post Aug 8 2009, 01:50 PM
Post #17



Group Icon


Type: Undisclosed
Alignment: Unaligned




QUOTE (wltr3565 @ Aug 8 2009, 06:40 AM) *
@Mr.Bubble:
He means the burst gauge is using image like ATB gauge, not using wora's Neo Gauge system. I want to use that too, but it outlimits my skills sad.gif. It's pretty hard.
I would like to post the link of your script at the first post. Can I?

Actually, that wasn't in response to him (I didn't even notice his post). I just wanted to share. smile.gif

You can post it up in your post if you want. Credit isn't required for it.

This post has been edited by Mr. Bubble: Aug 8 2009, 01:50 PM


--------------------
I no longer support Tankentai.
Go to the top of the page
 
+Quote Post
   
wltr3565
post Aug 8 2009, 01:54 PM
Post #18


The best BAKA ever
Group Icon


Type: Undisclosed
Alignment: True Neutral




QUOTE (MrWaltz @ Aug 8 2009, 08:42 PM) *
works like a charm now, thank you!

you know, a cool feature would be if you enter Burst Mode, all of your skills consume 0 MP, so your party can go crazy on the enemy. just a thought ^^


Great suggestion smile.gif. But for me, it's like a cheat to the players, except the mp cost is crazily high(a basic skill consumes 50 MP while your max MP is 200?). Atelier Iris 3 does fill the Skill Gauge(MP) to full as the burst activates, but the Skill Gauge is shared (consumption for all allies, not for each individual) and to fill it, not as easy as Mana Khemia 1 which can use items to recover SP (MP for this game, and it's for individual allies, by then the SP won't be full as the burst gauge activates).

I could make this. I'll try, but as I post this, I will let the default to false.

Done. Look at the first post.

This post has been edited by wltr3565: Aug 8 2009, 02:42 PM


--------------------
This place is empty, just like I restarted myself.
Go to the top of the page
 
+Quote Post
   
PIYA
post Aug 9 2009, 01:08 AM
Post #19


IM BACK!
Group Icon


Type: Designer
Alignment: Lawful Good




Wow at first i didnt know what this script was cuz i never played those games.
then i read the comments and i was like- "WOW!" *copy and paste into game"
thanks dude!


--------------------
Go to the top of the page
 
+Quote Post
   
Supergodjesus
post Aug 9 2009, 01:40 AM
Post #20



Group Icon


Type: Designer
Alignment: Unaligned




Hey this is a pretty neat looking script with some good potential!

Just a quick question since I can not test it out yet myself: After the burst gauge fills and your party goes hog wild with all of its spells/skills, does the burst gauge return to zero or does it stay filled for the entirety of battle? Also, does the gauge carry over from one battle to the next?

In the future, do you plan on supporting script calls or anything for this? I think it would be awesome if there was a boss encounter or something that pretty much would rely on the player maxing out the burst guage but the boss has a unique ability that resets it to zero or cuts it in half or something like that. Anyway, just a thought.


--------------------
Keep up-to-date with the greatest RPGs ever: Pioneer Valley Games

Need inexpensive art resources? Let me know!


Need AMAZING game music? Note by Note Studios
Go to the top of the page
 
+Quote Post
   

6 Pages V   1 2 3 > » 
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 

Lo-Fi Version Time is now: 20th September 2014 - 07:10 PM

RPGMakerVX.net is an Privacy Policy, Legal.