Mighter
Campeón Incondicional
Insertando pantallas y creando
Bueno, hoy en día, gracias a nuestros no muy amables amigos de Gamefreak, la vara de creación de hacks/RPGs de Pokemón está muy alta, por lo que ya no vale tanto la pena conformarse o limitarse con una simple rom de gba o gba. Este post es para poder generar o insertar más bien una portada dinámica como título en tu RPG de pokemón.
¿Portada Dinámica?
¿Cómo lo hacemos?
Usamos variables sencillas para así poder insertar la imágen número 1, luego basados en esa imagen, creamos la imagen número 1_2 y así hasta el límite que tu desees, cada imagen representa lo que es un frame. es decir en palabras muy sencillas una especie de milisegundo. En el cual se irá moviendo la imagen y así una vez se complete el ciclo, de la cantidad de imágenes, este, volverá a mostrar la de inicio. (Para los que saben más, con un simple Do While podrán hacerlo más rápido y sencillo agregando efectos e indicando que busque la imagen 0 a partir desde la 1, y cuando la encuentre que vuelva a comenzar).
El programa ideal para hacer esto es Adobe After Effects, puesto a que pueden insertar todas sus gráficas agregarles efectos y todo, y posterior a eso si ustedes seleccionan la opción PNG este guarda el "Video" por frame es decir imagen_1, imagen_2 y así la duración del video.
# -----------------------------------------------------------------
# Acá va el inicio (No la Introducción)
# -----------------------------------------------------------------
$game_system.bgm_play($data_system.title_bgm)
view = Viewport.new(0,0,Graphics.width,Graphics.height)
view.z = -5
background = Sprite.new
background.bitmap = RPG::Cache.title("Portada1.png")
background.x = 13
background.y = 13
background.z = 0
Graphics.transition(5)
Audio.me_stop
Audio.bgs_stop
timer = 0
frame = 0
loop do
Graphics.update
Input.update
timer += 1
frame += 1
if timer > 20 and timer%35 == 0
start.visible = !start.visible
end
if frame == 0
background2.bitmap = RPG::Cache.title("Portada2_1.png")
end
if frame == 5
background2.bitmap = RPG::Cache.title("Portada2_2.png")
end
if frame == 10
background2.bitmap = RPG::Cache.title("Portada2_3.png")
end
if frame == 15
background2.bitmap = RPG::Cache.title("Portada2_4.png")
end
if frame == 20
background2.bitmap = RPG::Cache.title("Portada2_3.png")
end
if frame == 25
background2.bitmap = RPG::Cache.title("Portada2_2.png")
frame = -5
end
if timer > 20
if Input.trigger?(Input::C)
cry_pokemon(643)
break
end
end
end
Graphics.freeze
background.dispose
background2.dispose
start.dispose
Audio.bgm_stop
# Acá va el inicio (No la Introducción)
# -----------------------------------------------------------------
$game_system.bgm_play($data_system.title_bgm)
view = Viewport.new(0,0,Graphics.width,Graphics.height)
view.z = -5
background = Sprite.new
background.bitmap = RPG::Cache.title("Portada1.png")
background.x = 13
background.y = 13
background.z = 0
Graphics.transition(5)
Audio.me_stop
Audio.bgs_stop
timer = 0
frame = 0
loop do
Graphics.update
Input.update
timer += 1
frame += 1
if timer > 20 and timer%35 == 0
start.visible = !start.visible
end
if frame == 0
background2.bitmap = RPG::Cache.title("Portada2_1.png")
end
if frame == 5
background2.bitmap = RPG::Cache.title("Portada2_2.png")
end
if frame == 10
background2.bitmap = RPG::Cache.title("Portada2_3.png")
end
if frame == 15
background2.bitmap = RPG::Cache.title("Portada2_4.png")
end
if frame == 20
background2.bitmap = RPG::Cache.title("Portada2_3.png")
end
if frame == 25
background2.bitmap = RPG::Cache.title("Portada2_2.png")
frame = -5
end
if timer > 20
if Input.trigger?(Input::C)
cry_pokemon(643)
break
end
end
end
Graphics.freeze
background.dispose
background2.dispose
start.dispose
Audio.bgm_stop
Gracias por leer
Última edición: