Jump to content
Rpg²S Forum

Fanton's Tutorial - RGSS


fanton95
 Share

Recommended Posts

Tutorial RGSS

Tutorial n°4

 

1. Introduzione

Per
: RPG Maker XP

Autore
: Fanton95

Descrizione
: Creare una finestra selezionabile

Ultima modifica
: 23/11/2009

 

2. Tutorial

Le finestre selezionabili

 

Nozioni necessarie: Saper creare una scena in RGSS

 

1)La stringa "magica"

La chiamiamo "magica" perché in realtà non dovrete fare niente di tanto difficile nel senso che negli script di base ce ne è già uno per questa funzione, infatti ci basterà solo richiamarlo. La classe da ereditare si chiama "Window_Command" e per farlo la struttura è questa:

 

Window_Command.new(Larghezza, "Tavola" dei comandi)

 

Dove:

 

Larghezza sta per le dimensioni della finestra

 

Al posto di "Tavola" dei comandi inseriremo, appunto, i comandi della finestra: ["Comando 1", "Comando 2", "Comando 3", ...etc]

 

Ecco il suffisso da inserire per farla "riconoscere" come un oggetto e quindi per poterla inserire in una scena:

 

 @select_window = Window_Command.new(192, ["Comando 1", "Comando 2", "Comando 3"])

 

(Dopo il "Comando 3" va chiusa prima la parentesi quadra e dopo la tonda, scusate problemi con la visualizzazione del codice ruby, mah)

 

Facile no?

 

2)Inserire la nostra finestra in una scena

Essendo una finestra ormai dovreste sapere come inserirla in una scena, o sbaglio? Il codice è questo:

 

class Scene_Perso  def main   #creazione della finestra selezionabile	@select_window = Window_Command.new(192, ["Mangiare", "Bere", "Dormire"])	Graphics.transition	loop do	  Graphics.update	  Input.update	  update	  if $scene != self		break	  end	 end	 Graphics.freeze		 #Soppressione della finestra al termine della scena	 @select_window.dispose  end   def update  #Aggiornare la finestra	@select_window.update  end end

 

3)Sapere quale opzione è selezionata

Se state creando una finestra selezionabile è evidente che dovete sapere quale opzione selezionare, è logico ^^. Tuttavia la selezione viene "letta" quando è premuto il tasto Invio o che sia per lui, quindi dovremo inserire questo codice:

 

#"C" equivale a "Invio" o "C"if Input.trigger?(Input::C) end

 

Ma dove metterlo? Nel def update:

 

def update  #Aggiornare la finestra	@select_window.update		#Per far in modo che venga selezionata l'opzione		if Input.trigger?(Input::C)	end  end

 

Adesso sappiamo come selezionare un opzione ma non come vedere che sia selezionata graficamente. Ci viene in aiuto il comando "Index":

 

@select_window.index

Con il comando "index" si vedrà:

 

 

http://img175.imageshack.us/img175/7086/indexb.png

 

Quindi se vedremo selezionato il comando 2, il @select_window.index lo vedrà come 1.

 

Ecco il codice, completo di "Index":

 

def update  #Aggiornare la finestra	@select_window.update		#L'opzione è selezionata se il tasto "Invio" o "C" è premuto		if Input.trigger?(Input::C)		  case @select_window.index	  when 0		#Cosa succederà quando l'opzione selezionata è la numero 1	  when 1		#Cosa succederà quando l'opzione selezionata è la numero 2	  when 2		#Cosa succederà quando l'opzione selezionata è la numero 3	  end	end  end

 

Alla prossima lezione che parlerà di "Finestre selezionabili personalizzate".

"Oh perché dobbiamo essere così, noi? – ci domandiamo talvolta allo specchio - con questa faccia, con questo corpo? – alziamo una mano, nell'incoscienza; e il gesto ci resta sospeso. Ci pare strano che l'abbiamo fatto noi. Ci vediamo vivere. […] In certi momenti di silenzio interiore, in cui l'anima nostra si spoglia di tutte le funzioni abituali, e gli occhi nostri diventano più acuti e più penetranti, noi vediamo noi stessi nella vita, e in se stessa la vita, quasi in una modalità arida, inquietante; ci sentiamo assaltare da una strana impressione, come se, in un baleno, ci si chiarisse una realtà diversa da quella che normalmente percepiamo, una realtà vivente oltre la vista umana, fuori delle forme dell'umana ragione." [L.P.]

 

http://img43.imageshack.us/img43/4231/vgmiud3f.png

 

 

http://rpg2s.net/gif/SCContest1Oct.gif http://www.rpg2s.net/img/fablecontest3rd.png http://rpg2s.net/gif/SCContest1Oct.gif

 

RPG by forum

 

 

 

 

 

 

 

 

 

 

http://img59.imageshack.us/img59/6/av2w.png

Nome: Erech (In elfico "lancia solitaria", da er (ereb) = "solitario" e ech = "lancia")

 

Età: 19

 

Razza: Umani

 

Descrizione: Erech è un ragazzo alto e slanciato, dalla corporatura tonica e scattante. Ha capelli lunghi e violacei come gli occhi che però sono spesso coperti in parte da un elegante cappello nero. Veste con uno stile classico, una camicetta bianca sotto una giacca nera e un fiocco al collo ornato con un'immancabile piuma azzurra. Gli piace leggere e scrivere e ama tradurre testi in lingue antiche.

 

Carattere: Il ragazzo ha un carattere chiuso e introverso, è di poche parole e preferisce i fatti alle parole. Non si relaziona spesso con i coetanei o se lo fa significa che si fida cecamente della persona che ha davanti; è diffidente e tende a non raccontare fatti del suo passato, belli o brutti che siano.

 

 

Link to comment
Share on other sites

Altro errore.

L'input si può gestire direttamente dalla window e non obbligatoriamente dalla scena

Per qualsiasi motivo non aprite questo spoiler.

 

 

Ho detto di non aprirlo !

 

 

Se lo apri ancora esplode il mondo.

 

 

Aaaaaa è un vizio.

 

 

Contento? Il mondo è esploso, sono tutti morti

per colpa della tua curiosità .

 

 

Vuoi che ti venga anche il morbillo, la varicella e l'AIDS???

 

 

O bravo ora sei un malato terminale e nessuno

ti puo curare, sono tutti morti !

 

 

Se clicchi ancora una volta il PC esplode.

 

 

E dai smettila !!

 

Uff!! Hai cliccato tante volte che ho dovuto sostituirlo con un codebox.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

http://s8.postimg.org/yntv9nxld/Banner.png

http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif

Link to comment
Share on other sites

L'input si può gestire direttamente dalla window e non obbligatoriamente dalla scena

 

Ma lo sai che sei una palla?XD Credevo di non aver tralasciato nulla stavolta...

Comunque questo procedimento non è sbagliato quindi non è considerabile come un errore. Questo è uno dei due o più modi per farlo. Comunque sia grazie della segnalazione ritocco subito ^^.

"Oh perché dobbiamo essere così, noi? – ci domandiamo talvolta allo specchio - con questa faccia, con questo corpo? – alziamo una mano, nell'incoscienza; e il gesto ci resta sospeso. Ci pare strano che l'abbiamo fatto noi. Ci vediamo vivere. […] In certi momenti di silenzio interiore, in cui l'anima nostra si spoglia di tutte le funzioni abituali, e gli occhi nostri diventano più acuti e più penetranti, noi vediamo noi stessi nella vita, e in se stessa la vita, quasi in una modalità arida, inquietante; ci sentiamo assaltare da una strana impressione, come se, in un baleno, ci si chiarisse una realtà diversa da quella che normalmente percepiamo, una realtà vivente oltre la vista umana, fuori delle forme dell'umana ragione." [L.P.]

 

http://img43.imageshack.us/img43/4231/vgmiud3f.png

 

 

http://rpg2s.net/gif/SCContest1Oct.gif http://www.rpg2s.net/img/fablecontest3rd.png http://rpg2s.net/gif/SCContest1Oct.gif

 

RPG by forum

 

 

 

 

 

 

 

 

 

 

http://img59.imageshack.us/img59/6/av2w.png

Nome: Erech (In elfico "lancia solitaria", da er (ereb) = "solitario" e ech = "lancia")

 

Età: 19

 

Razza: Umani

 

Descrizione: Erech è un ragazzo alto e slanciato, dalla corporatura tonica e scattante. Ha capelli lunghi e violacei come gli occhi che però sono spesso coperti in parte da un elegante cappello nero. Veste con uno stile classico, una camicetta bianca sotto una giacca nera e un fiocco al collo ornato con un'immancabile piuma azzurra. Gli piace leggere e scrivere e ama tradurre testi in lingue antiche.

 

Carattere: Il ragazzo ha un carattere chiuso e introverso, è di poche parole e preferisce i fatti alle parole. Non si relaziona spesso con i coetanei o se lo fa significa che si fida cecamente della persona che ha davanti; è diffidente e tende a non raccontare fatti del suo passato, belli o brutti che siano.

 

 

Link to comment
Share on other sites

Be si ma se vuoi fare un tutorial completo non devi tralasciare nulla.

Almeno se lo aggiorni ricordati del super....

Per qualsiasi motivo non aprite questo spoiler.

 

 

Ho detto di non aprirlo !

 

 

Se lo apri ancora esplode il mondo.

 

 

Aaaaaa è un vizio.

 

 

Contento? Il mondo è esploso, sono tutti morti

per colpa della tua curiosità .

 

 

Vuoi che ti venga anche il morbillo, la varicella e l'AIDS???

 

 

O bravo ora sei un malato terminale e nessuno

ti puo curare, sono tutti morti !

 

 

Se clicchi ancora una volta il PC esplode.

 

 

E dai smettila !!

 

Uff!! Hai cliccato tante volte che ho dovuto sostituirlo con un codebox.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

http://s8.postimg.org/yntv9nxld/Banner.png

http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif

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...