Últimos temas
» [MV]Colección de Camas por Japo (6 camas, 16 diseños)
por JapoZero Ayer a las 6:07 am

» Pepíriron2 (juego corto de risa)
por JapoZero Ayer a las 4:07 am

» Orígenes (Temporada 1) ULTRA Resubido
por JapoZero Ayer a las 3:15 am

» The Cursed Forest.
por JapoZero Sáb Ene 25, 2020 4:40 am

» [MV] Story: Sombras en llamas 0.2.5
por Vesper Sáb Ene 25, 2020 3:41 am

» El Castle Quest (VX/ACE) Beta 1 - Navidad
por Serp_13 Vie Ene 24, 2020 9:54 pm

» Tamaño de mapa de mundo
por JapoZero Vie Ene 24, 2020 2:57 pm

» [Análisis] Revisando con Serch: Around me, crimson stained leaves
por JapoZero Vie Ene 24, 2020 5:17 am

» [Análisis] Revisando con Serch: Kiero Miz Naxos Qon Keso
por DopellSerch Vie Ene 24, 2020 1:40 am

» El Dia Z - Demo
por JapoZero Vie Ene 24, 2020 12:17 am

» HERO’s SOUL: ODYSSEY
por JapoZero Vie Ene 24, 2020 12:03 am

» A.N.A. (Demo)
por JapoZero Jue Ene 23, 2020 4:43 am


[VX] Efecto movimiento en enemigos

Ir abajo

[VX] Efecto movimiento en enemigos Empty [VX] Efecto movimiento en enemigos

Mensaje por KRiZaLiD el Miér Mar 22, 2017 8:55 pm

Como dice el título, con este script pueden dar varios tipos de efectos de movimiento a sus enemigos durante la batalla.

Nombre del Script: MOG VX - Battler L Effects
Autor: Moghunter

Código:
#==============================================================================
# +++ MOG VX - Battler L Effects (v1.0) +++
#==============================================================================
# By Moghunter
# http://www.atelier-rgss.com/
#==============================================================================
# Adiciona alguns efeitos de animação no sprite do Battler.
# - Efeito de respirar.
# - Efeito de flutuar.
# - Efeito de mover-se para os lados.
#==============================================================================
module MOG_BATTLER_L_EFFECTS
    #Velocidade da respiração(de 1 a 9)
    BREATH_SPEED = 1
    #Definição dos inimigos que terão o efeito de respiração
    BREATH_EFFECT_ENEMY_ID = [1,4,5] 
    #Definição dos battlers que terão o efeito flutuar.
    FLOAT_EFFECT_ENEMY_ID = [2,3] 
    #Definição dos battlers que terão o efeito movimentar se para os lados.
    MOVESIDE_EFFECT_ENEMY_ID = [1,2,3]
    #Condições que cancelam os efeito do sprite. (Exp - Stop / Paralyze)
    STATES_CANCEL_EFFECT = [7]
end

#===============================================================================
# ■ Game_Battler
#===============================================================================
class Game_Battler
 include MOG_BATTLER_L_EFFECTS
 
 #--------------------------------------------------------------------------
 # ● Add State
 #--------------------------------------------------------------------------                     
 alias breath_effect_add_state add_state
 def add_state(state_id)
    breath_effect_add_state(state_id)
    if self.is_a?(Game_Enemy)
        for i in STATES_CANCEL_EFFECT
            if @states.include?(i)
              @breath_effect = false
              @float_effect = false
              @moveside_effect = false
            end       
        end     
    end
 end 

 #--------------------------------------------------------------------------
 # ● Remove_State
 #--------------------------------------------------------------------------                       
 alias breath_effect_remove_state remove_state
 def remove_state(state_id)
    breath_effect_remove_state(state_id)
    if self.is_a?(Game_Enemy)   
        sce = false
        for i in STATES_CANCEL_EFFECT
            sce = true if @states.include?(i)
        end   
        if sce == false   
          @breath_effect = true if BREATH_EFFECT_ENEMY_ID.include?(@enemy_id)
          @float_effect = true if FLOAT_EFFECT_ENEMY_ID.include?(@enemy_id)
          @moveside_effect = true if MOVESIDE_EFFECT_ENEMY_ID.include?(@enemy_id)         
        end 
    end   
 end 
end

#===============================================================================
# ■ Game_Enemy
#===============================================================================
class Game_Enemy < Game_Battler
 include MOG_BATTLER_L_EFFECTS
 attr_accessor :breath_effect
 attr_accessor :float_effect
 attr_accessor :moveside_effect
 
 #--------------------------------------------------------------------------
 # ● Setup
 #--------------------------------------------------------------------------                   
 alias breath_effect_initialize initialize
 def initialize(index, enemy_id)
    breath_effect_initialize(index, enemy_id)
    @breath_effect = false
    @float_effect = false
    @moveside_effect = false
    @breath_effect = true if BREATH_EFFECT_ENEMY_ID.include?(@enemy_id)
    @float_effect = true if FLOAT_EFFECT_ENEMY_ID.include?(@enemy_id)
    @moveside_effect = true if MOVESIDE_EFFECT_ENEMY_ID.include?(@enemy_id)
 end
end

#===============================================================================
# ■ Sprite_Battler
#===============================================================================
class Sprite_Battler < Sprite_Base
 include MOG_BATTLER_L_EFFECTS
 
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------                   
 alias breath_effect_initialize initialize
 def initialize(viewport, battler = nil)
    breath_effect_initialize(viewport, battler )
    breath_effect_setup(battler)
    float_effect_setup(battler)
    modeside_effect_setup(battler)
 end
 
 #--------------------------------------------------------------------------
 # ● Moveside Effect
 #--------------------------------------------------------------------------                     
 def modeside_effect_setup(battler)
    @moveside_duration = rand(30)
    @moveside_speed = 0
 end 
 
 #--------------------------------------------------------------------------
 # ● Float Effect Setup
 #--------------------------------------------------------------------------                     
 def float_effect_setup(battler)
    @float_duration = rand(40)
    @float_speed = rand(3)
 end
 
 #--------------------------------------------------------------------------
 # ● Breath Effect Setup
 #--------------------------------------------------------------------------                   
 def breath_effect_setup(battler)
    @breath_phase = 0
    @breath_effect = false
    @breath_effect_speed = 0
    if @battler.is_a?(Game_Enemy) and @battler.breath_effect
        initial_breath = 1.00 + (@battler.screen_x * 0.001) - (@battler.screen_y * 0.001)   
        initial_breath = 1.1 if initial_breath > 1.1
        initial_breath = 0.9 if initial_breath < 0.9
        self.zoom_y = initial_breath
        ex_speed = [[BREATH_SPEED, 1].max, 9].min
        speed = ex_speed * 0.001
        @breath_effect_speed = speed + (rand(99) * 0.00001)
    end   
 end
 
 #--------------------------------------------------------------------------
 # ● Update
 #--------------------------------------------------------------------------                 
 alias breath_effect_update update
 def update
    breath_effect_update
    if @battler.is_a?(Game_Enemy)
        update_breath_effect
        update_float_effect
        update_move_side_effect
    end 
 end 
 
 #--------------------------------------------------------------------------
 # ● Update Moveside Effect
 #--------------------------------------------------------------------------                 
 def update_move_side_effect
    return if @battler == nil
    return unless @battler.moveside_effect
    @moveside_speed += 1
    return if @moveside_speed < 4
    @moveside_speed = 0
    @moveside_duration += 1
    case @moveside_duration
        when 0..10
          self.ox += 2
        when 11..15
          self.ox += 1
        when 16..25
          self.ox -= 2
        when 26..30
          self.ox -= 1
        else 
        @moveside_duration = 0
    end
 end
 
 #--------------------------------------------------------------------------
 # ● Update Float Effect
 #--------------------------------------------------------------------------                 
 def update_float_effect
    return if @battler == nil
    return unless @battler.float_effect
    @float_speed += 1
    return if @float_speed < 2
    @float_speed = 0
    @float_duration += 1
    case @float_duration
        when 0..15
          self.oy += 2
        when 16..20 
          self.oy += 1
        when 21..35
          self.oy -= 2
        when 36..40 
          self.oy -= 1
        else 
          @float_duration = 0
    end
 end
 
 #--------------------------------------------------------------------------
 # ● Update Breaht Effect
 #--------------------------------------------------------------------------               
 def update_breath_effect
    return if @battler == nil
    return unless @battler.breath_effect
    if @breath_effect_speed == 0 
        ex_speed = [[BREATH_SPEED, 1].max, 9].min
        speed = ex_speed * 0.001     
        @breath_effect_speed = speed + (rand(99) * 0.00001)
        self.zoom_y = 1 + rand(10) * 0.01
    end 
    if @breath_phase == 0
        self.zoom_y += @breath_effect_speed
        @breath_phase = 1 if self.zoom_y >= 1.05
    else
        self.zoom_y -= @breath_effect_speed
        @breath_phase = 0 if self.zoom_y <= 1.01
    end           
 end   
end 

$mog_rgss2_battler_l_effects = true

No olviden dar los créditos a Moghunter.
saludos
KriZ

_________________
Mi Proyecto:
[VX] Efecto movimiento en enemigos VqJJJp

[VX] Efecto movimiento en enemigos AnrEWG[VX] Efecto movimiento en enemigos UqGVnKv

KRiZaLiD apoya:
[VX] Efecto movimiento en enemigos 3gqmui[VX] Efecto movimiento en enemigos GJ7qjn[VX] Efecto movimiento en enemigos ZhwnH1[VX] Efecto movimiento en enemigos NT6Pp7[VX] Efecto movimiento en enemigos WXmSrO[VX] Efecto movimiento en enemigos CKEALv
KRiZaLiD
KRiZaLiD
Moderador
Moderador

Masculino
Chile
RPG Maker : Vx
Mensajes : 874
Monedas : 4354
Reputación : 113
Edad : 34
Localización : Florida (pueblo fantasma), Chile

Volver arriba Ir abajo

Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.