Pokémon Level Script, Level Up Report ou “Pokemon” Level Up Bildschirm Script é um script para o RPG Maker XP, que parece que foi desenvolvido pelo XRXS, para ser usado em games e projetos desenvolvidos neste maker.
Não consegui entender os comentários do script, e nem do minigame (entendo quase nada de alemão). Mas as vezes você já conhece o script e sabe pra que serve e está procurando (aliás, se tiver uma versão traduzida de uma demo e com os comentários, pelo menos em inglês, comente aqui)!
#====== # ====Mache ein neues Script �r Main und kopiere denn Text in das Script ====== #== # # # # # # Window_BattleStatus # #ece XRXS_BP10. LEVEL UP!՜؍Уϸ֜ΦąĂÓĨą plus! ece # by ηʫ ΝԹ # # ضXRXS.RGSSʼ؇ĊĘĞĽăę # # #Script found at http://f26.aaa.livedoor.jp/~xxms/RPGXP_XRXS_BP10.htm #Modified by Guillaume777 # # #============================================================================== # `ĊĘĞĽăęļăÓħ #============================================================================== class Scene_Battle LEVEL_UP_SE = "" # ÌĸËāĢĶSE""Åֳµ LEVEL_UP_ME = "Audio/ME/007-Fanfare01" # ÌĸËāĢĶME end class Window_SkillLearning < Window_Base SKILLLEARN_SE = "Audio/SE/106-Heal02" # ĘČËЋӾSE end #============================================================================== # a Window_LevelUpWindow #------------------------------------------------------------------------------ # įħËЉΞÌĸËāĢĶµ½Ъ͇ÉĘĥĞĘð֜Φ·éąĂÓĨąÅ· #============================================================================== class Window_LevelUpWindow < Window_Base #-------------------------------------------------------------------------- # \ ĉĵėĆĎħω˺ɻ #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # \ ÊĴÌĢĖÅ #-------------------------------------------------------------------------- def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int) self.contents.clear self.contents.font.color = system_color self.contents.font.size = 20 self.contents.font.name = "Comic Sans MS" self.contents.draw_text( 20, 0, 160, 24, "LEVEL UP!!") self.contents.font.size = 20 self.contents.font.name = "Comic Sans MS" 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.font.size = 20 self.contents.font.name = "Comic Sans MS" 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.size = 20 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.font.size = 20 self.contents.font.name = "Comic Sans MS" 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 #============================================================================== # a Window_SkillLearning #------------------------------------------------------------------------------ # ÌĸËāĢĶΞÈÇÉĘČËðЋӾµ½Ъ͇É»êð֜Φ·éąĂÓĨąÅ· #============================================================================== class Window_SkillLearning < Window_Base #-------------------------------------------------------------------------- # \ ͶˊăÓĘĞÓĘ֏Д #-------------------------------------------------------------------------- attr_reader :learned # ĘČËðЋӾµ½©Ç¤© #-------------------------------------------------------------------------- # \ ĉĵėĆĎħω˺ɻ #-------------------------------------------------------------------------- def initialize(class_id, last_lv, now_lv) super(160, 64-32, 320, 64) self.contents = Bitmap.new(width - 32, height - 28) # í´Ædð֜Φ self.visible = false self.back_opacity = 160 @learned = false refresh(class_id, last_lv, now_lv) end #-------------------------------------------------------------------------- # \ ÊĴÌĢĖÅ #-------------------------------------------------------------------------- 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[i].level # ͡ʱÌÌĸËāĢĶՍɍÅЋӾ·éĘČËÌЪ͇ if learn_lv > last_lv and learn_lv <= now_lv @learned = true # SEÌ΄ж if SKILLLEARN_SE != "" Audio.se_play(SKILLLEARN_SE) end # ˥֠ϊ skill_name = $data_skills[$data_classes[class_id].learnings[i].skill_id].name self.contents.clear self.contents.font.name = "Comic Sans MS" self.contents.draw_text(0,0,448,32, skill_name + " learned !!") self.visible = true # ÁăÓËĶ loop do # đÀʦðΘі Graphics.update # Լ؍ЮֱðΘі Input.update # ĴÌÀΘі update # ʦªјèҖíÁ½çËĶð҆Ӧ if @learned == false break end end # ÁăÓËĶ±±ÜÅ end end end #-------------------------------------------------------------------------- # \ ĴÌÀΘі #-------------------------------------------------------------------------- def update # C ĻĞÓªɟ³ê½Ъ͇ if Input.trigger?(Input::C) @learned = false self.visible = false end end end #============================================================================== # a Window_BattleStatus #============================================================================== class Window_BattleStatus < Window_Base #-------------------------------------------------------------------------- # \ Ӈʁ ͶˊăÓĘĞÓĘ֏Д #-------------------------------------------------------------------------- attr_accessor :level_up_flags # LEVEL UP!֜Φ end #============================================================================== # a Scene_Battle #============================================================================== class Scene_Battle #-------------------------------------------------------------------------- # \ āĴĞįħËĴĆęˊϮ #-------------------------------------------------------------------------- alias xrxs_bp10_start_phase5 start_phase5 def start_phase5 xrxs_bp10_start_phase5 # ˬӾ EXPðϦӾ @exp_gained = battle_exp # EXP ˬӾðϦèЁ· for i in 0...$game_party.actors.size actor = $game_party.actors[i] if actor.cant_get_exp? == false last_level = actor.level actor.exp -= @exp_gained if actor.level < last_level @status_window.level_up_flags[i] = false end end end # ѝӨ @exp_gain_actor = -1 # ÊĕËħąĂÓĨąð֜Φ @result_window.visible = true end #-------------------------------------------------------------------------- # \ ĴÌÀΘі (āĴĞįħËĴĆę) #-------------------------------------------------------------------------- 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) # ąĂÓĨąðւ¶ÄΟÌāĎĞÖ @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 # ÊĕËħąĂÓĨąðvisible=trueÅàֳʂÉ @result_window.opacity = 0 @result_window.back_opacity = 0 @result_window.contents_opacity = 0 end # ̈́Ñן· xrxs_bp10_update_phase5 # ÌĸËāĢĶµÄ¢éЪ͇Í˭ЧįħËЉ battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0 end end #-------------------------------------------------------------------------- # \ ΟÌāĎĞÌÌĸËāĢĶ֜ΦÖ #-------------------------------------------------------------------------- def phase5_next_levelup begin # ΟÌāĎĞÖ @exp_gain_actor += 1 # ΅ͣÌāĎĞÌЪ͇ if @exp_gain_actor >= $game_party.actors.size # āĴĞįħËĴĆęˊϮ return true end actor = $game_party.actors[@exp_gain_actor] if actor.cant_get_exp? == false # ̻ΝÌ՜؍Ӭð֛Ν 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 # ѭӬ̱ͯӬÌ΄ϦӾ actor.exp += @exp_gained # ԻӨ if actor.level > last_level # ÌĸËāĢĶµ½Ъ͇ @status_window.level_up(@exp_gain_actor) # ÊĕËħąĂÓĨąðЁ· @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ąĂÓĨąÌѝӨ 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 # ĘĥĞĘąĂÓĨąðÊĴÌĢĖÅ @status_window.refresh # ĘČËЋӾąĂÓĨąÌѝӨ @skilllearning_window = Window_SkillLearning.new(actor.class_id, last_level, actor.level) # ąĆăħĊąÓħðѝӨ @phase5_wait_count = 40 return false end end end u
Observação: se você gostou deste post ou ele lhe foi útil de alguma forma, por favor considere apoiar financeiramente a Gaming Room. Fico feliz só de ajudar, mas a contribuição do visitante é muito importante para que este site continua existindo e para que eu possa continuar provendo este tipo de conteúdo e melhorar cada vez mais. Acesse aqui e saiba como. Obrigado!