Advertisement
Mukadelheid

[ACE] Colorizador + Ajustador de tamaño.

Mar 4th, 2013
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 7.43 KB | None | 0 0
  1. #==============================================================================
  2. #
  3. #    [ACE] Colorizador + Ajustador de tamaño v1.3
  4. #    v1.0 by Mukadelheid
  5. #    v1.1 Simplificado de Métodos
  6. #    v1.2 Agregado una nueva utilidad "breather" al héroe.
  7. #    v1.3 Agregado el "tag" "breather" para eventos .
  8. #==============================================================================
  9. # *****************************************************************************
  10. # ▼ Introducción ▼
  11. # Permite cambiar el tamaño y el color de tu héroe y los  eventos en el mapa.
  12. # En la versión v1.2  permite agregar un efecto de "respiración" sobre el héroe
  13. # y los eventos con gráficos.
  14. #-*****************************************************************************
  15. # *****************************************************************************
  16. # ▼ Modo de Uso ▼
  17. #
  18. # ■■■■ Cambio de Tonalidad  ■■■■
  19. #
  20. #  • Utiliza el comando "Llamar Script" y pon ;
  21. #
  22. # "tonalizer(n, red, green, blue, alpha)"(sin comillas)
  23. #  Siendo "n" el ID de un evento , para el héroe se utiliza "-1"
  24. #  
  25. #  Ejemplo ; tonalizer(4, 150,0,-55,0)
  26. #  Esto hará que el Evento con ID 4 cambie de color , a uno similar a Rojo.
  27. #
  28. #==============================================================================
  29. #==============================================================================
  30. # ■■■■ Cambio de Tamaño ■■■■
  31. #
  32. #  • Utiliza el comando "Llamar Script" y pon ;
  33. #  
  34. # "zoomizer(n, W, H)"(sin comillas)
  35. #  Siendo "n" el ID de un evento , para el héroe se utiliza "-1"
  36. #  Siendo "W" el Ancho , "1.0" seria el tamaño normal, "2.0" seria el doble.
  37. #  Siendo "H" el Alto , "1.0" seria el tamaño normal, "2.0" seria el doble.
  38. #  
  39. #  Ejemplo ; zoomizer(-1, 2.0, 2.0)
  40. #  Esto hará que el héroe cambie de Tamaño , Lo hará al doble de lo normal.~
  41. #
  42. #==============================================================================
  43. #==============================================================================
  44. # ■■■■ "Animación" de respiración a eventos y héroe  ■■■■
  45. #
  46. #  ••• Activado a elección •••
  47. #
  48. #  • Para héroe y eventos puedes utilizar una llamada de script ;
  49. #  
  50. #  •• Llamada de script ••
  51. #     Utiliza el comando "Llamar Script" y pon :
  52. #     "breather(n,m,s)" (sin comillas)
  53. #     Siendo "n" la ID del evento , para el héroe se utiliza "-1"
  54. #     Siendo "m" el tamaño Máximo que alcanzara el evento/héroe
  55. #     Siendo "s" la velocidad de la animación , un valor alto lo hace mas lento.
  56. #     (^recomiendo valores desde "1" hasta "999"^)  
  57. #
  58. #     Ejemplo ; breather(4,1.0,430)
  59. #     Esto hará que el evento con ID 4 tenga una animación de respiro de hasta el
  60. #     DOBLE de su tamaño comenzando desde "0.0"  y una velocidad promedio .
  61. #
  62. #     Para cancelar la animación utiliza el comando "Llamar Script" y pon :
  63. #    
  64. #     "breather(n ,m ,s , br = false)" (sin comillas)
  65. #
  66. #  ••• Activado Automáticamente •••
  67. #
  68. #  • Para eventos puedes utilizar un "tag" en su nombre ;
  69. #
  70. #  •• Tag ••
  71. #     Pon en el nombre del evento ;
  72. #     "<breather=m,s>" (sin comillas)
  73. #     Siendo "m" el tamaño Máximo que alcanzara el evento
  74. #     Siendo "s" la velocidad de la animación , un valor alto lo hace mas lento.
  75. #     (^recomiendo valores desde "1" hasta "999"^)  
  76. #
  77. #==============================================================================
  78. #==============================================================================
  79. class Game_Character
  80. #==============================================================================
  81. #==============================================================================
  82.  
  83.   attr_accessor :zoom_x                
  84.   attr_accessor :zoom_y  
  85.   attr_accessor :zoom_min
  86.   attr_accessor :zoom_speed
  87.   attr_accessor :red              
  88.   attr_accessor :green
  89.   attr_accessor :blue
  90.   attr_accessor :gray
  91.   attr_accessor :breather
  92.  
  93. alias init_public_members_hue init_public_members
  94.  
  95. def init_public_members
  96.  
  97. init_public_members_hue
  98.  
  99. @zoom_x     = 1.0
  100. @zoom_y     = 1.0
  101. @zoom_min   = 0.8
  102. @zoom_speed = 256
  103. @red        = 0
  104. @green      = 0
  105. @blue       = 0
  106. @gray       = 0
  107. @breather   = false
  108.  
  109. end
  110.  
  111. end
  112.  
  113. #==============================================================================
  114. class Sprite_Character < Sprite_Base
  115. #==============================================================================
  116.  
  117. alias update_zoom_fix update
  118. alias set_variable_fix_initialize initialize
  119.  
  120. def initialize(viewport, character = nil)
  121.  
  122.     @zoom_max_zero = 0
  123.     set_variable_fix_initialize(viewport, character)
  124.   end
  125.  
  126. def update
  127.  
  128.   update_zoom_fix
  129.   @zoom_max_zero = (@zoom_max_zero + 1) % (@character.zoom_speed/2)
  130.   f = @character.zoom_speed / 2
  131. if @character.zoom_x or @character.zoom_y != 1.0
  132.  
  133.   self.zoom_x, self.zoom_y = @character.zoom_x, @character.zoom_y
  134.  
  135. end
  136.  
  137. if @character.red + @character.green + @character.blue + @character.gray != 0
  138.  
  139.   self.tone.set(@character.red,@character.green,@character.blue,@character.gray)
  140.  
  141. end
  142.  
  143. if @character.breather
  144.  
  145.   if @character.zoom_speed != 256 or @character.zoom_min != 0.8
  146.    
  147.       self.zoom_x = Math.sin(Math::PI * @zoom_max_zero / f) * @character.zoom_min+ @character.zoom_x
  148.    
  149.       self.zoom_y = self.zoom_x
  150.    
  151.       else
  152.    
  153.         self.zoom_x, self.zoom_y = @character.zoom_x, @character.zoom_y
  154.    
  155.         end
  156.  
  157.   end
  158.  
  159. end
  160.  
  161. end
  162. #==============================================================================
  163. #==============================================================================
  164. class Game_Event < Game_Character
  165. #==============================================================================
  166. #==============================================================================
  167.  
  168.   alias setup_page_settings_breath setup_page_settings
  169.  
  170.  def setup_page_settings
  171.    
  172.   setup_page_settings_breath
  173. if @list
  174.   if /<breather=(.*),(.*)>/i =~ @event.name
  175.    
  176.    @zoom_min, @zoom_speed = $1.to_f, $2.to_i
  177.    @breather = true
  178.  end
  179.  
  180.   @list.each do |list|
  181.  if list.code == 108 || list.code == 408
  182.    
  183.    text = list.parameters[0]
  184.     if /<breather=(.*),(.*)>/i =~ text
  185.      
  186.     @zoom_min, @zoom_speed = $1.to_f, $2.to_i
  187.     @breather = true
  188.    
  189.   end
  190.  
  191.   else
  192.    
  193.   break
  194.  
  195. end
  196.  
  197. end
  198.  
  199. end
  200.  
  201. end
  202.  
  203. end
  204.  
  205. #==============================================================================
  206. #==============================================================================
  207. class Game_Interpreter
  208. #==============================================================================
  209. #==============================================================================
  210.  
  211.   def tonalizer(id, red, green, blue, gray = nil)
  212.    
  213.     hue_tjt = get_character(id)
  214.     return unless hue_tjt
  215.    
  216.     red ||= green ||= blue ||= gray
  217.     hue_tjt.red, hue_tjt.blue ,hue_tjt.green , gray = red, blue , green , gray
  218.    
  219.   end
  220.  
  221.   def zoomizer(id, zoom_x, zoom_y = nil)
  222.    
  223.     zoom_tjt = get_character(id)
  224.     return unless zoom_tjt
  225.    
  226.     zoom_y ||= zoom_x
  227.     zoom_tjt.zoom_x, zoom_tjt.zoom_y = zoom_x, zoom_y
  228.    
  229.   end
  230.  
  231.   def breather(id, zoom_min, zoom_speed , br = true)
  232.     breath_er = get_character(id)
  233.     breath_er.breather = br if breath_er
  234.     return unless breath_er
  235.    
  236.     zoom_min ||= 0.8 || zoom_speed ||= 256
  237.     breath_er.zoom_min,breath_er.zoom_speed  = zoom_min, zoom_speed
  238.   end
  239.  
  240. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement