Últimos temas
» [Ace]Movimiento Libre
por brrt Ayer a las 3:57 pm

» Virtual Kingom (Old Version)
por NinjaLOL Ayer a las 3:22 am

» Concurso de relatos - Septiembre/Octubre 2018 [Inscripción]
por raffael_0 Ayer a las 3:18 am

» Laminación [VXACE] [PROYECTO EN CURSO]
por Pocari Vie Oct 12, 2018 12:08 pm

» QUITAR VENTANA DEL MENU (VX ACE)
por THESHINYMISTERXD Sáb Oct 06, 2018 7:46 pm

» Condición para saber si el jugador está caminando
por Sonik Sáb Oct 06, 2018 5:03 pm

» ¿Tileset de un futbolín?
por MCarlos15 Jue Oct 04, 2018 9:07 pm

» RPG Maker VX Ace en MAC
por Er1ck_92 Mar Oct 02, 2018 8:42 am

» Distrito 0 [VXACE]
por BREAK93 Mar Oct 02, 2018 6:08 am

» Necesito taileset modernos pero que no tengan estilo anime por favor
por Doble D Mar Oct 02, 2018 12:36 am

» Fantasy World XP (+ de 200 para o grupo)
por DecinBR Sáb Sep 29, 2018 6:28 pm

» Problemas con un archivo
por AetherIssei Dom Sep 23, 2018 4:08 am


Battlers frontales animación fácil y sencilla [ACE]

Ir abajo

Battlers frontales animación fácil y sencilla [ACE]

Mensaje por Journam el Jue Ago 31, 2017 5:04 pm

Buenas a todos!!, pues estuve revisando en la biblioteca y en los temas y no encontré un script como este, si eres como yo y te gusta mas el sistema de batalla frontal este script es suuuper sencilo y se puede personalizar, solo es copiar y pega.

Da a los enemigos 3 efectos, respiración, movimiento lateral y flotar. puedes configurar la velocidad del movimiento y a que enemigo quieres que se le asigne cada tipo de movimiento con solo poner el ID (puedes combinar movimientos como respirar y lateral a la vez)

Solo copia y pega encima de main y listo.

Yo lo usare en mi proyecto y el efecto es bastante agradable (solo he probado el de respirar y movimiento laterar, flotar aun no pero asumo que saldrá bien)

Lo he combinado con el script de batalla YAN PAC y una barra de HP de los enemigos y funciona perfecto, asi que no creo que les de incompatibilidad.

les dejo el script.

Código:

[size=12]#-------------------------------------------------------------------------------
# Soulpour777 - Animated Battlers
# Script Date: 11:01AM, 6 / 14 / 2014
# Web URL: www.infinitytears.wordpress.com
# Credits and Special Thanks to:
# - Moghunter for the Original Script Idea
# - TheoAllen for the update_origin help and move sidewards fix
#-------------------------------------------------------------------------------
# Description:
# This script allows your enemy battlers to be animated during battle. The
# enemies would also be subjected to three different animated behaviors,
# either they BREATH, FLOAT, or MOVE SIDEWARDS. This is a revival of Moghunter's
# sweet script called Battler L effects, but made it much more appealing and
# compatible with the now popular RPG Maker VX Ace.
#-------------------------------------------------------------------------------
module Soulpour
 module AnimatedBattlers
 # ---------------------- <Editable Region> ------------------------------ #
 # You can edit anything from this module. On this module, if you place
 # the enemy's id inside the arrays, either from Breath, Float and Move Side,
 # it means that those enemies included on the array will have their own
 # respective behaviors (Float, Breath and Move Sidewards).
 # Any enemy id not listed or included inside the array will remain static.
 #------------------------<End of Editable Region>------------------------ #
 BREATH_SPEED = 1 # Speed of the Enemy's Breathing
 BREATH_EFFECT_ENEMY_ID = [30,4,5,82,1,3,7,11,12,13,15,18,9,19,21,23,24,22,26,27,28] # List of Enemy IDs who Breath
 FLOAT_EFFECT_ENEMY_ID = [95] # List of Enemy IDs who Float
 MOVESIDE_EFFECT_ENEMY_ID = [17,4,5,2,16,14,10,6,8,20,25,22,5,4,28,27] # List of Enemy IDs who moves sidewards
 STATES_CANCEL_EFFECT = [80,70] # States Cancel Effect
 end
end
 
class Game_Battler < Game_BattlerBase
 include Soulpour::AnimatedBattlers
 #--------------------------------------------------------------------------
 # * Alias Listings
 # Aliased Methods: add_state(state_id), remove_state(state_id)
 #--------------------------------------------------------------------------
 alias :soulpour_battlerex_add_state :add_state
 alias :soulpour_battlerex_remove_state :remove_state
 #--------------------------------------------------------------------------
 # * Add State
 #--------------------------------------------------------------------------
 def add_state(state_id)
 soulpour_battlerex_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
 #--------------------------------------------------------------------------
 def remove_state(state_id)
 soulpour_battlerex_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

class Game_Enemy
 #--------------------------------------------------------------------------
 # * Included Modules
 #--------------------------------------------------------------------------
 include Soulpour::AnimatedBattlers
 #--------------------------------------------------------------------------
 # * Public Instance Variables
 #--------------------------------------------------------------------------
 attr_accessor :breath_effect # Breath Effect
 attr_accessor :float_effect # Float Effect
 attr_accessor :moveside_effect # Move Side Effect
 #--------------------------------------------------------------------------
 # * Alias Listings
 # Aliased Methods: initialize(index, enemy_id)
 #--------------------------------------------------------------------------
 alias :soulpour_battlerex_initialize :initialize
 #--------------------------------------------------------------------------
 # * Object Initialization
 #--------------------------------------------------------------------------
 def initialize(index, enemy_id)
 soulpour_battlerex_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

class Sprite_Battler
 include Soulpour::AnimatedBattlers
 alias :soulpour_battlerex_initialize :initialize
 alias :soulpour_battlerex_update :update
 alias :soulpour_battlerex_update_origin :update_origin
 #--------------------------------------------------------------------------
 # * Object Initialization
 #--------------------------------------------------------------------------
 def initialize(viewport, battler = nil)
 soulpour_battlerex_initialize(viewport, battler)
 breath_effect_setup(battler)
 float_effect_setup(battler)
 modeside_effect_setup(battler)
 end
 
 #--------------------------------------------------------------------------
 # ● Moveside Effect
 #--------------------------------------------------------------------------
 def modeside_effect_setup(battler)
 @ox_offset = 5
 @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
 
 #--------------------------------------------------------------------------
 # * Frame Update
 #--------------------------------------------------------------------------
 def update
 soulpour_battlerex_update
 if @battler.is_a?(Game_Enemy)
 update_breath_effect
 update_float_effect
 update_move_side_effect
 end
 end
 
 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
 @ox_offset += 2
 when 11..15
 @ox_offset += 1
 when 16..25
 @ox_offset -= 2
 when 26..30
 @ox_offset -= 1
 else
 @moveside_duration = 0
 end
 update_ox
 end
 
 def update_ox
 self.ox = width/2 + @ox_offset
 end
 
 def update_oy
 self.oy = height
 end
 
 
 def update_origin
 return if battler.is_a?(Game_Enemy)
 soulpour_battlerex_update_origin
 end
 
 #--------------------------------------------------------------------------
 # ● Update Float Effect
 #--------------------------------------------------------------------------
 def update_float_effect
 update_ox
 update_oy
 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 += 2
 when 21..35
 self.oy -= 2
 when 36..40
 self.oy -= 2
 else
 @float_duration = 0
 end
 end
 
 #--------------------------------------------------------------------------
 # ● Update Breath Effect
 #--------------------------------------------------------------------------
 def update_breath_effect
 update_ox
 update_oy
 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


Lo encontré en un foro por ahi pero no guarde el link  Neutral

Pero en el script dice que los créditos son para MogHunter


Espero les sea útil.  Very Happy


Si cometi algun error en este post, pido disculpas.
avatar
Journam
PJ de Relleno
PJ de Relleno

Masculino
Nicaragua
RPG Maker : Ace
Mensajes : 20
Monedas : 48
Reputación : 0
Edad : 27

Volver arriba Ir abajo

Volver arriba

- Temas similares

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