Credits e Order
Iniziato da
boko93
, dic 31 2007 12:51
13 risposte a questa discussione
#7
Inviato 01 gennaio 2008 - 07:05
Aspettate, adesso posto lo script per i credits a scorrimento!
Create una nuova classe sopra main e chiamatela "Text_Scroll".
ISTRUZIONI PER L'USO
Create una nuova cartella nella cartella del progetto e chiamatela "Text". Aprite il blocco note e scrivete i vostri credits. Salvate il documento nella cartella "Text" e chiamatelo "Credits.rxdata". Per richiamare lo script selezionate il comando "Call script" dall'elenco degli eventi ("Script" se avete RMXP in italiano) e scrivete questo codice:
Et voil
Create una nuova classe sopra main e chiamatela "Text_Scroll".
CODICE
#================================================= ==
# ■ Text Scroll Script
#================================================= ==
#================================================= ==
# ▼ CLASS Text_Scroller
#================================================= ==
class Text_Scroller
def initialize (file, opacity_scroll, opacity_bg, speed, live_scroll)
text=IO.readlines("Text/#{file}")
$tss_speed = speed
$tss_iteration = 480.0/speed
$tss_sy= (text.size*32) + 64
$tss_scroll_window = Window_Scroll.new(file, 640, $tss_sy)
$tss_scroll_window.opacity = opacity_scroll
$tss_scroll_window.z=500
$tss_scroll_window.x = 0
$tss_scroll_window.y = 480
$tss_bg_window = Window_bg.new
$tss_bg_window.opacity = opacity_bg
$tss_bg_window.z=400
case live_scroll
when 0
update
when 1
$live_scroll=true
end
end
def update
for i in 0...(($tss_sy/480.0) * $tss_iteration) + $tss_iteration
$tss_scroll_window.y -= $tss_speed
Graphics.update
end
$tss_scroll_window.dispose
$tss_bg_window.dispose
end
end
#================================================= ==
# ▼ CLASS Window_Scroll
#================================================= ==
class Window_Scroll < Window_Base
def initialize (file, sx, sy)
@sx=sx
@sy=sy
super(0, 0, sx, sy)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Tahoma"
self.contents.font.size = 24
@text=IO.readlines("Text/#{file}")
@text_color=0
refresh
end
def refresh
y=0
for i in 0...@text.size
y+=32
if @text[i].index('/') == 0
@text_color=@text[i].slice! (0..2)
@text_color.slice!(0)
end
if @text[i].index('*') == 0
line_color=@text[i].slice! (0..2)
line_color.slice!(0)
self.contents.font.color = text_color(line_color.to_i)
else
self.contents.font.color = text_color(@text_color.to_i)
end
self.contents.draw_text(0, y, @sx, 32, @text[i])
end
end
end
#================================================= ==
# ▼ CLASS Book_Scroll
#================================================= ==
class Book_Scroll
def initialize (book_name, number_of_pages, start_page, opacity_scroll, opacity_bg)
file = book_name.to_s+"/"+start_page.to_s+".rxdata"
text=IO.readlines("Text/#{file}")
$tss_sy= (text.size*32) + 64
$tss_scroll_window = Window_Scroll.new(file, 640, $tss_sy)
$tss_scroll_window.opacity = opacity_scroll
$tss_scroll_window.z=500
$tss_scroll_window.x = 0
$tss_scroll_window.y = 0
$tss_bg_window = Window_bg.new
$tss_bg_window.opacity = opacity_bg
$tss_bg_window.z=400
book_update(book_name, start_page, number_of_pages, opacity_scroll, opacity_bg)
$game_system.menu_disabled = true
end
def book_update(book_name,start_page, number_of_pages, opacity_scroll, opacity_bg)
loop do
Graphics.update
Input.update
if Input.repeat?(Input::RIGHT) and number_of_pages > 1
unless start_page == number_of_pages
start_page+=1
else
start_page=1
end
$tss_scroll_window.dispose
$tss_bg_window.dispose
Book_Scroll.new(book_name, number_of_pages,start_page, opacity_scroll, opacity_bg)
break
end
if Input.repeat?(Input::LEFT) and number_of_pages > 1
unless start_page == 1
start_page-=1
else
start_page=number_of_pages
end
$tss_scroll_window.dispose
$tss_bg_window.dispose
Book_Scroll.new(book_name, number_of_pages,start_page, opacity_scroll, opacity_bg)
break
end
if Input.repeat?(Input::UP)
$tss_scroll_window.y+=15
end
if Input.repeat?(Input::DOWN)
$tss_scroll_window.y-=15
end
if Input.trigger?(Input::B)
$tss_scroll_window.dispose
$tss_bg_window.dispose
$game_system.menu_disabled = false
break
end
end
end
end
#================================================= ==
# ▼ CLASS Scene_Map
#================================================= ==
class Scene_Map
alias alex_tss_original_update update
@@i=0
def update
alex_tss_original_update
if $live_scroll==true
$tss_scroll_window.y -= $tss_speed
@@i+=1
if @@i ==(($tss_sy/480.0) * $tss_iteration) + $tss_iteration
$tss_scroll_window.dispose
$tss_bg_window.dispose
@@i=0
$live_scroll=false
end
end
end
end
#================================================= ==
# ▼ CLASS Window_bg
#================================================= ==
class Window_bg < Window_Base
def initialize
super(0, 0, 640, 480)
end
end
# ■ Text Scroll Script
#================================================= ==
#================================================= ==
# ▼ CLASS Text_Scroller
#================================================= ==
class Text_Scroller
def initialize (file, opacity_scroll, opacity_bg, speed, live_scroll)
text=IO.readlines("Text/#{file}")
$tss_speed = speed
$tss_iteration = 480.0/speed
$tss_sy= (text.size*32) + 64
$tss_scroll_window = Window_Scroll.new(file, 640, $tss_sy)
$tss_scroll_window.opacity = opacity_scroll
$tss_scroll_window.z=500
$tss_scroll_window.x = 0
$tss_scroll_window.y = 480
$tss_bg_window = Window_bg.new
$tss_bg_window.opacity = opacity_bg
$tss_bg_window.z=400
case live_scroll
when 0
update
when 1
$live_scroll=true
end
end
def update
for i in 0...(($tss_sy/480.0) * $tss_iteration) + $tss_iteration
$tss_scroll_window.y -= $tss_speed
Graphics.update
end
$tss_scroll_window.dispose
$tss_bg_window.dispose
end
end
#================================================= ==
# ▼ CLASS Window_Scroll
#================================================= ==
class Window_Scroll < Window_Base
def initialize (file, sx, sy)
@sx=sx
@sy=sy
super(0, 0, sx, sy)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Tahoma"
self.contents.font.size = 24
@text=IO.readlines("Text/#{file}")
@text_color=0
refresh
end
def refresh
y=0
for i in 0...@text.size
y+=32
if @text[i].index('/') == 0
@text_color=@text[i].slice! (0..2)
@text_color.slice!(0)
end
if @text[i].index('*') == 0
line_color=@text[i].slice! (0..2)
line_color.slice!(0)
self.contents.font.color = text_color(line_color.to_i)
else
self.contents.font.color = text_color(@text_color.to_i)
end
self.contents.draw_text(0, y, @sx, 32, @text[i])
end
end
end
#================================================= ==
# ▼ CLASS Book_Scroll
#================================================= ==
class Book_Scroll
def initialize (book_name, number_of_pages, start_page, opacity_scroll, opacity_bg)
file = book_name.to_s+"/"+start_page.to_s+".rxdata"
text=IO.readlines("Text/#{file}")
$tss_sy= (text.size*32) + 64
$tss_scroll_window = Window_Scroll.new(file, 640, $tss_sy)
$tss_scroll_window.opacity = opacity_scroll
$tss_scroll_window.z=500
$tss_scroll_window.x = 0
$tss_scroll_window.y = 0
$tss_bg_window = Window_bg.new
$tss_bg_window.opacity = opacity_bg
$tss_bg_window.z=400
book_update(book_name, start_page, number_of_pages, opacity_scroll, opacity_bg)
$game_system.menu_disabled = true
end
def book_update(book_name,start_page, number_of_pages, opacity_scroll, opacity_bg)
loop do
Graphics.update
Input.update
if Input.repeat?(Input::RIGHT) and number_of_pages > 1
unless start_page == number_of_pages
start_page+=1
else
start_page=1
end
$tss_scroll_window.dispose
$tss_bg_window.dispose
Book_Scroll.new(book_name, number_of_pages,start_page, opacity_scroll, opacity_bg)
break
end
if Input.repeat?(Input::LEFT) and number_of_pages > 1
unless start_page == 1
start_page-=1
else
start_page=number_of_pages
end
$tss_scroll_window.dispose
$tss_bg_window.dispose
Book_Scroll.new(book_name, number_of_pages,start_page, opacity_scroll, opacity_bg)
break
end
if Input.repeat?(Input::UP)
$tss_scroll_window.y+=15
end
if Input.repeat?(Input::DOWN)
$tss_scroll_window.y-=15
end
if Input.trigger?(Input::B)
$tss_scroll_window.dispose
$tss_bg_window.dispose
$game_system.menu_disabled = false
break
end
end
end
end
#================================================= ==
# ▼ CLASS Scene_Map
#================================================= ==
class Scene_Map
alias alex_tss_original_update update
@@i=0
def update
alex_tss_original_update
if $live_scroll==true
$tss_scroll_window.y -= $tss_speed
@@i+=1
if @@i ==(($tss_sy/480.0) * $tss_iteration) + $tss_iteration
$tss_scroll_window.dispose
$tss_bg_window.dispose
@@i=0
$live_scroll=false
end
end
end
end
#================================================= ==
# ▼ CLASS Window_bg
#================================================= ==
class Window_bg < Window_Base
def initialize
super(0, 0, 640, 480)
end
end
ISTRUZIONI PER L'USO
Create una nuova cartella nella cartella del progetto e chiamatela "Text". Aprite il blocco note e scrivete i vostri credits. Salvate il documento nella cartella "Text" e chiamatelo "Credits.rxdata". Per richiamare lo script selezionate il comando "Call script" dall'elenco degli eventi ("Script" se avete RMXP in italiano) e scrivete questo codice:
CODICE
Text_Scroller.new("Credits.rxdata",
0,0, 2, 0)
0,0, 2, 0)
Et voil
#9
Inviato 01 gennaio 2008 - 08:10
CITAZIONE (Mattone @ Jan 1 2008, 10:09 PM) <{POST_SNAPBACK}>
Ecco i risultati: Che faccio?
Mi sa tanto che non hai seguito tutte le istruzioni
#11
Inviato 01 gennaio 2008 - 08:16
CITAZIONE (Mattone @ Jan 1 2008, 10:14 PM) <{POST_SNAPBACK}>
L'ho pensato anch'io! Ho la versione 1.02, percui dovrebbe andare!
Per le cartelle, guarda:
Per le cartelle, guarda:
Sei sicuro di aver messo text nella cartella principale del progetto?
#13
Inviato 01 gennaio 2008 - 08:34
CITAZIONE (Mattone @ Jan 1 2008, 10:21 PM) <{POST_SNAPBACK}>
Che dire?
Ragazzo, mettiamoci d'accordo. Passami la demo del tuo progetto.
1 utente(i) stanno leggendo questa discussione
0 utenti, 1 visitatori, 0 utenti anonimi