MOG Animated Arrow é um script desenvolvido pelo Moghunter para ser usado com o RPG Maker XP que cria um sistema de cursor de batalha animado.
O script permite colocar quantos frames desejar, desde que fiquem na mesma imagem (arquivo). Cada frame de imagem deve ter a altura proporcional a largura formando um quadrado.
Copie o arquivo abaixo na pasta Graphics\Windowskin
do seu projeto, ou a imagem que você fizer, ou qualquer uma que tenha o cursor desejado. O nome do arquivo imagem deve ser Arrow.png
.
Insira o código abaixo acima do “Main”:
#_______________________________________________________________________________ # MOG Animated Arrow V1.0 (Last Update 23/05/2007) #_______________________________________________________________________________ # By Moghunter # http://www.atelier-rgss.com #_______________________________________________________________________________ # Deixa o cursor de batalha animado por frames. # O script permite colocar quantos frames desejar, desde que # fiquem na mesma imagem (Arquivo), cada frame de imagem deve # ter a altura proporcional à largura formando um quadrado. # O nome do arquivo imagem deve ser Arrow e deve estar na # pasta Windowskin. #_______________________________________________________________________________ module MOG #Velocidade da animação.(valores menores = mais rápido) ARROW_REF = 10 #Ativar Zoom na horizontal. ARROW_ZOOM_X = false #Ativar Zoom na vertical. ARROW_ZOOM_Y = false #Correção da posição do cursor. ARROW_POS_X = 0 # Horizontal ARROW_POS_Y = 0 # Vertical #_______________________________________________________________________________ end $mogscript = {} if $mogscript == nil $mogscript["Animated_Arrow"] = true #################### # Spriteset_Battle # #################### class Spriteset_Battle attr_reader :viewport4 end ################ # Scene_Battle # ################ class Scene_Battle alias mog46_start_actor_select start_actor_select def start_actor_select @actor_arrow = Arrow_Actor.new(@spriteset.viewport4) @actor_arrow.index = @actor_index @actor_arrow.help_window = @help_window @actor_command_window.active = false @actor_command_window.visible = false return mog46_start_actor_select end end ############## # Arrow_Base # ############## class Arrow_Base < Sprite alias mog46_initialize initialize def initialize(viewport) super(viewport) self.bitmap = RPG::Cache.windowskin("Arrow") @div = self.bitmap.height @cal = self.bitmap.width / @div self.ox = @div + MOG::ARROW_POS_X self.oy = @div + MOG::ARROW_POS_Y self.z = 2500 @speed = 0 @blink_count = 0 @index = 0 @help_window = nil update return mog46_initialize(viewport) end alias mog46_update update def update @speed += 1 if @speed > MOG::ARROW_REF @blink_count += 1 @speed = 0 end if @blink_count > @cal - 1 @blink_count = 0 end react_x = @div * @blink_count self.zoom_x += 0.05 if MOG::ARROW_ZOOM_X == true self.zoom_y += 0.05 if MOG::ARROW_ZOOM_Y == true if self.zoom_x > 2 or self.zoom_y > 2 self.zoom_x = 1 self.zoom_y = 1 end self.src_rect.set(react_x, 0, @div, @div) if @help_window != nil update_help end return mog46_update end end
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!