¡Bienvenido a Universo Maker!
¿Es esta la primera vez que visitas el foro? Si es así te recomendamos que te registres para tener completo acceso a todas las áreas y secciones del foro, así también podrás participar activamente en la comunidad. Si ya tienes una cuenta, conectate cuanto antes.
Iniciar Sesión Registrarme

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo Mensaje [Página 1 de 1.]

#1 como se ocupa este script el Sáb Jun 04, 2011 8:02 am

the-terror-of_death

avatar

Ase pocos descarge un scripts que me hacia aparecer las imagenes parecido a este video era compatible y todo bien hasta cuando quise colocar imagenes creadas por mi para mejorar algunas escenas de mi proyecto pero no lo consegi
este es el demo
Spoiler:
=begin

**************************************************************************
Script que despliega viñetas y texto como si se tratará de un comic
Versión 1.0.
Creador Newold
**************************************************************************

· INSTRUCCIONES:

________________________________________________________________________
Para llamar al script desde cualquier evento.......
________________________________________________________________________
1) Comando insertar script y añadir esto:

@commands = []


2) Comando insertar script y añadir esto:

@commands.push(COMANDO)

* COMANDO: Ver la lista de comandos disponibles más abajo


3) Comando insertar script y añadir esto:

Newold_Comic.new(FADE,"MUSIC",*@commands)

* FADE: Es un valor que indica cuanto tiempo en frames tardará en
producirse los FADE-IN / FADE-OUT que ejecuta el script

* "MUSIC": Es la música que se ejecutará mientras que el script
esté funcionando. Si no se quiere ninguna música usar nil

* *@commands: Eso va tal cual, no hay que modificarlo


4) Ya está todo listo, el efecto empieza a reproducirse
________________________________________________________________________

________________________________________________________________________
Para llamar al script desde otro script.......
________________________________________________________________________
commands = []
commands.push(COMANDO)
commands.push(COMANDO) ...
Newold_Comic.new(FADE,"MUSIC",*commands)
________________________________________________________________________


---------------------------------------------------------------------------
-----
**** (LISTA DE COMANDOS) ****
---------------------------------------------------------------------------
-----
Puedes poner 3 clases de comandos:

*** Comando 1: Desplegar una imagen. Para ello Usa este Código

["Nombre imagen",Pos X, Pos Y, Width, Height, Angle, Pause]

* "Nombre imagen" => Es el nombre de la imagen que quieres mostrar. Debe
estar en la carpeta picture de tu juego

* Pos X y Pos Y: Son las coordenadas X e Y donde aparecerá la imagen.

* Width y Height: Son el Ancho y alto que tendrá la imagen mostrada

* Angle es el ángulo de inclinación que tendrá la imagen

* Pause: Es un número que indica al script cuantos frames ha de detenerse
antes de poder leer el próximo comando

*** Comando 2: Desplegar un texto. Para ello Usa este código

["text","Texto a mostrar", Color, Tamaño texto, "Fuente", Pause]

* "text": Esto debe ir tal cual sin modificar

* "Texto a mostrar": Este es el texto que quieres mostrar. El texto puede
ser multi-línea. Para ello tan solo debes de pulsar intro para crear cada
línea.

* Color: Es el color que tendrá el texto. Para crear un color
hay que usas este código:

Color.new(red,green,blue,alpha)

- red, green, blue y alpha son valores del 0 al 255

* Tamaño del texto: Es un número que indica el tamaño que tendrá el texto.

* "Fuente": Es el nombre de la fuente que usará el texto

* Pause: Es un número que indica al script cuantos frames ha de detenerse
antes de poder leer el próximo comando

*** Comando 3: Este comando se usa para borrar la imágenes y texto que se
esté viendo actualmente en la pantalla. Para ello usar este código

nil


Ejemplo: Voy a añadir 2 imágenes, 1 texto, 1 borrado, 1 texto:

@commands = []

@commands.push(["Imagen 1",10, 10, 100, 480, 0, 45]) # <- Una imagen
@commands.push(["Imagen 5",182, 10, 300, 120, 15, 80]) # <- Otra imagen
@commands.push(["text","Texto 1",
Color.new(255,255,255,255), 22, "Arial", 100]) # <- Un Texto
@commands.push(nil) # <- Comando para borrar
@commands.push(["text","Texto 2",
Color.new(255,255,255,255), 38, "Times new Roman", 100]) # <- Otro Texto

Newold_Comic.new(20,"música a reproducir",*@commands)

---------------------------------------------------------------------------
-----
**** FIN LISTA COMANDOS ****
---------------------------------------------------------------------------
-----


=end

#==========================================================================
====
class Newold_Comic
#--------------------------------------------------------------------------
----
def initialize(fade_time,music,*images)
main(fade_time,music,images)
end
#--------------------------------------------------------------------------
----
def main(fade_time,music,images)
# -------------------------------------------------------------------
if defined?(Cache)
w, h, cache = 544, 416, Cache
else
w, h, cache = 640,480, RPG::Cache
end
# -------------------------------------------------------------------
fade_time = 10 if fade_time < 1
fade = 0; s = []; mod_fade = 255 / fade_time
color1 = Color.new(0,0,0,255)
color2 = Color.new(255,255,255,255)
color3 = Color.new(80,80,80,80)
data_pos = [[1,0],[1,1],[1,2]]
data_pos2 = [[-1,0],[2,0],[0,-1],[0,3]]
font_size = 22; font_name = 'Arial'
Graphics.freeze
fondo = Sprite.new; fondo.bitmap = Bitmap.new(w,h); fondo.z = 999999999
fondo.bitmap.fill_rect(0,0,w,h,color1)
texto = Sprite.new; texto.bitmap = Bitmap.new(w,h); texto.z = 1000000001
Audio.bgm_play(music) if music != nil
Graphics.transition
# -------------------------------------------------------------------
for image in images
# -------------------------------------------------------------------
if image == nil
while s[0].opacity > 0
for i in 0...s.size
s[i].opacity -= mod_fade
end
texto.opacity -= mod_fade
Graphics.update
end
for i in 0...s.size
s[i].dispose
end
s = []
next
# -------------------------------------------------------------------
elsif image[0] == "text"
texto.bitmap.clear; texto.opacity = 0
texto.bitmap.font.name = (image[4] != nil) ? image[4] : font_name
texto.bitmap.font.size = (image[3] != nil) ? image[3] : font_size
color = (image[2].is_a?(Color)) ? image[2] : color2
pause = (image[5] != nil) ? image[5] : fade_time
text_size = texto.bitmap.text_size('A')
text = image[1].split("n")
for i in 0...text.size
x = 0; y = h-15-(text_size.height * (text.size - i))
texto.bitmap.font.color = color1
for n in 0...data_pos2.size
x1, y1 = x + data_pos2[n][0], y + data_pos2[n][1]
texto.bitmap.draw_text(x1,y1,w,text_size.height,text[i],1)
end
texto.bitmap.font.color = color3
for n in 0...data_pos.size
x1, y1 = x + data_pos[n][0], y + data_pos[n][1]
texto.bitmap.draw_text(x1,y1,w,text_size.height,text[i],1)
end
texto.bitmap.font.color = color
texto.bitmap.draw_text(x,y,w,text_size.height,text[i],1)
end
while texto.opacity < 255
texto.opacity += mod_fade; Graphics.update
end
for i in 0...pause
Graphics.update
end
next
# -------------------------------------------------------------------
else
img = cache.picture(image[0])
x = (image[1] != nil) ? image[1] : (w / 2) - (img.width / 2)
y = (image[2] != nil) ? image[2] : (h / 2) - (img.height / 2)
width = (image[3] != nil) ? image[3] + 6 : img.width + 6
height = (image[4] != nil) ? image[4] + 6 : img.height + 6
angle = (image[5] != nil) ? image[5] : 0
pause = (image[6] != nil) ? image[6] : fade_time
ns = Sprite.new; ns.bitmap = Bitmap.new(width,height)
ns.x, ns.y, ns.angle, ns.opacity, ns.z = x, y, angle, 0, 1000000000
ns.bitmap.fill_rect(0,0,w,h,color2)
ns.bitmap.stretch_blt(Rect.new(3,3,width-6,height-6),img,img.rect)
while ns.opacity < 255
ns.opacity += mod_fade; Graphics.update
end
s.push(ns)
for i in 0...pause
Graphics.update
end
end
# -------------------------------------------------------------------
end
# -------------------------------------------------------------------
while fondo.opacity > 0
fondo.opacity -= mod_fade
texto.opacity -= mod_fade
for i in 0...s.size
s[i].opacity -= mod_fade
end
Graphics.update
end
# -------------------------------------------------------------------
for i in 0...s.size
s[i].dispose
end
fondo.dispose
texto.dispose
# -------------------------------------------------------------------
end
#--------------------------------------------------------------------------
----
end
#==========================================================================
====

y esta es la version 1.2
Spoiler:
=begin

**************************************************************************
Script que despliega viñetas y texto como si se tratará de un comic
Versión 1.2
Creador Newold

* Añadidos en la versión 1.2:
- Añadido 3 comandos nuevos:
* Ahora puedes borrar solo las imágenes o solo los textos.
* Ahora puedes posicionar los textos donde quieras en la pantalla
* Ahora puedes visualizar varios textos a la vez
- Corregido un pequeño bug en el método de borrado

* Añadidos en la versión 1.1:
- Añadido un apartado de configuración
- Posibilidad de usas una tecla para saltar los tiempos que establezcan
las pausas entre imágenes / textos

**************************************************************************

· INSTRUCCIONES:

________________________________________________________________________
Para llamar al script desde cualquier evento.......
________________________________________________________________________
1) Comando insertar script y añadir esto:

@commands = []


2) Comando insertar script y añadir esto:

@commands.push(COMANDO)

* COMANDO: Ver la lista de comandos disponibles más abajo


3) Comando insertar script y añadir esto:

Newold_Comic.new(FADE,"MUSIC",*@commands)

* FADE: Es un valor que indica cuanto tiempo en frames tardará en
producirse los FADE-IN / FADE-OUT que ejecuta el script

* "MUSIC": Es la música que se ejecutará mientras que el script
esté funcionando. Si no se quiere ninguna música usar nil

* *@commands: Eso va tal cual, no hay que modificarlo


4) Ya está todo listo, el efecto empieza a reproducirse
________________________________________________________________________

________________________________________________________________________
Para llamar al script desde otro script.......
________________________________________________________________________
commands = []
commands.push(COMANDO)
commands.push(COMANDO) ...
Newold_Comic.new(FADE,"MUSIC",*commands)
________________________________________________________________________


---------------------------------------------------------------------------
-----
**** (LISTA DE COMANDOS) ****
---------------------------------------------------------------------------
-----
Puedes poner 3 clases de comandos:

*** Comando 1: Desplegar una imagen. Para ello Usa este Código:

["Nombre imagen",Pos X, Pos Y, Width, Height, Angle, Pause]

* "Nombre imagen" => Es el nombre de la imagen que quieres mostrar. Debe
estar en la carpeta picture de tu juego

* Pos X y Pos Y: Son las coordenadas X e Y donde aparecerá la imagen.

* Width y Height: Son el Ancho y alto que tendrá la imagen mostrada

* Angle es el ángulo de inclinación que tendrá la imagen

* Pause: Es un número que indica al script cuantos frames ha de detenerse
antes de poder leer el próximo comando


*** Comando 2: Desplegar un texto. Para ello Usa este código:

["text","Texto a mostrar", Color, Tamaño texto, "Fuente", Pause]

* "text": Esto debe ir tal cual sin modificar

* "Texto a mostrar": Este es el texto que quieres mostrar. El texto puede
ser multi-línea. Para ello tan solo debes de pulsar intro para crear cada
línea.

* Color: Es el color que tendrá el texto. Para crear un color
hay que usas este código:

Color.new(red,green,blue,alpha)

- red, green, blue y alpha son valores del 0 al 255

* Tamaño del texto: Es un número que indica el tamaño que tendrá el texto.

* "Fuente": Es el nombre de la fuente que usará el texto

* Pause: Es un número que indica al script cuantos frames ha de detenerse
antes de poder leer el próximo comando


*** Comando 3: Ativar / Desactivar Multi-textos. Esto hace que se pueda
mostrar más de un texto a la vez. Para ello usar este código:

["command1", Activar o desactivar multi-texto]

* "command1": Esto debe ir tal cual sin modificar

* Activar o desactivar multi-texto: Esto puede ser true (Activar) o
false (Desactivar)


*** Comando 4: Este comando se usa para borrar solo el texto que se está
viendo o solo las imágenes. Para ello usar este código:

["command2", Qué Borrar]

* "command2": Esto debe ir tal cual sin modificar

* Qué Borrar: Esto puede ser 1 (borrar solo el texto) o 2 (Borrar solo
las imágenes)


*** Comando 5: Este comando se usa para mostrar el texto en otra posición
(Por defecto el texto se posiciona abajo y centrado). Los textos
que se creen siempre saldrán en esa posición hasta que no se use otra
vez este comando para variarla
Para ello usar este código:

["command3", Posición, X, Y, Align]

* "command3": Esto debe ir tal cual sin modificar

* Posición: Esto es un valor que indica donde se posicionará el texto.
El valor puede ser:

· 1 -> El texto se posiciona arriba y alineado a la izquierda.
· 2 -> El texto se posiciona arriba y centrado.
· 3 -> El texto se posiciona arriba y alineado a la derecha.
· 4 -> El texto se posiciona en medio y alineado a la izquierda.
· 5 -> El texto se posiciona en medio y centrado.
· 6 -> El texto se posiciona en medio y alineado a la derecha.
· 7 -> El texto se posiciona abajo y alineado a la izquierda.
· 8 -> El texto se posiciona abajo y centrado.
· 9 -> El texto se posiciona abajo y alineado a la derecha.
· 10 -> Este es un valor especial, si se usa, el texto saldrá
posicionado en las Coordenadas X e Y especificadas y alineados
según se disponga en Align. Ten en cuenta que según que
coordenadas uses, el texto se puede salir de la pantalla, así
que tendrías que ajustar el tamaño de tus líneas de texto para
que no se salgan.

* X, Y, Align: Estos son valores especiales. Solo se usan si se ha puesto
10 en Posición. X e Y indica las coordenadas donde saldrá el texto, y Align
indica como estará alineado (0 -> Izquierda, 1 -> Centrado, 2 -> Derecha)



*** Comando 6: Este comando se usa para borrar la imágenes y texto que se
esté viendo actualmente en la pantalla. Para ello usar este código:

nil


Ejemplo: Voy a añadir 2 imágenes, 1 texto, 1 borrado, 1 texto:

@commands = []

@commands.push(["Imagen 1",10, 10, 100, 480, 0, 45]) # <- Una imagen
@commands.push(["Imagen 5",182, 10, 300, 120, 15, 80]) # <- Otra imagen
@commands.push(["text","Texto 1",
Color.new(255,255,255,255), 22, "Arial", 100]) # <- Un Texto
@commands.push(nil) # <- Comando para borrar
@commands.push(["text","Texto 2",
Color.new(255,255,255,255), 38, "Times new Roman", 100]) # <- Otro Texto

Newold_Comic.new(20,"música a reproducir",*@commands)

---------------------------------------------------------------------------
-----
**** FIN LISTA COMANDOS ****
---------------------------------------------------------------------------
-----


=end

#==========================================================================
====
class Newold_Comic
#--------------------------------------------------------------------------
----
def initialize(fade_time,music,*images)
main(fade_time,music,images)
end
#--------------------------------------------------------------------------
----
def main(fade_time,music,images)

# ================================================================
# CONFIGURATION
# ================================================================
color1 = Color.new(0,0,0,255) # Color del fondo
color2 = Color.new(255,255,255,255) # Color del Marco
color3 = Color.new(80,80,80,80) # Color Sombreado del texto
enable_skip_pause = true # Activa / desactiva (true / false) el
# poder usar el botón C para saltar el
# tiempo de espera establecido por las
# pausas
# ================================================================

# -------------------------------------------------------------------
if defined?(Cache)
w, h, cache = 544, 416, Cache
else
w, h, cache = 640,480, RPG::Cache
end
# -------------------------------------------------------------------
fade_time = 10 if fade_time < 1
fade = 0; s = []; mod_fade = 255 / fade_time
data_pos = [[1,0],[1,1],[1,2]]
data_pos2 = [[-1,0],[2,0],[0,-1],[0,3]]
align = 8
multi_text = false
font_size = 22; font_name = 'Arial'
Graphics.freeze
fondo = Sprite.new; fondo.bitmap = Bitmap.new(w,h); fondo.z = 999999999
fondo.bitmap.fill_rect(0,0,w,h,color1)
texto = Sprite.new; texto.bitmap = Bitmap.new(w,h); texto.z = 1000000001
Audio.bgm_play(music) if music != nil
Graphics.transition
# -------------------------------------------------------------------
for image in images
# -------------------------------------------------------------------
if image == nil # Comando borrar todo
while texto.opacity > 0
for i in 0...s.size
s[i].opacity -= mod_fade rescue nil
end
texto.opacity -= mod_fade
Graphics.update
end
for i in 0...s.size
s[i].dispose rescue nil
end
s = []
texto.bitmap.clear
next
# -------------------------------------------------------------------
elsif image[0] == "command1" # Comando Activar/Desactivar Multi-texto
multi_text = image[1]; next
# -------------------------------------------------------------------
elsif image[0] == "command2" # Comando borrar por tipo (Imagen/textos)
if image[1] == 1 # Borrar solo textos
while texto.opacity > 0
texto.opacity -= mod_fade
Graphics.update
end
texto.bitmap.clear
else # Borrar solo Imágenes
if s.size > 0
while s[0].opacity > 0
for i in 0...s.size
s[i].opacity -= mod_fade rescue nil
end
Graphics.update
end
for i in 0...s.size
s[i].dispose rescue nil
end
end
s = []
end
# -------------------------------------------------------------------
elsif image[0] == "command3" # Comando para posicionar el texto
if image[1] == 10
align = [image[2],image[3],image[4]]
else
align = image[1]
end
next
# -------------------------------------------------------------------
elsif image[0] == "text" # Comando para dibujar un texto
unless align.is_a?(Array)
case align
when 1,4,7
h_align = 0
when 2,5,8
h_align = 1
when 3,6,9
h_align = 2
end
case align
when 1..3
v_align = 1
when 4..6
v_align = 2
when 7..9
v_align = 3
end
else
h_align = align[2]
v_align = [align[0],align[1]]
end
if multi_text
texto2 = Sprite.new; texto2.bitmap = Bitmap.new(w,h);
texto2.z = 1000000002; texto2.opacity = 0
ns = texto2
else
texto.bitmap.clear, texto.opacity = 0
ns = texto
end
texto.bitmap.font.name = (image[4] != nil) ? image[4] : font_name
texto.bitmap.font.size = (image[3] != nil) ? image[3] : font_size
color = (image[2].is_a?(Color)) ? image[2] : color2
pause = (image[5] != nil) ? image[5] : fade_time
text_size = texto.bitmap.text_size('A')
text = image[1].split("n")
for i in 0...text.size
case v_align
when 1
y = 15 + (text_size.height * i); x = 0
when 2
y = (h / 2) - ((text_size.height * text.size)/2) +
(text_size.height * i); x = 0
when 3
y = h-15-(text_size.height * (text.size - i)); x = 0
else
x = v_align[0]
y = v_align[1] + (text_size.height * i)
end
ns.bitmap.font.color = color1
for n in 0...data_pos2.size
x1, y1 = x + data_pos2[n][0], y + data_pos2[n][1]
ns.bitmap.draw_text(x1,y1,w,text_size.height,text[i],h_align)
end
ns.bitmap.font.color = color3
for n in 0...data_pos.size
x1, y1 = x + data_pos[n][0], y + data_pos[n][1]
ns.bitmap.draw_text(x1,y1,w,text_size.height,text[i],h_align)
end
ns.bitmap.font.color = color
ns.bitmap.draw_text(x,y,w,text_size.height,text[i],h_align)
end
while ns.opacity < 255
ns.opacity += mod_fade; Graphics.update
end
for i in 0...pause
Input.update; break if Input.press?(Input::C) and enable_skip_pause
Graphics.update
end
if multi_text
texto.bitmap.blt(0,0,ns.bitmap,ns.bitmap.rect)
texto.opacity = 255; ns.dispose
end
next
# -------------------------------------------------------------------
else # Comando para dibujar una imagen
img = cache.picture(image[0])
x = (image[1] != nil) ? image[1] : (w / 2) - (img.width / 2)
y = (image[2] != nil) ? image[2] : (h / 2) - (img.height / 2)
width = (image[3] != nil) ? image[3] + 6 : img.width + 6
height = (image[4] != nil) ? image[4] + 6 : img.height + 6
angle = (image[5] != nil) ? image[5] : 0
pause = (image[6] != nil) ? image[6] : fade_time
ns = Sprite.new; ns.bitmap = Bitmap.new(width,height)
ns.x, ns.y, ns.angle, ns.opacity, ns.z = x, y, angle, 0, 1000000000
ns.bitmap.fill_rect(0,0,w,h,color2)
ns.bitmap.stretch_blt(Rect.new(3,3,width-6,height-6),img,img.rect)
while ns.opacity < 255
ns.opacity += mod_fade; Graphics.update
end
s.push(ns)
for i in 0...pause
Input.update; break if Input.press?(Input::C) and enable_skip_pause
Graphics.update
end
next
end
# -------------------------------------------------------------------
end
# -------------------------------------------------------------------
while fondo.opacity > 0
fondo.opacity -= mod_fade
texto.opacity -= mod_fade
for i in 0...s.size
s[i].opacity -= mod_fade
end
Graphics.update
end
# -------------------------------------------------------------------
for i in 0...s.size
s[i].dispose
end
fondo.dispose
texto.dispose
Input.update
# -------------------------------------------------------------------
end
#--------------------------------------------------------------------------
----
end
#==========================================================================
====

Si alguien sabe como ocupalo o hay un tutorial en el foro que podria
ayudarme por que estoy en jake. Este es el video del demo el creador de
este scripts es newold (de ahi lo saque supongo que fue el) Ópalo Tuerto



tambien dejo el demo para la version rpgxp megaupload.com E0DBXBB9

SI A ALGUIEN SE MOLESTA POR ESTO DOY MIS DISCULPA ES QUE REALMENTE NESESITO SABER COMO SE OCUPA AL 100%
(SI SE QUE LAS INTRUNCIONES ESTAN DENTRO EL PROBLEMA PARA MI EN ESTE
SCRIPT ES QUE NO LO ENTIENDO INCLUSO LEYENDO LAS INTRUCIONES POR ESO LO
COLOQUE AQUI.....SI LEES ESTO ME GUSTARIA QUE PUDIERAS COLOCAR UN VIDEO O
ALGO MAS EXPLICATIVO PARA PODER OCUPARLO EN EL PROYECTO )

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

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