~Base De Datos de Script de EMD~

Estado
Cerrado para nuevas respuestas
Mensajes
260
Reacciones
0
Puntos
0
Muchos de los scripts para Xp no me funcionan por icompatibilidad de las versiones. Supongo que será porque tengo una versión más vieja del Rpg Maker no?

Por otra parte instalé el sistema de batalla lateral sexy :\ y perdón por la ignorancia pero no sé que es un generador de personajes de RO
 
Mensajes
55
Reacciones
0
Puntos
0
Bueno aqui les dejo un script de evolucion


es del rpg maker xp no se si funciona en el vx

como usarlo
¿Como modificar el nivel en que quiero que suba cada
nivel mi chara?

R: Facil!, tan solo entra en el script y busca esta parte
$game_party.actors[0].level >= 6

Me explico (Donde dice 6) coloquen el numero de niveles que
deseen para que el chara se transforme en esa fase.

¿Como modificar al chara que yo usare? (Este es para modificar el
chara con el que uds se moveran).

R: Sencillo, busquen esta parte
@character_name =

Me explico, al lado de (@character_name =) les saldra un nombre
entre " " ese nombre es la imagen en la que se transformara
su chara a ese nivel que le predeterminaron a su chara .

¿Como modificar la imagen del battler de mi chara?

R: Muy facil!, tan solo busquen esta parte
$game_party.actors[0].battler_name =

Bueno, esto es igual que el anterior, al lado les saldra un nombre
entre " " ese nombre lo deberan cambiar por el que uds quieran
que sea la imagen de su battler.


PD: LAS IMAGENES DE BATTLERS, CHARAS los pueden buscar
en la carpeta data!.

Script

#===============================================================#
# Script de Evoluciones - Hecho por RT5 #
#---------------------------------------------------------------#
# Este script permite que el personaje evolucione #
# Es decir, cada nivel ira cambiando de battler, imagen, fuerza #
# Ya mencionado esto afectara en su status (Fuerza, etc) #
# Cuando mencionamos imagen queremos decir el battler # #
# Disfruten el script!. Todo esta muy bien explicado. #
#===============================================================#

class Game_Battler
attr_accessor:battler_name
end

class Game_Player < Game_Character
alias evoluir_update update
def update
evoluir_update
#Evolucion 3. (Evolucion al nivel 8)
#Defina aqui la ID del personaje, la imagen y el nivel en que evolucionara
if $game_party.actors[0].class_id == 1 and $game_party.actors[0].level >= 8
#Escoja aqui la imagen del personaje numero 3.
@character_name = "082-Angel04"
#Defina la velocidad del personaje numero 3.
@move_speed = 4
#Animacion? True ou False?
@step_anime = false
#Defina aqui el battler del personaje numero 3.
$game_party.actors[0].battler_name = "082-Angel04"
#Evolucion número 2. (Evolucion al nivel 6)
#Defina aqui la ID del personaje, la imagen y el nivel en que evolucionara
elsif $game_party.actors[0].class_id == 1 and $game_party.actors[0].level >= 6
#Escoja aqui la imagen del personaje numero 2
@character_name = "081-Angel03"
#Defina la velocidad del personaje numero 2.
@move_speed = 4
#Animacion? True ou False?
@step_anime = false
#Defina aqui el battler del personaje numero 2.
$game_party.actors[0].battler_name = "081-Angel03"
#Evolucion numero 2. (Evolucion al nivel 3)
#Defina aqui la ID del personaje, la imagen y el nivel en que evolucionara
elsif $game_party.actors[0].class_id == 1 and $game_party.actors[0].level >= 3
#Escoja aqui la imagen del personaje numero 1.
@character_name = "080-Angel02"
#Defina la velocidad del personaje numero 1.
@move_speed = 4
#Animação Fixa? True ou False?
@step_anime = false
#Defina aqui el battler del personaje numero 1.
$game_party.actors[0].battler_name = "080-Angel02"
#Este es el personaje normal, sin evoluciones.
else
#Esoja la imagen del personaje sin evoluciones.
@character_name = "079-Angel01"
#Defina la velocidad del personaje sin evoluciones
@move_speed = 4
#Animacion? True ou False?
@step_anime = true
#Defina aqui el battler del personaje sin evoluciones
$game_party.actors[0].battler_name = "079-Angel01"
end
end
end

#===============================================================#
# Cualquier duda mandenme un correo a [email protected]. #
# Tambien se les agradece sugerencias para mejorar el script. #
#===============================================================#
 
Mensajes
94
Reacciones
0
Puntos
0
hola, queria saber si hay algun script q permita q se juegue como en el dragon ball z buu's fury (GBA), o q por lo menos se puedan tirar ataques... si alguien conoce alguno... q por favor lo diga... gracias
 

Miwel~

EMD Legend
Mensajes
2.453
Reacciones
70
Puntos
842
scripts..scripts...SCRIIIPTS!!!

hola quisiera saber si me pueden dar un scrpt que el menu aparezca como en el golden sun para rpg maker xp

Lo siento no hay ninguno :(

hola, queria saber si hay algun script q permita q se juegue como en el dragon ball z buu's fury (GBA), o q por lo menos se puedan tirar ataques... si alguien conoce alguno... q por favor lo diga... gracias

Si hay, pero solo un engine para 2003.

ola alguien tiene algun script como el de final fantasy tactics advance?

Script de Batalla Tactica Para XP ^^
------------------------
Aparte aqui dejo otro aporte.
Es un script de video el cual use para mi juego de KH.(No es Scene_Movie)
~Reproducir Video a Pantalla Completa:
lo que hace esto no es que el RPG XP reproduzca archivos, sino que con la copmbinación de un programa, se ejecutara el reproductor fullscreen y después se saldrá solo (opcional)
Descargar
(el peso del demo es porque va con el programa necesario y 2 videos)
Si les sirve de creditos a Mi y a Tattyalbo.

~Salu2!
 
Última edición:
Mensajes
19
Reacciones
0
Puntos
0
Ubicación
costa rica/heredia/belen
Busco Un Script Porfa Comentar De Esto Lo Antes Posible Es Para Jugar Con Otro Personaje O Para Dos Lo He Escuchado Y Algunos Comentan De El Pero Nadie Me Dice Nada Concreto Porfa Postear Aqui Y No Involucrar Una Pag Inservible Exterior​
:difus_23::difus_23::difus_23:
 
Mensajes
19
Reacciones
0
Puntos
0
Ubicación
costa rica/heredia/belen
BATALLA LATERAL(FUNCIONA!)
VERSION:
XP

DESCRIPCION:
no necesita una

DEMO:
no es una demo

CREDITOS:
no se quien lo creo

IMAGENES:
INSTRUCCIONES:
crea una nueva clase de script llamada Side View Battle y pone este codigo:
Código:
class Bitmap
if not method_defined?('original_draw_text')
alias original_draw_text draw_text
def draw_text(*arg)

   original_color = self.font.color.dup
   self.font.color = Color.new(0, 0, 0, 128)

   if arg[0].is_a?(Rect)
     arg[0].x += 2
     arg[0].y += 2
     self.original_draw_text(*arg)
     arg[0].x -= 2
     arg[0].y -= 2
   else
     arg[0] += 2
     arg[1] += 2
     self.original_draw_text(*arg)
     arg[0] -= 2
     arg[1] -= 2
   end

   self.font.color = original_color
   self.original_draw_text(*arg)

end
end
def gradation_rect(x, y, width, height, color1, color2, align = 0)
if align == 0
   for i in x...x + width
     red   = color1.red + (color2.red - color1.red) * (i - x) / (width - 1)
     green = color1.green +
             (color2.green - color1.green) * (i - x) / (width - 1)
     blue  = color1.blue +
             (color2.blue - color1.blue) * (i - x) / (width - 1)
     alpha = color1.alpha +
             (color2.alpha - color1.alpha) * (i - x) / (width - 1)
     color = Color.new(red, green, blue, alpha)
     fill_rect(i, y, 1, height, color)
   end
elsif align == 1
   for i in y...y + height
     red   = color1.red +
             (color2.red - color1.red) * (i - y) / (height - 1)
     green = color1.green +
             (color2.green - color1.green) * (i - y) / (height - 1)
     blue  = color1.blue +
             (color2.blue - color1.blue) * (i - y) / (height - 1)
     alpha = color1.alpha +
             (color2.alpha - color1.alpha) * (i - y) / (height - 1)
     color = Color.new(red, green, blue, alpha)
     fill_rect(x, i, width, 1, color)
   end
elsif align == 2
   for i in x...x + width
     for j in y...y + height
       red   = color1.red + (color2.red - color1.red) *
               ((i - x) / (width - 1.0) + (j - y) / (height - 1.0)) / 2
       green = color1.green + (color2.green - color1.green) *
               ((i - x) / (width - 1.0) + (j - y) / (height - 1.0)) / 2
       blue  = color1.blue + (color2.blue - color1.blue) *
               ((i - x) / (width - 1.0) + (j - y) / (height - 1.0)) / 2
       alpha = color1.alpha + (color2.alpha - color1.alpha) *
               ((i - x) / (width - 1.0) + (j - y) / (height - 1.0)) / 2
       color = Color.new(red, green, blue, alpha)
       set_pixel(i, j, color)
     end
   end
elsif align == 3
   for i in x...x + width
     for j in y...y + height
       red   = color1.red + (color2.red - color1.red) *
             ((x + width - i) / (width - 1.0) + (j - y) / (height - 1.0)) / 2
       green = color1.green + (color2.green - color1.green) *
             ((x + width - i) / (width - 1.0) + (j - y) / (height - 1.0)) / 2
       blue  = color1.blue + (color2.blue - color1.blue) *
             ((x + width - i) / (width - 1.0) + (j - y) / (height - 1.0)) / 2
       alpha = color1.alpha + (color2.alpha - color1.alpha) *
             ((x + width - i) / (width - 1.0) + (j - y) / (height - 1.0)) / 2
       color = Color.new(red, green, blue, alpha)
       set_pixel(i, j, color)
     end
   end
end
end
end

module RPG
class Sprite < ::Sprite
def damage(value, critical)
   dispose_damage
   if value.is_a?(Numeric)
     damage_string = value.abs.to_s
   else
     damage_string = value.to_s
   end
   bitmap = Bitmap.new(160, 48)
   bitmap.font.name = "Arial Black"
   bitmap.font.size = 32
   bitmap.font.color.set(0, 0, 0)
   bitmap.draw_text(-1, 12-1, 160, 36, damage_string, 1)
   bitmap.draw_text(+1, 12-1, 160, 36, damage_string, 1)
   bitmap.draw_text(-1, 12+1, 160, 36, damage_string, 1)
   bitmap.draw_text(+1, 12+1, 160, 36, damage_string, 1)
   if value.is_a?(Numeric) and value < 0
     bitmap.font.color.set(176, 255, 144)
   else
     bitmap.font.color.set(255, 255, 255)
   end
   bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
   if critical
     bitmap.font.size = 20
     bitmap.font.color.set(0, 0, 0)
     bitmap.draw_text(-1, -1, 160, 20, "CRITICAL", 1)
     bitmap.draw_text(+1, -1, 160, 20, "CRITICAL", 1)
     bitmap.draw_text(-1, +1, 160, 20, "CRITICAL", 1)
     bitmap.draw_text(+1, +1, 160, 20, "CRITICAL", 1)
     bitmap.font.color.set(255, 255, 255)
     bitmap.draw_text(0, 0, 160, 20, "CRITICAL", 1)
   end
   @_damage_sprite = ::Sprite.new
   @_damage_sprite.bitmap = bitmap
   @_damage_sprite.ox = 80 + self.viewport.ox
   @_damage_sprite.oy = 20 + self.viewport.oy
   @_damage_sprite.x = self.x + self.viewport.rect.x
   @_damage_sprite.y = self.y - self.oy / 2 + self.viewport.rect.y
   @_damage_sprite.z = 3000
   @_damage_duration = 40
end
def animation(animation, hit)
   dispose_animation
   @_animation = animation
   return if @_animation == nil
   @_animation_hit = hit
   @_animation_duration = @_animation.frame_max
   animation_name = @_animation.animation_name
   animation_hue = @_animation.animation_hue
   bitmap = RPG::Cache.animation(animation_name, animation_hue)
   if @@_reference_count.include?(bitmap)
     @@_reference_count[bitmap] += 1
   else
     @@_reference_count[bitmap] = 1
   end
   @_animation_sprites = []
   if @_animation.position != 3 or not @@_animations.include?(animation)
     for i in 0..15
       sprite = ::Sprite.new
       sprite.bitmap = bitmap
       sprite.visible = false
       @_animation_sprites.push(sprite)
     end
     unless @@_animations.include?(animation)
       @@_animations.push(animation)
     end
   end
   update_animation
end
def loop_animation(animation)
   return if animation == @_loop_animation
   dispose_loop_animation
   @_loop_animation = animation
   return if @_loop_animation == nil
   @_loop_animation_index = 0
   animation_name = @_loop_animation.animation_name
   animation_hue = @_loop_animation.animation_hue
   bitmap = RPG::Cache.animation(animation_name, animation_hue)
   if @@_reference_count.include?(bitmap)
     @@_reference_count[bitmap] += 1
   else
     @@_reference_count[bitmap] = 1
   end
   @_loop_animation_sprites = []
   for i in 0..15
     sprite = ::Sprite.new
     sprite.bitmap = bitmap
     sprite.visible = false
     @_loop_animation_sprites.push(sprite)
   end
   update_loop_animation
end
def animation_set_sprites(sprites, cell_data, position)
   for i in 0..15
     sprite = sprites[i]
     pattern = cell_data[i, 0]
     if sprite == nil or pattern == nil or pattern == -1
       sprite.visible = false if sprite != nil
       next
     end
     sprite.visible = true
     sprite.src_rect.set(pattern % 5 * 192, pattern / 5 * 192, 192, 192)
     if position == 3
       if self.viewport != nil
         sprite.x = self.viewport.rect.width / 2
         sprite.y = self.viewport.rect.height - 160
       else
         sprite.x = 320
         sprite.y = 240
       end
     else
       sprite.x = self.x + self.viewport.rect.x -
                   self.ox + self.src_rect.width / 2
       sprite.y = self.y + self.viewport.rect.y -
                   self.oy + self.src_rect.height / 2
       sprite.y -= self.src_rect.height / 4 if position == 0
       sprite.y += self.src_rect.height / 4 if position == 2
     end
     sprite.x += cell_data[i, 1]
     sprite.y += cell_data[i, 2]
     sprite.z = 2000
     sprite.ox = 96
     sprite.oy = 96
     sprite.zoom_x = cell_data[i, 3] / 100.0
     sprite.zoom_y = cell_data[i, 3] / 100.0
     sprite.angle = cell_data[i, 4]
     sprite.mirror = (cell_data[i, 5] == 1)
     sprite.opacity = cell_data[i, 6] * self.opacity / 255.0
     sprite.blend_type = cell_data[i, 7]
   end
end
end
end

class Game_Actor < Game_Battler
def screen_x
   if self.index != nil
   n_split = [($game_party.actors.length * 0.5).ceil, 4].min
   case n_split
   when 1
     n_index = self.index * 2
   when 2
     if self.index < ($game_party.actors.length - 2)
       n_index = 0.5 + (2 * self.index)
     else
       if $game_party.actors.length == 3 then
         n_index = (self.index * 2) + 2
       elsif $game_party.actors.length == 4 then
         n_index = self.index * 2
       end
     end
   when 3
       n_index = self.index + (0.25 * (self.index + 1))
     if $game_party.actors.length == 5
     if self.index < 2
       n_index = self.index + (0.25 * (self.index + 1))
     else
       n_index = self.index + (0.25 * (self.index + 2)) + 1
     end
     end
   when 4
     n_index = self.index
     if $game_party.actors.length == 7
     if self.index < 3
       n_index = self.index
     else
       n_index = self.index + 1
     end
     end
   end
     return (n_index - ((n_index / 4).floor) * 4) * ((160 / (4)) / 5) + 480 + ((n_index / 4).floor * 60)
   else
     return 0
   end
end
#--------------------------------------------------------------------------
# ? ????? Y ?????
#--------------------------------------------------------------------------
def screen_y
   n_split = [($game_party.actors.length * 0.5).ceil, 4].min
   case n_split
   when 1
     n_index = self.index * 2
   when 2
     if self.index < ($game_party.actors.length - 2)
       n_index = 0.5 + (2 * self.index)
     else
       if $game_party.actors.length == 3 then
         n_index = (self.index * 2) + 2
       elsif $game_party.actors.length == 4 then
         n_index = self.index * 2
       end
     end
   when 3
       n_index = self.index + (0.25 * (self.index + 1))
     if $game_party.actors.length == 5
     if self.index < 2
       n_index = self.index + (0.25 * (self.index + 1))
     else
       n_index = self.index + (0.25 * (self.index + 2)) + 1
     end
     end
   when 4
     n_index = self.index
     if $game_party.actors.length == 7
     if self.index < 3
       n_index = self.index
     else
       n_index = self.index + 1
     end
     end
   end
   return (n_index - ((n_index / 4).floor) * 4) * ((160 / (4)) * 1.6) + 270 - ((n_index / 4).floor * (110 - (4 * 20)))
end
#--------------------------------------------------------------------------
# ? ????? Z ?????
#--------------------------------------------------------------------------
def screen_z
   # ??????????? Z ?????????
   if self.index != nil
     return self.index
   else
     return 0
   end
end
end

class Game_Enemy < Game_Battler
def screen_x
   n_split = [($game_troop.enemies.length * 0.5).ceil, 4].min
   case n_split
   when 1
     n_index = self.index * 2
   when 2
     if self.index < ($game_troop.enemies.length - 2)
       n_index = 0.5 + (2 * self.index)
     else
       if $game_troop.enemies.length == 3 then
         n_index = (self.index * 2) + 2
       elsif $game_troop.enemies.length == 4 then
         n_index = self.index * 2
       end
     end
   when 3
       n_index = self.index + (0.25 * (self.index + 1))
     if $game_troop.enemies.length == 5
     if self.index < 2
       n_index = self.index + (0.25 * (self.index + 1))
     else
       n_index = self.index + (0.25 * (self.index + 2)) + 2
     end
     end
   when 4
     n_index = self.index
     if $game_troop.enemies.length == 7
     if self.index < 3
       n_index = self.index
     else
       n_index = self.index + 1
     end
     end
   end
   return (n_index - ((n_index / 4).floor) * 4) * ((-160 / (4)) / 5) + 160 - ((n_index / 4).floor * 60)
end
#--------------------------------------------------------------------------
# ? ????? Y ?????
#--------------------------------------------------------------------------
def screen_y
   n_split = [($game_troop.enemies.length * 0.5).ceil, 4].min
   case n_split
   when 1
     n_index = self.index * 2
   when 2
     if self.index < ($game_troop.enemies.length - 2)
       n_index = 0.5 + (2 * self.index)
     else
       if $game_troop.enemies.length == 3 then
         n_index = (self.index * 2) + 2
       elsif $game_troop.enemies.length == 4 then
         n_index = self.index * 2
       end
     end
   when 3
       n_index = self.index + (0.25 * (self.index + 1))
     if $game_troop.enemies.length == 5
     if self.index < 2
       n_index = self.index + (0.25 * (self.index + 1))
     else
       n_index = self.index + (0.25 * (self.index + 2)) + 1
     end
     end
   when 4
     n_index = self.index
     if $game_troop.enemies.length == 7
     if self.index < 3
       n_index = self.index
     else
       n_index = self.index + 1
     end
     end
   end
   return (n_index - ((n_index / 4).floor) * 4) * ((160 / (4)) * 1.6) + 270 - ((n_index / 4).floor * (110 - (4 * 20)))
end
#--------------------------------------------------------------------------
# ? ????? Z ?????
#--------------------------------------------------------------------------
def screen_z
   return @member_index + 1
end
end

#==============================================================================
# ¦ Sprite_Battler
#------------------------------------------------------------------------------
#  ????????????????Game_Battler ???????????????
# ????????????????????
#==============================================================================

class Sprite_Battler < RPG::Sprite
#--------------------------------------------------------------------------
# ? ??????????
#--------------------------------------------------------------------------
attr_accessor :battler                  # ????
attr_accessor :moving        # Is the sprite moving?
attr_reader   :index
attr_accessor :target_index
attr_accessor :direction
attr_accessor :pattern
#--------------------------------------------------------------------------
# ? ?????????
#     viewport : ??????
#     battler  : ???? (Game_Battler)
#--------------------------------------------------------------------------
def initialize(viewport, battler = nil)
   super(viewport)
   change
   @old = Graphics.frame_count  # For the delay method
   @goingup = true    # Increasing animation? (if @rm2k_mode is true)
   @once = false      # Is the animation only played once?
   @animated = true   # Used to stop animation when @once is true
   self.opacity = 0
   @index = 0
   @pattern_b = 0
   @counter_b = 0
   @trans_sprite = Sprite.new
   @trans_sprite.opacity = 0
   @bar_hp_sprite = Sprite.new
   @bar_hp_sprite.bitmap = Bitmap.new(64, 10)
   @bar_sp_sprite = Sprite.new
   @bar_sp_sprite.bitmap = Bitmap.new(64, 10)
   @color1 = Color.new(0, 0, 0, 192)
   @color2 = Color.new(255, 255, 192, 192)
   @color3 = Color.new(0, 0, 0, 192)
   @color4 = Color.new(64, 0, 0, 192)
   @old_hp = -1
   @old_sp = -1
   @battler = battler
   @battler_visible = false
   @first = true
   @pattern = 0
   if $target_index == nil
     $target_index = 0
   end
   @battler.is_a?(Game_Enemy) ? enemy_pose(0, 1) : pose(0, 1)
end
#--------------------------------------------------------------------------
# ? ??
#--------------------------------------------------------------------------
def dispose
   if self.bitmap != nil
     self.bitmap.dispose
   end
   if @trans_sprite.bitmap != nil
     @trans_sprite.bitmap.dispose
   end
   @trans_sprite.dispose
   @bar_hp_sprite.bitmap.dispose
   @bar_hp_sprite.dispose
   @bar_sp_sprite.bitmap.dispose
   @bar_sp_sprite.dispose
   super
end

def change(frames = 0, delay = 0, offx = 0, offy = 0, startf = 0, once = false)
   @frames = frames
   @delay = delay
   @offset_x, @offset_y = offx, offy
   @current_frame = startf
   @once = once
   @goingup = true
   @animated = true
end
#--------------------------------------------------------------------------
# ? ??????
#--------------------------------------------------------------------------
def update
   bar_check = true if @_damage_duration == 1
   super
   @trans_sprite.blend_type = self.blend_type
   @trans_sprite.color = self.color
   if @_collapse_duration > 0
     @trans_sprite.opacity = self.opacity
   else
     @trans_sprite.opacity = [self.opacity, 160].min
   end
   if (@_damage_duration == 0 and bar_check == true) or @first == true
     @first = false if @first == true
     bar_check = false
     @bar_must_change = true
   end
   @bar_hp_sprite.opacity = self.opacity
   @bar_sp_sprite.opacity = self.opacity
   # ????? nil ???
   if @battler == nil
     self.bitmap = nil
     @trans_sprite.bitmap = nil
     loop_animation(nil)
     return
   end
   # ????????????????????
   if @battler.battler_name != @battler_name or
      @battler.battler_hue != @battler_hue
     # ????????????
     @battler_name = @battler.battler_name
     @battler_hue = @battler.battler_hue
     if @battler.is_a?(Game_Actor)
       @battler_name = @battler.character_name
       @battler_hue = @battler.character_hue
       @direction = 4
     else
       @direction = 6
     end
       self.bitmap = RPG::Cache.character(@battler_name, @battler_hue)
       @width = bitmap.width / 4
       @height = bitmap.height / 4
       @frame_width = @width
       @frame_height = @height
       self.ox = @width / 2
       self.oy = @height
       @pattern = @current_frame
       @direction = @offset_y
       sx = @pattern * @width
       sy = (@direction - 2) / 2 * @height
       self.src_rect.set(sx, sy, @width, @height)
       @current_frame = (@current_frame + 1) unless @frames == 0
       @animated = false if @current_frame == @frames and @once
       @current_frame %= @frames
       @trans_sprite.bitmap = self.bitmap
       @trans_sprite.ox = self.ox
       @trans_sprite.oy = self.oy
       @trans_sprite.src_rect.set(sx, sy, @width, @height)
     # ?????????????????? 0 ???
     if @battler.dead? or @battler.hidden
       self.opacity = 0
       @trans_sprite.opacity = 0
       @bar_hp_sprite.opacity = 0
       @bar_sp_sprite.opacity = 0
     end
   self.x = @battler.screen_x
   self.y = @battler.screen_y
   self.z = @battler.screen_z
end
change_sp_bar if @old_sp != @battler.sp
if delay(@delay) and @animated
     @pattern = @current_frame
     @direction = @offset_y
     sx = @pattern * @width
     sy = (@direction - 2) / 2 * @height
     self.src_rect.set(sx, sy, @width, @height)
     @current_frame = (@current_frame + 1) unless @frames == 0
     @animated = false if @current_frame == @frames and @once
     @current_frame %= @frames
     @trans_sprite.ox = self.ox
     @trans_sprite.oy = self.oy
     @trans_sprite.src_rect.set(sx, sy, @width, @height)
   end
   # ??????? ID ????????????
   if @battler.damage == nil and
      @battler.state_animation_id != @state_animation_id
     @state_animation_id = @battler.state_animation_id
     loop_animation($data_animations[@state_animation_id])
   end
   # ??????????????
   #if @battler.is_a?(Game_Actor) and @battler_visible
     # ???????????????????????
     #if $game_temp.battle_main_phase
       #self.opacity += 3 if self.opacity < 255
     #else
       #self.opacity -= 3 if self.opacity > 207
     #end
   #end
   # ??
   if @battler.blink
     blink_on
   else
     blink_off
   end
   # ??????
   unless @battler_visible
     # ??
     if not @battler.hidden and not @battler.dead? and
        (@battler.damage == nil or @battler.damage_pop)
       appear
       @battler_visible = true
     end
   end
   # ?????
   if @battler_visible
     # ??
     if @battler.hidden
       $game_system.se_play($data_system.escape_se)
       escape
       @trans_sprite.opacity = 0
       @battler_visible = false
     end
     # ??????
     if @battler.white_flash
       whiten
       @battler.white_flash = false
     end
     # ???????
     if @battler.animation_id != 0
       animation = $data_animations[@battler.animation_id]
       animation(animation, @battler.animation_hit)
       @battler.animation_id = 0
     end
     # ????
     if @battler.damage_pop
       damage(@battler.damage, @battler.critical)
       @battler.damage = nil
       @battler.critical = false
       @battler.damage_pop = false
     end
     if @bar_must_change == true
       @bar_must_change = false
       if @old_hp != @battler.hp
         change_hp_bar
       end
       if @battler.damage == nil and @battler.dead?
         if @battler.is_a?(Game_Enemy)
           $game_system.se_play($data_system.enemy_collapse_se)
         else
           $game_system.se_play($data_system.actor_collapse_se)
         end
         collapse
         @battler_visible = false
       end
     end
   end
   # ???????????
   @trans_sprite.x = self.x
   @trans_sprite.y = self.y
   @trans_sprite.z = self.z
   @bar_hp_sprite.x = @battler.screen_x - 32
   @bar_hp_sprite.y = @battler.screen_y - (@height +18) if @height != nil
   @bar_hp_sprite.z = 100
   @bar_sp_sprite.x = @battler.screen_x - 32
   @bar_sp_sprite.y = @battler.screen_y - (@height + 8) if @height != nil
   @bar_sp_sprite.z = 100
end

#--------------------------------------------------------------------------
# - Move the sprite
#   x : X coordinate of the destination point
#   y : Y coordinate of the destination point
#   speed : Speed of movement (0 = delayed, 1+ = faster)
#   delay : Movement delay if speed is at 0
#--------------------------------------------------------------------------
def move(x, y, speed = 1, delay = 0)
   @destx = x
   @desty = y
   @move_speed = speed
   @move_delay = delay
   @move_old = Graphics.frame_count
   @moving = true
end

#--------------------------------------------------------------------------
# - Move sprite to destx and desty
#--------------------------------------------------------------------------
def update_move
   return unless @moving
   movinc = @move_speed == 0 ? 1 : @move_speed
   if Graphics.frame_count - @move_old > @move_delay or @move_speed != 0
     self.x += movinc if self.x < @destx
     self.x -= movinc if self.x > @destx
     self.y += movinc if self.y < @desty
     self.y -= movinc if self.y > @desty
     @move_old = Graphics.frame_count
   end
   if @move_speed > 1  # Check if sprite can't reach that point
     self.x = @destx if (@destx - self.x).abs % @move_speed != 0 and
                        (@destx - self.x).abs <= @move_speed
     self.y = @desty if (@desty - self.y).abs % @move_speed != 0 and
                        (@desty - self.y).abs <= @move_speed
   end
   if self.x == @destx and self.y == @desty
     @moving = false
   end
end

#--------------------------------------------------------------------------
# - Pause animation, but still updates movement
#   frames : Number of frames
#--------------------------------------------------------------------------
def delay(frames)
   update_move
   if (Graphics.frame_count - @old >= frames)
     @old = Graphics.frame_count
     return true
   end
   return false
end

def change_hp_bar
   j = false
  @old_hp = @battler.hp if @old_hp == -1
   i = @old_hp
   loop do
     i -= 10
     if i < @battler.hp
       i = @battler.hp
       j = true
     end
     rate = i.to_f / @battler.maxhp
     @color5 = Color.new(80 - 24 * rate, 80 * rate, 14 * rate, 192)
     @color6 = Color.new(240 - 72 * rate, 240 * rate, 62 * rate, 192)
     @bar_hp_sprite.bitmap.clear
     @bar_hp_sprite.bitmap.fill_rect(0, 0, 64, 10, @color1)
     @bar_hp_sprite.bitmap.fill_rect(1, 1, 62, 8, @color2)
     @bar_hp_sprite.bitmap.gradation_rect(2, 2, 60, 6, @color3, @color4, 1)
     #@bar_hp_sprite.bitmap.fill_rect(2, 2, 60, 6, @color3)
     @bar_hp_sprite.bitmap.gradation_rect(2, 2, 64 * rate - 4, 6, @color5, @color6, 2)
     #@bar_hp_sprite.bitmap.fill_rect(2, 2, 64 * rate - 4, 6, @color5)
     @bar_hp_sprite.opacity = self.opacity
     Graphics.update
     if j == true
       j = false
       break
     end
   end
   @old_hp = @battler.hp
end

def change_sp_bar
   j = false
  @old_sp = @battler.sp if @old_sp == -1
   i = @old_sp
   loop do
     i -= 10
     if i < @battler.sp
       i = @battler.sp
       j = true
     end
     rate = i.to_f / @battler.maxsp
     @color7 = Color.new(14 * rate, 80 - 24 * rate, 80 * rate, 192)
     @color8 = Color.new(62 * rate, 240 - 72 * rate, 240 * rate, 192)
     @bar_sp_sprite.bitmap.clear
     @bar_sp_sprite.bitmap.fill_rect(0, 0, 64, 10, @color1)
     @bar_sp_sprite.bitmap.fill_rect(1, 1, 62, 8, @color2)
     @bar_sp_sprite.bitmap.gradation_rect(2, 2, 60, 6, @color3, @color4, 1)
     #@bar_hp_sprite.bitmap.fill_rect(2, 2, 60, 6, @color3)
     @bar_sp_sprite.bitmap.gradation_rect(2, 2, 64 * rate - 4, 6, @color7, @color8, 0)
     #@bar_hp_sprite.bitmap.fill_rect(2, 2, 64 * rate - 4, 6, @color5)
     @bar_sp_sprite.opacity = self.opacity
     Graphics.update
     if j == true
       j = false
       break
     end
   end
   @old_sp = @battler.sp
end

def enemy                                             #
   $target_index += $game_troop.enemies.size
   $target_index %= $game_troop.enemies.size
   return $game_troop.enemies[$target_index]           #
end                                                   #

def actor                                             #
   $target_index += $game_party.actors.size
   $target_index %= $game_party.actors.size
   return $game_party.actors[$target_index]            #
end

def index=(index)
   @index = index
   update
end

   def pose(number, frames = 4)
   case number
   when 0
     change(frames, 4, 0, 4, 0)
   when 1
     change(frames, 4, 0, 4)
   when 2
     change(frames, 4, 0, 6)
   else
     change(frames, 4, 0, 0, 0)
   end
end

   def enemy_pose(number ,enemy_frames = 4)
   case number
   when 0
     change(enemy_frames, 4, 0, 6, 0)
   when 1
     change(enemy_frames, 4, 0, 4)
   when 2
     change(enemy_frames, 4, 0, 6)
   else
     change(enemy_frames, 4, 0, 0, 0)
   end
end

def default_pose
   pose(0, 1)
end
end

#==============================================================================
# ¦ Spriteset_Battle
#------------------------------------------------------------------------------
#  ???????????????????????????? Scene_Battle ??
# ????????????
#==============================================================================

class Spriteset_Battle
#--------------------------------------------------------------------------
# ? ??????????
#--------------------------------------------------------------------------
attr_reader   :viewport1                # ????????????
attr_reader   :viewport2                # ????????????
attr_accessor :actor_sprites
attr_accessor :enemy_sprites
#--------------------------------------------------------------------------
# ? ?????????
#--------------------------------------------------------------------------
def initialize
   # ?????????
   @viewport1 = Viewport.new(0, 0, 640, 480)
   @viewport2 = Viewport.new(0, 0, 640, 480)
   @viewport3 = Viewport.new(0, 0, 640, 480)
   @viewport4 = Viewport.new(0, 0, 640, 480)
   @viewport2.z = 101
   @viewport3.z = 200
   @viewport4.z = 5000
   if $game_temp.battleback_name == ""
   @battleback_sprite = nil
   @tilemap = Tilemap.new(@viewport1)
   @tilemap.tileset = RPG::Cache.tileset($game_map.tileset_name)
   for i in 0..6
     autotile_name = $game_map.autotile_names[i]
     @tilemap.autotiles[i] = RPG::Cache.autotile(autotile_name)
   end
   @tilemap.map_data = $game_map.data
   @tilemap.priorities = $game_map.priorities
   else
   # ??????????????
   @tilemap = nil
   @battleback_sprite = Sprite.new(@viewport1)
   end
   # ????????????
   @enemy_sprites = []
   for enemy in $game_troop.enemies#.reverse
     @enemy_sprites.push(Sprite_Battler.new(@viewport1, enemy))
   end
   # ????????????
   @actor_sprites = []
   for j in 0..7
       # ƒAƒNƒ^[ƒXƒvƒ‰ƒCƒg‚ð’ljÁ
       @actor_sprites.push(Sprite_Battler.new(@viewport1, $game_party.actors[j]))
   end
   # ?????
   @weather = RPG::Weather.new(@viewport1)
   # ????????????
   @picture_sprites = []
   for i in 51..100
     @picture_sprites.push(Sprite_Picture.new(@viewport3,
       $game_screen.pictures[i]))
   end
   # ????????????
   @timer_sprite = Sprite_Timer.new
   # ??????
   update
end
#--------------------------------------------------------------------------
# ? ??
#--------------------------------------------------------------------------
def dispose
   if @tilemap != nil
   # ?????????
   @tilemap.tileset.dispose
   for i in 0..6
     @tilemap.autotiles[i].dispose
   end
   @tilemap.dispose
   end
   # ??????????????
   if @battleback_sprite != nil
   # ??????????????????????
   if @battleback_sprite.bitmap != nil
     @battleback_sprite.bitmap.dispose
   end
   @battleback_sprite.dispose
   end
   # ??????????????????????
   for sprite in @enemy_sprites + @actor_sprites
     sprite.dispose
   end
   # ?????
   @weather.dispose
   # ????????????
   for sprite in @picture_sprites
     sprite.dispose
   end
   # ????????????
   @timer_sprite.dispose
   # ?????????
   @viewport1.dispose
   @viewport2.dispose
   @viewport3.dispose
   @viewport4.dispose
end
#--------------------------------------------------------------------------
# ? ??????????
#--------------------------------------------------------------------------
def effect?
   # ??????????????? true ???
   for sprite in @enemy_sprites + @actor_sprites
     return true if sprite.effect?
   end
   return false
end
#--------------------------------------------------------------------------
# ? ??????
#--------------------------------------------------------------------------
def update
   # ???????????????????????
   if @battleback_sprite != nil
   if @battleback_name != $game_temp.battleback_name
     @battleback_name = $game_temp.battleback_name
     if @battleback_sprite.bitmap != nil
       @battleback_sprite.bitmap.dispose
     end
     bg_bitmap = RPG::Cache.battleback(@battleback_name)
     bg_bitmap_stretch = Bitmap.new(640, 480)
     bg_bitmap_stretch.stretch_blt(Rect.new(0, 0, 640, 480), bg_bitmap, bg_bitmap.rect)
     @battleback_sprite.bitmap = bg_bitmap_stretch
   end
   end
   if @tilemap != nil
   @tilemap.ox = $game_map.display_x / 4
   @tilemap.oy = $game_map.display_y / 4
   @tilemap.update
   end
   # ????????????
   for sprite in @enemy_sprites + @actor_sprites
     sprite.update
   end
   # ???????????
   @weather.type = $game_screen.weather_type
   @weather.max = $game_screen.weather_max
   @weather.update
   # ????????????
   for sprite in @picture_sprites
     sprite.update
   end
   # ????????????
   @timer_sprite.update
   # ???????????????
   @viewport1.tone = $game_screen.tone
   @viewport1.ox = $game_screen.shake
   # ????????????
   @viewport4.color = $game_screen.flash_color
   # ?????????
   @viewport1.update
   @viewport2.update
   @viewport4.update
end
end

#==============================================================================
# ¦ Window_Command
#------------------------------------------------------------------------------
#  ?????????????????????
#==============================================================================

class Window_Command < Window_Selectable
#--------------------------------------------------------------------------
# ? ?????????
#     width    : ???????
#     commands : ??????????
#--------------------------------------------------------------------------
def initialize(width, commands, column_max = 1, style = 0, inf_scroll = 1)
   # ????????????????????
   super(0, 0, width, (commands.size * 1.0 / column_max).ceil * 32 + 32)
   @inf_scroll = inf_scroll
   @item_max = commands.size
   @commands = commands
   @column_max = column_max
   @style = style
   self.contents = Bitmap.new(width - 32, (@item_max * 1.0 / @column_max).ceil * 32)
   self.contents.font.name = "Tahoma"
   self.contents.font.size = 22
   refresh
   self.index = 0
end
#--------------------------------------------------------------------------
# ? ??????
#--------------------------------------------------------------------------
def refresh
   self.contents.clear
   for i in 0...@item_max
     draw_item(i, normal_color)
   end
end
#--------------------------------------------------------------------------
# ? ?????
#     index : ????
#     color : ???
#--------------------------------------------------------------------------
def draw_item(index, color)
   self.contents.font.color = color
   rect = Rect.new(index%@column_max * (self.width / @column_max) + 4, 32 * (index/@column_max), self.width / @column_max - 40, 32)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   self.contents.draw_text(rect, @commands[index], @style)
end
#--------------------------------------------------------------------------
# ? ??????
#     index : ????
#--------------------------------------------------------------------------
def disable_item(index)
   draw_item(index, disabled_color)
end

def update_help
   @help_window.set_actor($game_party.actors[$scene.actor_index])
end
end

#==============================================================================
# ¦ Arrow_Enemy
#------------------------------------------------------------------------------
#  ????????????????????????????? Arrow_Base ??
# ????????
#==============================================================================

class Arrow_Enemy < Arrow_Base
#--------------------------------------------------------------------------
# ? ?????????????????
#--------------------------------------------------------------------------
def enemy
   return $game_troop.enemies[@index]
end
#--------------------------------------------------------------------------
# ? ??????
#--------------------------------------------------------------------------
def update
   super
   # ???????????????????
   $game_troop.enemies.size.times do
     break if self.enemy.exist?
     @index += 1
     @index %= $game_troop.enemies.size
   end
   # ?????
   if Input.repeat?(Input::DOWN)
     $game_system.se_play($data_system.cursor_se)
     $game_troop.enemies.size.times do
       @index += 1
       @index %= $game_troop.enemies.size
       break if self.enemy.exist?
     end
   end
   # ?????
   if Input.repeat?(Input::UP)
     $game_system.se_play($data_system.cursor_se)
     $game_troop.enemies.size.times do
       @index += $game_troop.enemies.size - 1
       @index %= $game_troop.enemies.size
       break if self.enemy.exist?
     end
   end
   if Input.repeat?(Input::RIGHT)
     $game_system.se_play($data_system.cursor_se)
     $game_troop.enemies.size.times do
       @index += ((($game_troop.enemies.length) * 0.5).ceil)
       @index %= $game_troop.enemies.size
       break if self.enemy.exist?
     end
   end
   if Input.repeat?(Input::LEFT)
     $game_system.se_play($data_system.cursor_se)
     $game_troop.enemies.size.times do
       @index += $game_troop.enemies.size - ((($game_troop.enemies.length) * 0.5).ceil)
       @index %= $game_troop.enemies.size
       break if self.enemy.exist?
     end
   end
   # ???????????
   if self.enemy != nil
     self.x = self.enemy.screen_x + 4
     self.y = self.enemy.screen_y + 36
     self.z = self.enemy.screen_z + 1
   end
end
#--------------------------------------------------------------------------
# ? ?????????
#--------------------------------------------------------------------------
def update_help
   # ????????????????????????
   @help_window.set_enemy(self.enemy)
end
end

#==============================================================================
# ¦ Arrow_Actor
#------------------------------------------------------------------------------
#  ????????????????????????????? Arrow_Base ??
# ????????
#==============================================================================

class Arrow_Actor < Arrow_Base
#--------------------------------------------------------------------------
# ? ?????????????????
#--------------------------------------------------------------------------
def actor
   return $game_party.actors[@index]
end
#--------------------------------------------------------------------------
# ? ??????
#--------------------------------------------------------------------------
def update
   super
   # ?????
   if Input.repeat?(Input::DOWN)
     $game_system.se_play($data_system.cursor_se)
     @index += 1
     @index %= $game_party.actors.size
   end
   # ?????
   if Input.repeat?(Input::UP)
     $game_system.se_play($data_system.cursor_se)
     @index += $game_party.actors.size - 1
     @index %= $game_party.actors.size
   end
   if Input.repeat?(Input::RIGHT)
     $game_system.se_play($data_system.cursor_se)
     @index += ($game_party.actors.length * 0.5).ceil
     @index %= $game_party.actors.size
   end
   # ?????
   if Input.repeat?(Input::LEFT)
     $game_system.se_play($data_system.cursor_se)
     @index += $game_party.actors.size - (($game_party.actors.length * 0.5).ceil)
     @index %= $game_party.actors.size
   end
   # ???????????
   if self.actor != nil
     self.x = self.actor.screen_x
     self.y = self.actor.screen_y + 36
     self.z = self.actor.screen_z + 1
   end
end
#--------------------------------------------------------------------------
# ? ?????????
#--------------------------------------------------------------------------
def update_help
   # ??????????????????????
   @help_window.set_actor(self.actor)
end
end

class Scene_Battle
attr_accessor :actor_index
def main
   # ???????????????
   $game_temp.in_battle = true
   $game_temp.battle_turn = 0
   $game_temp.battle_event_flags.clear
   $game_temp.battle_abort = false
   $game_temp.battle_main_phase = false
   $game_temp.battleback_name = $game_map.battleback_name
   $game_temp.forcing_battler = nil
   # ??????????????????
   $game_system.battle_interpreter.setup(nil, 0)
   # ???????
   @troop_id = $game_temp.battle_troop_id
   $game_troop.setup(@troop_id)
   # ????????????????
   s1 = $data_system.words.attack
   s1 = $data_system.words.attack
   s2 = $data_system.words.skill
   s3 = $data_system.words.guard
   s4 = $data_system.words.item
   @actor_command_window = Window_Command.new(640, [s1, s2, s3, s4], 4)
   @actor_command_window.y = 64
   @actor_command_window.back_opacity = 160
   @actor_command_window.active = false
   @actor_command_window.visible = false
   # ????????????
   @party_command_window = Window_PartyCommand.new
   @help_window = Window_Help.new
   @help_window.back_opacity = 160
   @help_window.visible = false
   #@status_window = Window_BattleStatus.new
   @message_window = Window_Message.new
   # ???????????
   @spriteset = Spriteset_Battle.new
   # ????????????
   @wait_count = 0
   # ?????????
   if $data_system.battle_transition == ""
     Graphics.transition(20)
   else
     Graphics.transition(40, "Graphics/Transitions/" +
       $data_system.battle_transition)
   end
   # ???????????
   start_phase1
   # ??????
   loop do
     # ????????
     Graphics.update
     # ???????
     Input.update
     # ??????
     update
     # ????????????????
     if $scene != self
       break
     end
   end
   # ??????????
$game_map.refresh
   # ?????????
   Graphics.freeze
   # ????????
   @actor_command_window.dispose
   @party_command_window.dispose
   @help_window.dispose
   #@status_window.dispose
   @message_window.dispose
   if @skill_window != nil
     @skill_window.dispose
   end
   if @item_window != nil
     @item_window.dispose
   end
   if @result_window != nil
     @result_window.dispose
   end
   # ???????????
   @spriteset.dispose
   # ???????????????
   if $scene.is_a?(Scene_Title)
     # ??????????
     Graphics.transition
     Graphics.freeze
   end
   # ???????????????????????????
   if $BTEST and not $scene.is_a?(Scene_Gameover)
     $scene = nil
   end
end

def update
   # ?????????????
   if $game_system.battle_interpreter.running?
     # ?????????
     $game_system.battle_interpreter.update
     # ?????????????????????????
     if $game_temp.forcing_battler == nil
       # ?????????????????
       unless $game_system.battle_interpreter.running?
         # ??????????????????????????
         unless judge
           setup_battle_event
         end
       end
       # ????????????????
       if @phase != 5
         # ?????????????????
         #@status_window.refresh
       end
     end
   end
   # ???? (????)??????
   $game_system.update
   $game_screen.update
   # ????? 0 ??????
   if $game_system.timer_working and $game_system.timer == 0
     # ?????
     $game_temp.battle_abort = true
   end
   # ????????
   @help_window.update
   @party_command_window.update
   @actor_command_window.update
   #@status_window.update
   @message_window.update
   # ???????????
   @spriteset.update
   # ?????????????
   if $game_temp.transition_processing
     # ?????????????????
     $game_temp.transition_processing = false
     # ?????????
     if $game_temp.transition_name == ""
       Graphics.transition(20)
     else
       Graphics.transition(40, "Graphics/Transitions/" +
         $game_temp.transition_name)
     end
   end
   # ????????????????
   if $game_temp.message_window_showing
     return
   end
   # ???????????
   if @spriteset.effect?
     return
   end
   # ??????????
   if $game_temp.gameover
     # ??????????????
     $scene = Scene_Gameover.new
     return
   end
   # ???????????
   if $game_temp.to_title
     # ???????????
     $scene = Scene_Title.new
     return
   end
   # ????????
   if $game_temp.battle_abort
     # ??????? BGM ???
     $game_system.bgm_play($game_temp.map_bgm)
     # ?????
     battle_end(1)
     return
   end
   # ????????
   if @wait_count > 0
     # ????????????
     @wait_count -= 1
     return
   end
   
   # this one holds the battle while the player moves
   for actor in @spriteset.actor_sprites
     if actor.moving
       return
     end
   end
   # and this one is for the enemy... 
   for enemy in @spriteset.enemy_sprites
     if enemy.moving# and $game_system.animated_enemy
       return
     end
   end
   # ???????????????????????
   # ????????????????
   if $game_temp.forcing_battler == nil and
      $game_system.battle_interpreter.running?
     return
   end
   # ??????????
   case @phase
   when 1  # ?????????
     update_phase1
   when 2  # ????????????
     update_phase2
   when 3  # ????????????
     update_phase3
   when 4  # ???????
     update_phase4
   when 5  # ???????????
     update_phase5
   end
end

def start_phase2
   # ???? 2 ???
   @phase = 2
   # ?????????????
   @actor_index = -1
   @active_battler = nil
   # ?????????????????
   @party_command_window.active = true
   @party_command_window.visible = true
   # ?????????????????
   @actor_command_window.active = false
   @actor_command_window.visible = false
   @help_window.visible = false
   # ??????????????
   $game_temp.battle_main_phase = false
   # ????????????????
   $game_party.clear_actions
   # ????????????
   unless $game_party.inputable?
     # ?????????
     start_phase4
   end
end

def update_phase2_escape
   # ??????????????
   enemies_agi = 0
   enemies_number = 0
   for enemy in $game_troop.enemies
     if enemy.exist?
       enemies_agi += enemy.agi
       enemies_number += 1
     end
   end
   if enemies_number > 0
     enemies_agi /= enemies_number
   end
   # ??????????????
   actors_agi = 0
   actors_number = 0
   for actor in $game_party.actors
     if actor.exist?
       actors_agi += actor.agi
       actors_number += 1
     end
   end
   if actors_number > 0
     actors_agi /= actors_number
   end
   # ??????
   success = rand(100) < 50 * actors_agi / enemies_agi
   # ???????
   if success
     # ?? SE ???
     $game_system.se_play($data_system.escape_se)
       for actor in $game_party.actors
         @spriteset.actor_sprites[actor.index].pose(2)
         @spriteset.actor_sprites[actor.index].move(660, actor.screen_y, 10)
       end
       check = escape_move
     until check == false
       @spriteset.update
       Graphics.update
       check = escape_move
     end
     # ??????? BGM ???
     $game_system.bgm_play($game_temp.map_bgm)
     # ?????
     battle_end(1)
   # ???????
   else
     # ????????????????
     $game_party.clear_actions
     # ?????????
     start_phase4
   end
end

def escape_move
   for actor in @spriteset.actor_sprites
     if actor.moving
       return true
     end
   end
   return false
end

def start_phase5
   # ???? 5 ???
   @phase = 5
   # ????? ME ???
   $game_system.me_play($game_system.battle_end_me)
   # ??????? BGM ???
   $game_system.bgm_play($game_temp.map_bgm)
   # EXP???????????????
   exp = 0
   gold = 0
   treasures = []
   # ???
   for enemy in $game_troop.enemies
     # ??????????????
     unless enemy.hidden
       # ?? EXP????????
       exp += enemy.exp
       gold += enemy.gold
       # ?????????
       if rand(100) < enemy.treasure_prob
         if enemy.item_id > 0
           treasures.push($data_items[enemy.item_id])
         end
         if enemy.weapon_id > 0
           treasures.push($data_weapons[enemy.weapon_id])
         end
         if enemy.armor_id > 0
           treasures.push($data_armors[enemy.armor_id])
         end
       end
     end
   end
   # ???????? 6 ??????
   treasures = treasures[0..5]
   # 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
       if actor.level > last_level
         #@status_window.level_up(i)
       end
     end
   end
   # ??????
   $game_party.gain_gold(gold)
   # ???????
   for item in treasures
     case item
     when RPG::Item
       $game_party.gain_item(item.id, 1)
     when RPG::Weapon
       $game_party.gain_weapon(item.id, 1)
     when RPG::Armor
       $game_party.gain_armor(item.id, 1)
     end
   end
   # ???????????????
   @result_window = Window_BattleResult.new(exp, gold, treasures)
   # ???????????
   @phase5_wait_count = 100
end

#--------------------------------------------------------------------------
# ? ?????? (???????????)
#--------------------------------------------------------------------------
def update_phase5
   # ????????? 0 ???????
   if @phase5_wait_count > 0
     # ????????????
     @phase5_wait_count -= 1
     # ????????? 0 ??????
     if @phase5_wait_count == 0
       # ????????????
       @result_window.visible = true
       # ??????????????
       $game_temp.battle_main_phase = false
       # ?????????????????
       #@status_window.refresh
     end
     return
   end
   # C ??????????
   if Input.trigger?(Input::C)
     # ?????
     battle_end(0)
   end
end

def phase3_setup_command_window
   # ?????????????????
   @party_command_window.active = false
   @party_command_window.visible = false
   # ?????????????????
   @actor_command_window.active = true
   @actor_command_window.visible = true
   @help_window.visible = true
   # ???????????????????
   if @actor_command_window.help_window == nil
     @actor_command_window.help_window = @help_window
   end
   @actor_command_window.update_help    
   #@actor_command_window.x = @actor_index * 160
   # ??????? 0 ???
   @actor_command_window.index = 0
end
def start_enemy_select
   # ??????????
   @enemy_arrow = Arrow_Enemy.new(@spriteset.viewport2)
   # ?????????????
   @enemy_arrow.help_window = @help_window
   # ?????????????????
   @actor_command_window.active = false
   @actor_command_window.visible = false
end

def update_phase4
   case @phase4_step
   when 1
     update_phase4_step1
   when 2
     update_phase4_step2
   when 3
     update_phase4_step3
   when 4
     update_phase4_step4
   when 5
     update_phase4_step5
   when 6
     update_phase4_step6
   when 7
     update_phase4_step7
   end    
end

def update_phase4_step1

   # Change actor poses to default
   #if @active_battler.is_a?(Game_Actor)
   #  @spriteset.actor_sprites[@active_battler.index].default_pose
   #end
   for i in 0...$game_party.actors.size
     actor = $game_party.actors[i]
     @spriteset.actor_sprites[i].default_pose
   end

   @help_window.visible = false
   if judge
     return
   end
   if $game_temp.forcing_battler == nil
     setup_battle_event
     if $game_system.battle_interpreter.running?
       return
     end
   end
   if $game_temp.forcing_battler != nil
     @action_battlers.delete($game_temp.forcing_battler)
     @action_battlers.unshift($game_temp.forcing_battler)
   end
   if @action_battlers.size == 0
     start_phase2
     return
   end
   @animation1_id = 0
   @animation2_id = 0
   @common_event_id = 0
   @active_battler = @action_battlers.shift
   if @active_battler.index == nil
     return
   end
   if @active_battler.hp > 0 and @active_battler.slip_damage?
     @active_battler.slip_damage_effect
     @active_battler.damage_pop = true
   end
   @active_battler.remove_states_auto
   #@status_window.refresh
   @phase4_step = 2
end

def make_basic_action_result
   
   if @active_battler.is_a?(Game_Actor)
     $actor_on_top = true
   elsif @active_battler.is_a?(Game_Enemy)
     $actor_on_top = false
   end
   if @active_battler.current_action.basic == 0
     @animation1_id = @active_battler.animation1_id
     @animation2_id = @active_battler.animation2_id
     if @active_battler.is_a?(Game_Enemy)
       if @active_battler.restriction == 3
         target = $game_troop.random_target_enemy
       elsif @active_battler.restriction == 2
         target = $game_party.random_target_actor
       else
         index = @active_battler.current_action.target_index
         target = $game_party.smooth_target_actor(index)
       end
#======== here is the setting for the movement & animation...
         x = target.screen_x - 32
         @spriteset.enemy_sprites[@active_battler.index].enemy_pose(2)
         @spriteset.enemy_sprites[@active_battler.index].move(x, target.screen_y, 10)
#========= here if you look at the RPG's movement settings you'll see
#========= that he takes the number 40 for the speed of the animation... 
#========= i thing thats too fast so i settet it down to 10 so looks smoother...
     end
     if @active_battler.is_a?(Game_Actor)
       weapon = $data_weapons[@active_battler.weapon_id]
       range = false
       if weapon != nil
         for id in weapon.element_set
           if $data_system.elements[23] == "Range"
             range = true
             break
           end
         end
       end
       if @active_battler.restriction == 3
         target = $game_party.random_target_actor
       elsif @active_battler.restriction == 2
         target = $game_troop.random_target_enemy
       else
         index = @active_battler.current_action.target_index
         target = $game_troop.smooth_target_enemy(index)
       end
#======= the same thing for the player... ^-^
       x = target.screen_x + 32
       @spriteset.actor_sprites[@active_battler.index].pose(1)
       @spriteset.actor_sprites[@active_battler.index].move(x * (range ? 2 : 1), target.screen_y, 10)
       range = false
     end
     @target_battlers = [target]
     for target in @target_battlers
       target.attack_effect(@active_battler)
     end
     return
   end
   if @active_battler.current_action.basic == 1
     if @active_battler.is_a?(Game_Actor)
       @spriteset.actor_sprites[@active_battler.index].pose(0, 1) #defence
     else
       @spriteset.enemy_sprites[@active_battler.index].enemy_pose(0, 1) #defence
     end
     @help_window.set_text($data_system.words.guard, 1)
     return
   end
   if @active_battler.is_a?(Game_Enemy) and
      @active_battler.current_action.basic == 2
     @help_window.set_text("Escape", 1)
     @active_battler.escape
     return
   end
   if @active_battler.current_action.basic == 3
     $game_temp.forcing_battler = nil
     @phase4_step = 1
     return
   end
   
   if @active_battler.current_action.basic == 4
     if $game_temp.battle_can_escape == false
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     $game_system.se_play($data_system.decision_se)
     update_phase2_escape
     return
   end
end

def make_skill_action_result
   
   @skill = $data_skills[@active_battler.current_action.skill_id]
   unless @active_battler.current_action.forcing
     unless @active_battler.skill_can_use?(@skill.id)
       $game_temp.forcing_battler = nil
       @phase4_step = 1
       return
     end
   end
   @active_battler.sp -= @skill.sp_cost
   #@status_window.refresh
   @help_window.set_text(@skill.name, 1)
   @animation1_id = @skill.animation1_id
   @animation2_id = @skill.animation2_id
     if @active_battler.is_a?(Game_Enemy)
         #@spriteset.enemy_sprites[@active_battler.index].change_sp_bar
          x = @active_battler.screen_x + 48
         @spriteset.enemy_sprites[@active_battler.index].enemy_pose(2)
         @spriteset.enemy_sprites[@active_battler.index].move(x, @active_battler.screen_y, 5)
         @spriteset.enemy_sprites[@active_battler.index].enemy_pose(0, 1)
     end
     if @active_battler.is_a?(Game_Actor)
       #@spriteset.actor_sprites[@active_battler.index].change_sp_bar
       x = @active_battler.screen_x - 48
       @spriteset.actor_sprites[@active_battler.index].pose(1)
       @spriteset.actor_sprites[@active_battler.index].move(x, @active_battler.screen_y, 5)
       @spriteset.actor_sprites[@active_battler.index].pose(0, 1)
     end
   @common_event_id = @skill.common_event_id
   set_target_battlers(@skill.scope)
   for target in @target_battlers
     target.skill_effect(@active_battler, @skill)
   end
end

   def make_item_action_result
  
   # sorry i didnt work on this...
   # couse i dont have a sprite that uses items....
   # so i just added the standby sprite here...
   # when i get more time for this i'll try what i can do for this one... ^-^
   # its the same as the ones above...
   if @active_battler.is_a?(Game_Actor)
     @spriteset.actor_sprites[@active_battler.index].pose(0, 1)
   else
     @spriteset.enemy_sprites[@active_battler.index].enemy_pose(0, 1)
   end
   
   @item = $data_items[@active_battler.current_action.item_id]
   unless $game_party.item_can_use?(@item.id)
     @phase4_step = 1
     return
   end
   if @item.consumable
     $game_party.lose_item(@item.id, 1)
   end
   @help_window.set_text(@item.name, 1)
   @animation1_id = @item.animation1_id
   @animation2_id = @item.animation2_id
   @common_event_id = @item.common_event_id
   index = @active_battler.current_action.target_index
   target = $game_party.smooth_target_actor(index)
   set_target_battlers(@item.scope)
   for target in @target_battlers
     target.item_effect(@item)
   end
end

def update_phase4_step3
   if @active_battler.current_action.kind == 0 and
      @active_battler.current_action.basic == 0
      # in this one... we have our weapon animations... for player and monster
     if @active_battler.is_a?(Game_Actor)
       @spriteset.actor_sprites[@active_battler.index].pose(0,1)
     elsif @active_battler.is_a?(Game_Enemy)
       @spriteset.enemy_sprites[@active_battler.index].enemy_pose(0,1)
     end
   end
   if @animation1_id == 1
     @active_battler.white_flash = true
   else
     @active_battler.animation_id = @animation1_id
     @active_battler.animation_hit = true
   end
   @phase4_step = 4
end

def update_phase4_step4
   # this here is for the hit animation...
   for target in @target_battlers
     target.animation_id = @animation2_id
     target.animation_hit = (target.damage != "Miss")
   end
   @wait_count = 8
   @phase4_step = 5
end

def update_phase4_step5
   if @active_battler.hp > 0 and @active_battler.slip_damage?
     @active_battler.slip_damage_effect
     @active_battler.damage_pop = true
   end
   # ???????????
   @help_window.visible = false
   # ?????????????????
   #@status_window.refresh
   # ??????

   if @active_battler.is_a?(Game_Actor)
     @spriteset.actor_sprites[@active_battler.index].pose(0, 1)
   else
     @spriteset.enemy_sprites[@active_battler.index].enemy_pose(0, 1)
   end
   for target in @target_battlers
     if target.damage != nil
       target.damage_pop = true
       if @active_battler.is_a?(Game_Actor)
         @spriteset.actor_sprites[@active_battler.index].pose(0, 1)
       else
         @spriteset.enemy_sprites[@active_battler.index].enemy_pose(0, 1)
       end
     end
   end
   # ???? 6 ???
   @phase4_step = 6
end

def update_phase4_step6
   
   # here we are asking if the player is dead and is a player or an enemy...
   # these lines are for the running back and standby animation....
   if @active_battler.is_a?(Game_Actor)
     if @active_battler.current_action.basic == 1
       @spriteset.actor_sprites[@active_battler.index].pose(0, 1)
     else
       @spriteset.actor_sprites[@active_battler.index].move(@active_battler.screen_x, @active_battler.screen_y, 20)
       @spriteset.actor_sprites[@active_battler.index].pose(2)
     end
   else
     if @active_battler.current_action.basic == 1
       @spriteset.enemy_sprites[@active_battler.index].enemy_pose(0, 1)
     else
       @spriteset.enemy_sprites[@active_battler.index].move(@active_battler.screen_x, @active_battler.screen_y, 20)
       @spriteset.enemy_sprites[@active_battler.index].enemy_pose(1)
     end
   end
   for target in @target_battlers
     if target.is_a?(Game_Actor)
         @spriteset.actor_sprites[target.index].pose(0, 1)
       else
         @spriteset.enemy_sprites[target.index].enemy_pose(0, 1)
     end
   end
   $game_temp.forcing_battler = nil
   if @common_event_id > 0
     common_event = $data_common_events[@common_event_id]
     $game_system.battle_interpreter.setup(common_event.list, 0)
   end
   @phase4_step = 7
end

def update_phase4_step7
   
   # here we are asking if the player is dead and is a player or an enemy...
   # these lines are for the running back and standby animation....
   if @active_battler.is_a?(Game_Actor)
     @spriteset.actor_sprites[@active_battler.index].pose(0, 1)
   else
     @spriteset.enemy_sprites[@active_battler.index].enemy_pose(0, 1)
   end

   $game_temp.forcing_battler = nil
   if @common_event_id > 0
     common_event = $data_common_events[@common_event_id]
     $game_system.battle_interpreter.setup(common_event.list, 0)
   end
   @phase4_step = 1
end
end

y listo.

:difus_23:mmmm PORFA UNO HACI PARA EL VX:icon_mad::icon_mad:
 
Mensajes
103
Reacciones
0
Puntos
0
Bueno aki les tengo un buen script espero que los disfruten xD.

-Nombre Del Script: Redondel de vida al estilo Kingdomhearts
-Version Del Script:????
-Rpg Maker: XP
-Creditos: Skive

-Introducion: Este script les hace aparecer en la esquina una barra de vida al estilo kingdom heart
-Demo: no tengo ninguna demo sorrys.
-imagen: pegar esta imagen en pictures con el nombre de ''hud'' sin comillas
http://www.cuelgalo.com/viewer.php?id=1194199021_hud.png
-Script: poner esto arriba de main
Código:
#==============================================================================
    # ¦ Kingdom Hearts HUD
    #------------------------------------------------------------------------------
    # by Skive
    # [mail][email protected][/mail]
    #
    # --
    #
    # released on 5th March 2006
    #==============================================================================

    #==============================================================================
    # ¦ Sprite_HP
    #------------------------------------------------------------------------------
    #  the HUD's hp bar
    #==============================================================================

    class Sprite_HP < Sprite
    #--------------------------------------------------------------------------
    # ? instances
    #--------------------------------------------------------------------------
    attr_writer :actor
    #--------------------------------------------------------------------------
    # ? initialize
    #--------------------------------------------------------------------------
    def initialize(actor = nil)
    super(nil)
    self.z = 202
    self.bitmap = Bitmap.new(60, 26)
    @actor = actor
    if [email protected]?
    @hp = @actor.hp
    @maxhp = @actor.maxhp
    end
    refresh
    end
    #--------------------------------------------------------------------------
    # ? refresh
    #--------------------------------------------------------------------------
    def refresh
    self.bitmap.clear
    return if @actor.nil?
    @hp = @actor.hp
    @maxhp = @actor.maxhp
    draw_bar(20, 6)
    self.angle = 270
    end
    #--------------------------------------------------------------------------
    # ? update
    #--------------------------------------------------------------------------
    def update
    super
    if @actor.nil?
    self.bitmap.clear
    return
    end
    if @hp != @actor.hp or @maxhp != @actor.maxhp
    refresh
    end
    end
    #--------------------------------------------------------------------------
    # ? draw_bar
    #--------------------------------------------------------------------------
    def draw_bar(radius, width)
    max = (@actor.hp * 360) / @actor.maxhp
    for j in 1..width
    for i in 0..max
    bx = Math.cos( (i * Math::PI) / 360) * (radius + j)
    by = Math.sin( (i * Math::PI) / 360) * (radius + j)
    case j
    when 1
    color = Color.new(74, 112, 29)
    when 2
    color = Color.new(77, 120, 29)
    when 3
    color = Color.new(80, 131, 28)
    when 4
    color = Color.new(85, 144, 27)
    when 5
    color = Color.new(89, 156, 26)
    when 6
    color = Color.new(93, 167, 26)
    end
    self.bitmap.set_pixel(30 + bx, by, color)
    end
    end
    end
    end

    #==============================================================================
    # ¦ Sprite_SP
    #------------------------------------------------------------------------------
    #  the HUD's sp bar
    #==============================================================================

    class Sprite_SP < Sprite
    #--------------------------------------------------------------------------
    # ? instances
    #--------------------------------------------------------------------------
    attr_writer :actor
    #--------------------------------------------------------------------------
    # ? initialize
    #--------------------------------------------------------------------------
    def initialize(actor = nil)
    super(nil)
    self.z = 202
    self.bitmap = Bitmap.new(60, 26)
    @actor = actor
    if [email protected]?
    @sp = @actor.sp
    @maxsp = @actor.maxsp
    end
    refresh
    end
    #--------------------------------------------------------------------------
    # ? refresh
    #--------------------------------------------------------------------------
    def refresh
    self.bitmap.clear
    return if @actor.nil?
    @sp = @actor.sp
    @maxsp = @actor.maxsp
    draw_bar(20, 6)
    self.angle = 90
    self.mirror = true
    end
    #--------------------------------------------------------------------------
    # ? update
    #--------------------------------------------------------------------------
    def update
    super
    if @actor.nil?
    self.bitmap.clear
    return
    end
    if @sp != @actor.sp or @maxsp != @actor.maxsp
    refresh
    end
    end
    #--------------------------------------------------------------------------
    # ? draw_bar
    #--------------------------------------------------------------------------
    def draw_bar(radius, width)
    max = (@actor.sp * 360) / @actor.maxsp
    for j in 1..width
    for i in 0..max
    bx = Math.cos( (i * Math::PI) / 360) * (radius + j)
    by = Math.sin( (i * Math::PI) / 360) * (radius + j)
    case j
    when 1
    color = Color.new(29, 82, 112)
    when 2
    color = Color.new(29, 86, 120)
    when 3
    color = Color.new(28, 90, 131)
    when 4
    color = Color.new(27, 96, 144)
    when 5
    color = Color.new(26, 102, 156)
    when 6
    color = Color.new(26, 106, 167)
    end
    self.bitmap.set_pixel(30 + bx, by, color)
    end
    end
    end
    end

    #==============================================================================
    # ¦ Sprite_HUD
    #------------------------------------------------------------------------------
    #  draws the HUD on the map
    #==============================================================================

    class Sprite_HUD < Sprite
    #--------------------------------------------------------------------------
    # ? initialize
    #--------------------------------------------------------------------------
    def initialize(corner = 4)
    super(nil)
    self.z = 200
    for actor in $game_party.actors
    next if actor.dead?
    @actor = actor
    @actor_index = $game_party.actors.index(@actor)
    break
    end
    @hp_sprite = Sprite_HP.new(@actor)
    @sp_sprite = Sprite_SP.new(@actor)
    self.bitmap = Bitmap.new(60, 60)
    case corner
    when 1
    x = 16
    y = 16
    when 2
    x = 640 - 52 - 16
    y = 16
    when 3
    x = 16
    y = 480 - 52 - 16
    when 4
    x = 640 - 52 - 16
    y = 480 - 52 - 16
    end
    self.x = x
    self.y = y
    @hp_sprite.x = x + 27
    @hp_sprite.y = y - 3
    @sp_sprite.x = x + 27 - 1
    @sp_sprite.y = y - 3 - 1 + 60
    refresh
    end
    #--------------------------------------------------------------------------
    # ? refresh
    #--------------------------------------------------------------------------
    def refresh
    self.bitmap.clear
    return if @actor.nil?
    bmp = RPG::Cache.character(@actor.character_name, @actor.character_hue)
    rect = Rect.new(0, 0, bmp.width / 4, (bmp.height / 4))
    self.bitmap.blt(27 - bmp.width / 8, 5, bmp, rect)
    self.bitmap.blt(0, 0, RPG::Cache.picture("hud"), Rect.new(0, 0, 60, 60))
    end
    #--------------------------------------------------------------------------
    # ? update
    #--------------------------------------------------------------------------
    def update
    super
    @hp_sprite.update
    @sp_sprite.update
    if @actor != $game_party.actors[@actor_index]
    @actor = $game_party.actors[@actor_index]
    @hp_sprite.actor = @actor
    @sp_sprite.actor = @actor
    @hp_sprite.refresh
    @sp_sprite.refresh
    refresh
    end
    end
    end

    #==============================================================================
    # ¦ Scene_Map
    #------------------------------------------------------------------------------
    #  draws the hud on the map screen
    # @khhud_corner is the corner you want the hud to be displayed in.
    # 1 is upper left, 2 is upper right, 3 is bottom left and 4 is bottom right
    #==============================================================================

    class Scene_Map
    alias main_khhud main
    alias update_khhud update
    alias transfer_khhud transfer_player
    #--------------------------------------------------------------------------
    # ? initialize
    #--------------------------------------------------------------------------
    def initialize
    @khhud_corner = 4 # 1 or 2 or 3 or 4
    end
    #--------------------------------------------------------------------------
    # ? main
    #--------------------------------------------------------------------------
    def main
    @hud = Sprite_HUD.new(@khhud_corner)
    main_khhud
    @hud.dispose
    end
    #--------------------------------------------------------------------------
    # ? update
    #--------------------------------------------------------------------------
    def update
    @hud.update
    update_khhud
    end
    end
 
Última edición:
Mensajes
30
Reacciones
0
Puntos
0
hola me pueden pasar el script para un juego estilo fire emblem, creo q es el Gubi´s táctical battley el Evolution Charas, weno me dijeron q ocupaba esos, y si saben de otro q pueda ocupar me podrian decir porfas, se los agradesco
 
Mensajes
103
Reacciones
0
Puntos
0
man aki lo tienes el que querias es un buen script.
que se probeche xD.

-Nombre Del Script: GTBS - GubiD's Tactical Battle System
-Version Del Script: v1.4
-Rpg Maker: XP y VX
-Creditos: GubiD

-Introducion: es un sistema (creo q es de batalla) al estilo fire emblem
-Demo: para XP aki y para VX aki
-imagen:
xp
3e99a643cdfd8c37748b0e04a5ad093c2g.jpg
8375ff1d3ca37f3b901356f8cec66e182g.jpg
361a6b14ca880bfa3f8e445fa4c0beaf2g.jpg

85b64942a6290f88e17011834ac53dc52g.jpg
ddfd5312bf1b2ebc698e288f5d021b922g.jpg
ea306030e6edb5855e1a9ff18ef122d22g.jpg

vx
bc8fae0bc214a75ec96dd7faf3d12c0d4g.jpg


si les sale que el archibo RGSS102E.dll no esta agan lo siguiente.
es simple solo deves crear un proyecto nuevo y guardas (no es nesesario crear una area grande con arboles y que se yo solo crear el proyecto y guardar nada mas) y despues bas hacia la carpeta que esta ese proyecto y buscas el RGSS102E.dll que tiene dentro y lo copias y lo pegas al proyecto que le falta ese archibo, osea al proyecto de batalla tactil estilo fire emblem. Ahora si te sigue saliendo el error es por que tu prg maker tenga otra vercion y puedas que tengas algo como esto RGSS101E.dll en dever de tener este RGSS102E.dll solo deves colocar cambiar nombre y le pegas el que nesesitas en este caso RGSS102E.dll.
 
Última edición:
Mensajes
103
Reacciones
0
Puntos
0
que bueno que sirvan mira aki les traigo otro scritp abajito esta las descripciones =D.
Notas este script lo encontre en Mundo Delixe.


-Nombre Del Script: Anti Hack
-Version Del Script:????
-Rpg Maker: XP
-Creditos: Doest...

-Introducion: Este script no es gran cosa pero ayuda en mucho = ya que hace que no puedan hackear tu juego (cuando esta encriptado).
-imagen: no creo que se nesesario no se puede ver xD.
-Instrucciones:Crea una nueva clase sobre Main y pega el script ponle el nombre que quieras.
-Script:
Código:
#================================================= =============================
# ** TDS Anti Hack
#------------------------------------------------------------------------------
# Defines a different variable for some testing purposes.
#================================================= =============================

# Variable Name
ANTI_HACK_VARIABLE = true

#================================================= =============================
# ** Scene_Map
#------------------------------------------------------------------------------
# This class performs map screen processing.
#================================================= =============================

class Scene_Map
#--------------------------------------------------------------------------
# * Debug Call
#--------------------------------------------------------------------------
def call_debug
# Clear debug call flag
$game_temp.debug_calling = false
if ANTI_HACK_VARIABLE == false
# Play decision SE
$game_system.se_play($data_system.decision_se)
# Straighten player position
$game_player.straighten
# Switch to debug screen
$scene = Scene_Debug.new
end
end
end

#================================================= =============================
# ** Game_Player
#------------------------------------------------------------------------------
# This class handles the player. Its functions include event starting
# determinants and map scrolling. Refer to "$game_player" for the one
# instance of this class.
#================================================= =============================

class Game_Player < Game_Character
#--------------------------------------------------------------------------
# * Passable Determinants
# x : x-coordinate
# y : y-coordinate
# d : direction (0,2,4,6,8)
# * 0 = Determines if all directions are impassable (for jumping)
#--------------------------------------------------------------------------
alias tds_anti_hack_passable? passable?
def passable?(x, y, d)
tds_anti_hack_passable?(x, y, d)
# Get new coordinates
new_x = x + (d == 6 ? 1 : d == 4 ? -1 : 0)
new_y = y + (d == 2 ? 1 : d == 8 ? -1 : 0)
# If coordinates are outside of map
unless $game_map.valid?(new_x, new_y)
# Impassable
return false
end
# If debug mode is ON and ctrl key was pressed
if $DEBUG and Input.press?(Input::CTRL)
# Passable
return true if ANTI_HACK_VARIABLE == false
end
super
end
end
Pd: Alkimista_Zieg me gusto como ordenas los script xD haces que uno encuentre justo lo que nesesita xD saludos y sige asi.
 
Última edición:
Estado
Cerrado para nuevas respuestas
Arriba Pie