Main Menu
  • Welcome to The RPG Maker Resource Kit.

More obvious level up alert

Started by Disco Viking, February 01, 2006, 02:00:27 PM

0 Members and 1 Guest are viewing this topic.

Disco Viking

In the default battle sytem, it only gives a tiny bit of text saying "Level Up".

I once downloaded a battle system where at the end, if someone levelled it would bring up a window saying they had levelled and show they're old and new stats.

I cannot find that anymore.
If someone could either link me to that battle system, I will find the script etc.
Or post the script to do that here, that would be brilliant.

Thanks.

Mia the Rabbit

I think this is it. I tried it out and it worked but I can't remember how to use it exactly >.<

The web address after 'Script found at' doesn't work by the way >.<


Quote
#================================================
# ====Stat Show======
#================================================
#
#
#
#
#
# Window_BattleStatus
#
#?¥?£?¥ XRXS_BP10. LEVEL UP!"\—Í?ã?¸•\ަƒEƒBƒ"ƒhƒE plus! ?¥?£?¥
# by ?÷‰ë ?Ý"y
#
# —v?FXRXS.RGSS‰ü—ǃJƒXƒ^ƒ}ƒCƒY
#
#
#Script found at http://f26.aaa.livedoor.jp/~xxms/RPGXP_XRXS_BP10.htm
#Modified by Guillaume777
#
#
#==============================================================================
# ?  ƒJƒXƒ^ƒ}ƒCƒYƒ|ƒCƒ"ƒg
#==============================================================================
class Scene_Battle
  LEVEL_UP_SE   = ""                       # ƒŒƒxƒ‹ƒAƒbƒvSE?B"",Å–³,µ?B
  LEVEL_UP_ME   = "Audio/SE/087-Action02" # ƒŒƒxƒ‹ƒAƒbƒvME
end
class Window_SkillLearning < Window_Base
  SKILLLEARN_SE = "Audio/SE/106-Heal02"    # ƒXƒLƒ‹?K"¾SE?B
end
#==============================================================================
# ?¡ Window_LevelUpWindow
#------------------------------------------------------------------------------
# ?@ƒoƒgƒ‹?I—¹Žž?AƒŒƒxƒ‹ƒAƒbƒv,µ,½?ê?‡,ɃXƒe?[ƒ^ƒX,ð•\ަ,•,éƒEƒBƒ"ƒhƒE,Å,•?B
#==============================================================================
class Window_LevelUpWindow < Window_Base
  #--------------------------------------------------------------------------
  # ?œ ƒIƒuƒWƒFƒNƒg?‰Šú‰»
  #--------------------------------------------------------------------------
  def initialize(x, y, actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
  #  super(x, y, 160, 192)
    super(x, y-32, 160, 192+32)
 
    self.contents = Bitmap.new(width - 32, height - 32)
    self.visible = false
    self.back_opacity = 160
    refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
  end
  #--------------------------------------------------------------------------
  # ?œ ƒŠƒtƒŒƒbƒVƒ...
  #--------------------------------------------------------------------------
  def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
    self.contents.clear
    self.contents.font.size = 20
    self.contents.font.name = $defaultfonttype
    self.contents.font.color = system_color
    self.contents.draw_text( 20,   0, 160, 24, "LEVEL UP!!")
    self.contents.draw_text( 0,  28+32, 160, 24, $data_system.words.hp)
    self.contents.draw_text( 0,  50+32, 160, 24, $data_system.words.sp)
    self.contents.draw_text( 0,  0+32,  80, 24, "Level")
    self.contents.draw_text( 0,  72+32,  80, 24, $data_system.words.str[0,3])
    self.contents.draw_text( 0,  94+32,  80, 24, $data_system.words.dex[0,3])
    self.contents.draw_text( 0, 116+32,  80, 24, $data_system.words.agi[0,3])
    self.contents.draw_text( 0, 138+32,  80, 24, $data_system.words.int[0,3])
    self.contents.draw_text(76,   0+32, 128, 24, "=")
    self.contents.draw_text(76,  28+32, 128, 24, "=")
    self.contents.draw_text(76,  50+32, 128, 24, "=")
    self.contents.draw_text(76,  72+32, 128, 24, "=")
    self.contents.draw_text(76,  94+32, 128, 24, "=")
    self.contents.draw_text(76, 116+32, 128, 24, "=")
    self.contents.draw_text(76, 138+32, 128, 24, "=")
    self.contents.font.color = normal_color
    self.contents.draw_text( 0,   0+32,  72, 24, "+" + (actor.level-last_lv).to_s, 2)
    self.contents.draw_text( 0,  28+32,  72, 24, "+" + up_hp.to_s, 2)
    self.contents.draw_text( 0,  50+32,  72, 24, "+" + up_sp.to_s, 2)
    self.contents.draw_text( 0,  72+32,  72, 24, "+" + up_str.to_s, 2)
    self.contents.draw_text( 0,  94+32,  72, 24, "+" + up_dex.to_s, 2)
    self.contents.draw_text( 0, 116+32,  72, 24, "+" + up_agi.to_s, 2)
    self.contents.draw_text( 0, 138+32,  72, 24, "+" + up_int.to_s, 2)
    self.contents.draw_text( 0,   0+32, 128, 24, actor.level.to_s, 2)
    self.contents.draw_text( 0,  26+32, 128, 24, actor.maxhp.to_s, 2)
    self.contents.draw_text( 0,  48+32, 128, 24, actor.maxsp.to_s, 2)
    self.contents.draw_text( 0,  70+32, 128, 24, actor.str.to_s, 2)
    self.contents.draw_text( 0,  92+32, 128, 24, actor.dex.to_s, 2)
    self.contents.draw_text( 0, 114+32, 128, 24, actor.agi.to_s, 2)
    self.contents.draw_text( 0, 136+32, 128, 24, actor.int.to_s, 2)
  end
end
#==============================================================================
# ?¡ Window_SkillLearning
#------------------------------------------------------------------------------
# ?@ƒŒƒxƒ‹ƒAƒbƒvŽž,È,Ç,ɃXƒLƒ‹,ð?K"¾,µ,½?ê?‡,É,»,ê,ð•\ަ,•,éƒEƒBƒ"ƒhƒE,Å,•?B
#==============================================================================
class Window_SkillLearning < Window_Base
  #--------------------------------------------------------------------------
  # ?œ ŒöŠJƒCƒ"ƒXƒ^ƒ"ƒX•Ï?"
  #--------------------------------------------------------------------------
    attr_reader   :learned                  # ƒXƒLƒ‹,ð?K"¾,µ,½,©,Ç,¤,©
  #--------------------------------------------------------------------------
  # ?œ ƒIƒuƒWƒFƒNƒg?‰Šú‰»
  #--------------------------------------------------------------------------
  def initialize(class_id, last_lv, now_lv)
    super(160,  64-32, 320, 64)
   
    self.contents = Bitmap.new(width - 32, height - 28) # ,í,´,Æ?¤,ð•\ަ
    self.visible  = false
    self.back_opacity = 160
    @learned      = false
    refresh(class_id, last_lv, now_lv)
  end
  #--------------------------------------------------------------------------
  # ?œ ƒŠƒtƒŒƒbƒVƒ...
  #--------------------------------------------------------------------------
  def refresh(class_id, last_lv, now_lv)
    for i in 0...$data_classes[class_id].learnings.size
      learn_lv = $data_classes[class_id].learnings.level
      # ?¡‰ñ,̃Œƒxƒ‹ƒAƒbƒv"͈Í,Å?K"¾,•,éƒXƒLƒ‹,Ì?ê?‡
      if learn_lv > last_lv and learn_lv <= now_lv
        @learned = true
        # SE,Ì?Ä?¶
        if SKILLLEARN_SE != ""
          Audio.se_play(SKILLLEARN_SE)
        end
        # Še•`ŽÊ
        skill_name = $data_skills[$data_classes[class_id].learnings.skill_id].name
        self.contents.clear
        self.contents.font.name = $defaultfonttype
        self.contents.font.color = normal_color
        self.contents.draw_text(0,0,448,32, skill_name + " learned !!")
        self.visible  = true
        # ƒ?ƒCƒ"ƒ‹?[ƒv
        loop do
          # ƒQ?[ƒ€‰æ–Ê,ð?X?V
          Graphics.update
          # "ü—Í?î•ñ,ð?X?V
          Input.update
          # ƒtƒŒ?[ƒ€?X?V
          update
          # ‰æ–Ê,ª?Ø,è'Ö,í,Á,½,烋?[ƒv,ð'†'f
          if @learned == false
            break
          end
        end
        # ƒ?ƒCƒ"ƒ‹?[ƒv,±,±,Ü,Å
      end
    end
  end
  #--------------------------------------------------------------------------
  # ?œ ƒtƒŒ?[ƒ€?X?V
  #--------------------------------------------------------------------------
  def update
    # C ƒ{ƒ^ƒ",ª‰Ÿ,³,ê,½?ê?‡
    if Input.trigger?(Input::C)
      @learned = false
      self.visible  = false
    end
  end
end
#==============================================================================
# ?¡ Window_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Base
  #--------------------------------------------------------------------------
  # ?œ 'ljÁ?EŒöŠJƒCƒ"ƒXƒ^ƒ"ƒX•Ï?"
  #--------------------------------------------------------------------------
    attr_accessor :level_up_flags             # LEVEL UP!•\ަ
end
#==============================================================================
# ?¡ Scene_Battle
#==============================================================================
class Scene_Battle
  #--------------------------------------------------------------------------
  # ?œ ƒAƒtƒ^?[ƒoƒgƒ‹ƒtƒF?[ƒYŠJŽn
  #--------------------------------------------------------------------------
  alias xrxs_bp10_start_phase5 start_phase5
  def start_phase5
    xrxs_bp10_start_phase5
    # Šl"¾ EXP,ðŽæ"¾
    @exp_gained = battle_exp
    # EXP Šl"¾,ðŽæ,è?Á,•
    for i in 0...$game_party.actors.size
      actor = $game_party.actors
      if actor.cant_get_exp? == false
        last_level = actor.level
        actor.exp -= @exp_gained
        if actor.level < last_level
          @status_window.level_up_flags = false
        end
      end
    end
    # ?Ý'è
    @exp_gain_actor    = -1
    # ƒŠƒUƒ‹ƒgƒEƒBƒ"ƒhƒE,ð•\ަ
    @result_window.visible = true
  end
  #--------------------------------------------------------------------------
  # ?œ ƒtƒŒ?[ƒ€?X?V (ƒAƒtƒ^?[ƒoƒgƒ‹ƒtƒF?[ƒY)
  #--------------------------------------------------------------------------
  alias xrxs_bp10_update_phase5 update_phase5
  def update_phase5
    @level_up_phase_done = false if @level_up_phase_done != true
    # C ƒ{ƒ^ƒ",ª‰Ÿ,³,ê,½?ê?‡
    if Input.trigger?(Input::C)
      # ƒEƒBƒ"ƒhƒE,ð•Â,¶,ÄŽŸ,̃AƒNƒ^?[,Ö
      @levelup_window.visible = false if @levelup_window != nil
      @status_window.level_up_flags[@exp_gain_actor] = false
      @level_up_phase_done = phase5_next_levelup
    end
    if @level_up_phase_done
      if @phase5_wait_count < 2
        # ƒŠƒUƒ‹ƒgƒEƒBƒ"ƒhƒE,ðvisible=true,Å,à•s‰ÂŽ‹,É
        @result_window.opacity = 0
        @result_window.back_opacity = 0
        @result_window.contents_opacity = 0
      end
      # ŒÄ,Ñ–ß,•
      xrxs_bp10_update_phase5
      # ƒŒƒxƒ‹ƒAƒbƒv,µ,Ä,¢,é?ê?‡,Í‹­?§ƒoƒgƒ‹?I—¹
      battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0
    end
  end
  #--------------------------------------------------------------------------
  # ?œ ŽŸ,̃AƒNƒ^?[,̃Œƒxƒ‹ƒAƒbƒv•\ަ,Ö
  #--------------------------------------------------------------------------
  def phase5_next_levelup
    begin
      # ŽŸ,̃AƒNƒ^?[,Ö
      @exp_gain_actor += 1
      # ?ÅŒã,̃AƒNƒ^?[,Ì?ê?‡
      if @exp_gain_actor >= $game_party.actors.size
        # ƒAƒtƒ^?[ƒoƒgƒ‹ƒtƒF?[ƒYŠJŽn
        return true
      end
      actor = $game_party.actors[@exp_gain_actor]
      if actor.cant_get_exp? == false
        # Œ»?Ý,Ì"\—Í'l,ð•ÛŽ?
        last_level = actor.level
        last_maxhp = actor.maxhp
        last_maxsp = actor.maxsp
        last_str = actor.str
        last_dex = actor.dex
        last_agi = actor.agi
        last_int = actor.int
        # ?í"¬ŒoŒ±'l,Ì?ÄŽæ"¾
        actor.exp += @exp_gained
        # "»'è
        if actor.level > last_level
          # ƒŒƒxƒ‹ƒAƒbƒv,µ,½?ê?‡
          @status_window.level_up(@exp_gain_actor)
          # ƒŠƒUƒ‹ƒgƒEƒBƒ"ƒhƒE,ð?Á,•
          @result_window.visible = false
          # SE,Ì?Ä?¶
          if LEVEL_UP_SE != ""
            Audio.se_play(LEVEL_UP_SE)
          end
          # ME,Ì?Ä?¶
          if LEVEL_UP_ME != ""
            Audio.me_stop
            Audio.me_play(LEVEL_UP_ME)
          end
          # LEVEL-UPƒEƒBƒ"ƒhƒE,Ì?Ý'è
          actors_size = [$game_party.actors.size, 4].max
          x_shift = 160 + (640 - 160*actors_size)/(actors_size - 1)
          x = x_shift * @exp_gain_actor
          y = 128
          @levelup_window = Window_LevelUpWindow.new(x, y, actor, last_level,
            actor.maxhp - last_maxhp, actor.maxsp - last_maxsp, actor.str - last_str,
            actor.dex - last_dex, actor.agi - last_agi, actor.int - last_int)
          @levelup_window.visible = true
          # ƒXƒe?[ƒ^ƒXƒEƒBƒ"ƒhƒE,ðƒŠƒtƒŒƒbƒVƒ...
          @status_window.refresh
          # ƒXƒLƒ‹?K"¾ƒEƒBƒ"ƒhƒE,Ì?Ý'è
          @skilllearning_window = Window_SkillLearning.new(actor.class_id, last_level, actor.level)
          # ƒEƒFƒCƒgƒJƒEƒ"ƒg,ð?Ý'è
          @phase5_wait_count = 40
          return false
        end
      end
    end until false
  end
 
    def battle_exp
    bexp = 0
    # ƒ‹?[ƒv
    for enemy in $game_troop.enemies
      # ƒGƒlƒ~?[,ª‰B,ê?ó'Ô,Å,È,¢?ê?‡
      unless enemy.hidden
        # Šl"¾,ð'ljÁ
        bexp += enemy.exp
      end
    end
    return bexp
  end

end




Kokowam

You could always go to Blizzard's site, ChaosProject. He probably has that in his tons of addons. Just make this a back-up if you can't find anything else.

strykr

I think this may b what im look 4!
NovaSoft Games
---------------------
Twilight Galaxy (In Development)



Leventhan

Use the link on my sig.
There's a lot of levelup scripts.

There's even one when they display all status that rises when leveling up !

Be kind, everyone you meet is fighting a hard battle.

Mia the Rabbit

Found one that works!!!

http://www.creationasylum.net/index.php?showtopic=9017

It only shows the boxes over the first battler though, so it might need a bit of tinkering with



tSwitch



FCF3a A+ C- D H- M P+ R T W- Z- Sf RLCT a cmn+++ d++ e++ f h+++ iw+++ j+ p sf+
Follow my project: MBlok | Find me on: Bandcamp | Twitter | Patreon

Leventhan


Be kind, everyone you meet is fighting a hard battle.