Pokémon Level Script

27 de maio de 2013

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

Download e ficha técnica

  • Download (clique com o botão esquerdo do mouse ou toque no link)
  • Desenvolvedor, publisher e/ou distribuidor: XRXS
  • SO: Windows 98/98SE/Me/2000/XP/Vista/7
  • Tamanho: 856KB (pacote de instalação e/ou espaço em disco)
  • Licença: Grátis
  • Categoria: Programação XP
  • Tag: Pokémon
  • Adicionado por: LichKing
  • Acessos: 37

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!

Deixe um comentário

Inscreva-se na nossa newsletter!