Jump to content
Rpg²S Forum

*Modifica alla Scene Gameover


André LaCroix
 Share

Recommended Posts

Premetto che non so se esiste una cosa del genere, ma visto che per un periodo sono stato senza Internet mi sono messo d'impegno e ho fatto qualche esperimento col Ruby.
In pratica questo script visualizza una finestra in basso a sinistra nella schermata di Game Over che fa scegliere se caricare una partita salvata, tornare al titolo o chiudere il gioco.

Per farlo funzionare, andate in Scene_Gameover e rimpiazzatene il contenuto con questo codice:

 

 

#==============================================================================
# ** Scene_Gameover by Kanta
#==============================================================================
# www.rpgart.org
#------------------------------------------------------------------------------
# Questa classe gestisce la schermata di Game Over
#==============================================================================

class Scene_Gameover
	#--------------------------------------------------------------------------
	# * Processo principale
	#--------------------------------------------------------------------------
	def main
		# Visualizza l'immagine del Game Over
		@sprite = Sprite.new
		@sprite.bitmap = RPG::Cache.gameover($data_system.gameover_name)
		# Ferma i BGM e i BGS
		$game_system.bgm_play(nil)
		$game_system.bgs_play(nil)
		# Riproduce il ME del Game Over
		$game_system.me_play($data_system.gameover_me)
		# Creiamo la finestra con le opzioni Carica, Torna al Titolo e Chiudi Programma
		s1 = "CARICA"
		s2 = "TITOLO"
		s3 = "CHIUDI"
		@command_window = Window_Command.new(192, [s1, s2, s3])
		@command_window.back_opacity = 160
		@command_window.x = 0
		@command_window.y = 480 - @command_window.height
		# Se almeno un file di salvataggio esiste, allora il caricamento è abilitato
		for i in 0..3
			if FileTest.exist?("Salvataggio #{i+1}.ksf")
				@continue_enabled = true
			else
				@command_window.disable_item(0)
			end
		end
		# Esegue la transizione
		Graphics.transition(120)
		# Loop principale (esegue all'infinito)
		loop do
			# Aggiorna lo schermo
			Graphics.update
			# Aggiorna l'input da tastiera
			Input.update
			# Aggiorna la finestra
			update
			# Se cambia la classe, termina il processo di questa classe
			if $scene != self
				break
			end
		end
		# Prepara per la transizione
		Graphics.freeze
		# Dispone l'immagine e la finestra
		@sprite.bitmap.dispose
		@sprite.dispose
		@command_window.dispose
		# Esegue la transizione
		Graphics.transition(40)
		# Prepara la transizione
		Graphics.freeze
		# If battle test
		if $BTEST
			$scene = nil
		end
	end
	#--------------------------------------------------------------------------
	# * Aggiornamento
	#--------------------------------------------------------------------------
	def update
		@command_window.update
		if Input.trigger?(Input::C)
			case @command_window.index
			when 0
				carica
			when 1
				titolo
			when 2
				chiudi
			end
		end
	end
	
	
	#-------------------------------------------------------------------------
	# * Comandi aggiuntivi
	#-------------------------------------------------------------------------
	def carica
		# Se è possibile continuare
		unless @continue_enabled
			# Riproduce il SE Buzzer
			$game_system.se_play($data_system.buzzer_se)
			return
		end
		# Altrimenti esegue il decision
		$game_system.se_play($data_system.decision_se)
		# Apre la schermata di caricamento
		$scene = Scene_LoadGameover.new
	end
	
	def titolo
		# Esegui SE
		$game_system.se_play($data_system.decision_se)
		# Vai al titolo+
		$scene = Scene_Title.new
	end
	
	def chiudi
		# Esegui SE
		$game_system.se_play($data_system.decision_se)
		# Dissolvenza sonoro
		Audio.bgm_fade(800)
		Audio.bgs_fade(800)
		Audio.me_fade(800)
		# Chiusura applicazione
		$scene = nil
	end
end

 

 

 

Adesso, sopra Scene_Load, creiamo una nuova classe chiamata Scene_LoadGameover e incolliamoci questo codice:

 

 

#==============================================================================
# ** Scene_Load
#------------------------------------------------------------------------------
# This class performs load screen processing.
#==============================================================================

class Scene_LoadGameover < Scene_File
	#--------------------------------------------------------------------------
	# * Object Initialization
	#--------------------------------------------------------------------------
	def initialize
		# Remake temporary object
		$game_temp = Game_Temp.new
		# Timestamp selects new file
		$game_temp.last_file_index = 0
		latest_time = Time.at(0)
		for i in 0..3
			filename = make_filename(i)
			if FileTest.exist?(filename)
				file = File.open(filename, "r")
				if file.mtime > latest_time
					latest_time = file.mtime
					$game_temp.last_file_index = i
				end
				file.close
			end
		end
		super("Quale file vuoi caricare?")
	end
	#--------------------------------------------------------------------------
	# * Decision Processing
	#--------------------------------------------------------------------------
	def on_decision(filename)
		# If file doesn't exist
		unless FileTest.exist?(filename)
			# Play buzzer SE
			$game_system.se_play($data_system.buzzer_se)
			return
		end
		# Play load SE
		$game_system.se_play($data_system.load_se)
		# Read save data
		file = File.open(filename, "rb")
		read_save_data(file)
		file.close
		# Restore BGM and BGS
		$game_system.bgm_play($game_system.playing_bgm)
		$game_system.bgs_play($game_system.playing_bgs)
		# Update map (run parallel process event)
		$game_map.update
		# Switch to map screen
		$scene = Scene_Map.new
	end
	#--------------------------------------------------------------------------
	# * Cancel Processing
	#--------------------------------------------------------------------------
	def on_cancel
		# Play cancel SE
		$game_system.se_play($data_system.cancel_se)
		# Switch to title screen
		$scene = Scene_Gameover.new
	end
	#--------------------------------------------------------------------------
	# * Read Save Data
	# file : file object for reading (opened)
	#--------------------------------------------------------------------------
	def read_save_data(file)
		# Read character data for drawing save file
		characters = Marshal.load(file)
		# Read frame count for measuring play time
		Graphics.frame_count = Marshal.load(file)
		# Read each type of game object
		$game_system = Marshal.load(file)
		$game_switches = Marshal.load(file)
		$game_variables = Marshal.load(file)
		$game_self_switches = Marshal.load(file)
		$game_screen = Marshal.load(file)
		$game_actors = Marshal.load(file)
		$game_party = Marshal.load(file)
		$game_troop = Marshal.load(file)
		$game_map = Marshal.load(file)
		$game_player = Marshal.load(file)
		# If magic number is different from when saving
		# (if editing was added with editor)
		if $game_system.magic_number != $data_system.magic_number
			# Load map
			$game_map.setup($game_map.map_id)
			$game_player.center($game_player.x, $game_player.y)
		end
		# Refresh party members
		$game_party.refresh
	end
end

 

 

 

Non servirà fare nient'altro per far funzionare lo script.
Per la gioia (?) degli occhi, ecco uno screen (purtroppo l'ho dovuto uppare su mediafire):
Screen

Edited by Flame

(Sì, sono l'AnteroLehtinen che bazzica in chat. E... sì, una volta insegnavo storyboarding.)

http://img26.imageshack.us/img26/7048/firmadn.png

Link to comment
Share on other sites

Bravo Axel ^^

Progetto in corso:

"Hero Walking: Toward Another Life"

Video Old Intro su Youtube

Visite: 11.896!

http://img212.imageshack.us/img212/1060/logheryb0.jpg

 

 

*Posizioni raggiunte nei contest*

 

 

http://www.rpg2s.net/awards/bestuser1.jpghttp://www.rpg2s.net/awards/beststaff1.jpg

http://www.rpg2s.net/awards/bestmaker3.jpghttp://www.rpg2s.net/awards/bestcritical1.jpghttp://www.rpg2s.net/awards/mostcharismatic2.jpg

http://www.rpg2s.net/awards/mosthelpful1.jpghttp://www.rpg2s.net/awards/mostpolite1.jpghttp://www.rpg2s.net/awards/mostpresent1.jpg

 

http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif http://img103.imageshack.us/img103/1496/sccontest2octou1.gif http://img118.imageshack.us/img118/181/sccontest1octdt9.gif http://img230.imageshack.us/img230/1273/sccontest1batio5.gif http://img103.imageshack.us/img103/1496/sccontest2octou1.gif http://img103.imageshack.us/img103/1496/sccontest2octou1.gif http://img103.imageshack.us/img103/1496/sccontest2octou1.gif http://img143.imageshack.us/img143/3755/destroyae4.png

http://img141.imageshack.us/img141/3081/comics3od3.gif http://img118.imageshack.us/img118/181/sccontest1octdt9.gif

 

 

SE VUOI AVERE RENS PER RISORSE, TUTORIAL, DEMO, ECC... LEGGI QUI

Link to comment
Share on other sites

  • 2 years later...

Scusate se rianimo questo vecchio post,però modificandolo un pò non mi fà più caricare(Precisamente passo sopra al comando ma non dà nè un errore nè niente),non capisco l'erroreT.T
Ora posto lo script con le mie modifiche:
 

#======================================================================
# ** Scene_Gameover by Kanta
#==============================================================================
# www.rpgart.org
#------------------------------------------------------------------------------
# Questa classe gestisce la schermata di Game Over
#==============================================================================
class Scene_Gameover
	#--------------------------------------------------------------------------
	# * Processo principale
	#--------------------------------------------------------------------------
	def main
		# Visualizza l'immagine del Game Over
		@sprite = Sprite.new
		@sprite.bitmap = RPG::Cache.gameover($data_system.gameover_name)
		# Ferma i BGM e i BGS
		$game_system.bgm_play(nil)
		$game_system.bgs_play(nil)
		# Riproduce il ME del Game Over
		$game_system.me_play($data_system.gameover_me)
		# Creiamo la finestra con le opzioni Carica, Torna al Titolo e Chiudi Programma
		s1 = ""
		s2 = ""
		@command_window = Window_Command.new(192, [s1, s2])
		@command_window.visible = false
		@help = Window_Help.new
		@help.visible = false
		@help.opacity = 0
		@cursore = Sprite.new
		@cursore.bitmap = Bitmap.new("Graphics/Pictures/Ss_Cursore")
		@cursore.x = 700
		# Esegue la transizione
		Graphics.transition(120)
		# Loop principale (esegue all'infinito)
		loop do
			# Aggiorna lo schermo
			Graphics.update
			# Aggiorna l'input da tastiera
			Input.update
			# Aggiorna la finestra
			update
			# Se cambia la classe, termina il processo di questa classe
			if $scene != self
				break
			end
		end
		# Prepara per la transizione
		Graphics.freeze
		# Dispone l'immagine e la finestra
		@sprite.bitmap.dispose
		@sprite.dispose
		@command_window.dispose
		@help.dispose
		@cursore.dispose
		# Esegue la transizione
		Graphics.transition(40)
		# Prepara la transizione
		Graphics.freeze
		# If battle test
		if $BTEST
			$scene = nil
		end
	end
	#--------------------------------------------------------------------------
	# * Aggiornamento
	#--------------------------------------------------------------------------
	def update
		@command_window.update
		case @command_window.index
		when 0
			@help.set_text("")
			@cursore.x = 350
			@cursore.y = 420
		when 1
			@help.set_text("")
			@cursore.x = 480
			@cursore.y = 420
			if Input.trigger?(Input::C)
				case @command_window.index
				when 0
					carica
				when 1
					titolo
				end
			end
		end
		#-------------------------------------------------------------------------
		# * Comandi aggiuntivi
		#-------------------------------------------------------------------------
		def carica
			# Se è possibile continuare
			# Altrimenti esegue il decision
			$game_system.se_play($data_system.decision_se)
			# Apre la schermata di caricamento
			$scene = Scene_LoadGameover.new
		end
		def titolo
			# Esegui SE
			$game_system.se_play($data_system.decision_se)
			# Vai al titolo+
			$scene = Scene_Title.new
		end
	end
end

Iscriviti sul mio canale youtube -

https://www.youtube.com/channel/UCYOxXExvlXiOFfYD1fTFpww?view_as=subscriber

Seguimi su Instagram -

https://www.instagram.com/ancestralguitarist/

---------------------------------------------------------------------------------------------------------------------------------------
Contest vinti
---------------------------------------------------------------------------------------------------------------------------------------

FACE CONTEST # 3
BANNER CONTEST #69

Link to comment
Share on other sites

Mi sembra che tu abbia dimenticato un end alla riga 79, prima di if Input.trigger?(Input::C) . . .

 


SCRIPT RGSS (RPG Maker XP) VINTAGE LIBRARY [2018+]


Breaking (in ogni senso) News: "Treno deraglia per via del seno di Sakurai Aoi . . ." - Info nello spoiler !!

 


http://afantasymachine.altervista.org/_altervista_ht/NOOOOOOOOOilMIOtreninooooo_500.gif


Non riesco a smettere di essere affascinato da immagini come questa . . .

http://anime.vl-vostok.ru/art/photos2011/17/78049800/wall_VladAnime_WWA_1885-1680x1050.jpg


Alcuni wallpapers che faccio ruotare sul mio vecchio PC . . .


http://afantasymachine.altervista.org/_altervista_ht/gits_window.jpg

http://afantasymachine.altervista.org/_altervista_ht/madoka_group01.jpg
http://afantasymachine.altervista.org/_altervista_ht/arisu_picipici_01.jpg
http://afantasymachine.altervista.org/_altervista_ht/phantom_wp01_einzwei.jpg


La parte più spassosa della mia vita è quando gli altri cercano di spiegarmi i miei pensieri . . .


BBCode Testing


Typeface & Size



Link to comment
Share on other sites

Si,grazie l'avevo messo in + alla fine quindi saltava il when 0,stavo per editare comunque grazie^^

Iscriviti sul mio canale youtube -

https://www.youtube.com/channel/UCYOxXExvlXiOFfYD1fTFpww?view_as=subscriber

Seguimi su Instagram -

https://www.instagram.com/ancestralguitarist/

---------------------------------------------------------------------------------------------------------------------------------------
Contest vinti
---------------------------------------------------------------------------------------------------------------------------------------

FACE CONTEST # 3
BANNER CONTEST #69

Link to comment
Share on other sites

  • 2 years later...
Cioè? Ti dà qualche errore particolare? Oppure non sono abilitati? Specifica sempre! ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

Leggi il messaggio 6 e 7 di questa discussione! ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...