Rpg²S Forum uses cookies. Read the Privacy Policy for more info. To remove this message, please click the button to the right:    I accept the use of cookies

Vai al contenuto

Rpg²S Forum uses cookies. Read the Privacy Policy for more info. To remove this message, please click the button to the right:    I accept the use of cookies

Screen Contest #90

Kamikun






  • Si prega di effettuare il log in prima di rispondere
Tutorial sul Call Script

    Guest_3000_*
  • Guests
  • Rens:

#1 Inviato 03 January 2011 - 15:58 PM

Titolo: Tutorial sui Call Script
Autore : 3000
Descrizione : in qst tutorial tratterò dei misteriosi Call Script
Ultima Modifica : 3/1/2011




Ehi people!

In questo tutorial spiego la funzione e l'uso dei call script, azioni che renderanno il gioco più veloce. . .

Con i call script si possono appunto chiamare delle finestre/scene collegate a degli script. . .
Ad esempio quando premete X si apre il menu, con questo funzione potete assegnare ad un comando, a una voce o ad altro una finestra/scena. . .

Ecco degli esempi:

Se si vuole richiamare il menu degli oggetti con il tasto W si dovrebbe fare così: (il modo per richiamarli è scrivere nel call script ---> "$scene = Scene_xxx.new",al posto di xxx inserire la scena da chiamare, invece, per chiamare una finestra si fa così ---> Window_xxx.new)

Inserito in un evento con attivazione parallela

[codebox]Conditional Branch: Key R is pushed
Call Script: $scene = Scene_Item.new
end[/codebox]

Ed in gioco premendo W (cioè R) si aprirà il menu oggetti. . .

Ora vi scrivo come richiamare tutte le finestre del menu:

Oggetti ----> $scene = Scene_Item.new
Equip ----> $scene = Scene_Equip.new
Magie ----> $scene = Scene_Skill.new
Stato ----> $scene = Scene_Status.new
Salva ----> $scene = Scene_Save.new
Esci ----> $scene = Scene_End.new

E queste sono un misto:

Carica ----> $scene = Scene_Load.new
Chiudi gioco ---> $scene = Scene_Shutdown.new
Scena di Debug ----> $scene = Scene_Debug.new

Ci sono anche altre finestre o scene che possono essere chiamate (tutte hanno un call script) però nn mi sembra il caso di scriverle...
Se però le volete conoscere commentate!

NB: il .new finale va SEMPRE inserito perchè altrimenti dà errore :sisi:
NB: anke se si cambia nome nel menu lo script di rikiamo nn varia. . . :sisi:

Spero che questo tutorial vi sia utile! ! !

Modificato da 3000, 03 January 2011 - 18:17 PM.


    Guardian of Irael
  • Coniglietto Rosso

  • Rpg²S Admin
  • Rens: 195
  • 19
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 58427 messaggi
  • Sesso:Maschio
  • Provenienza:Bagnaia (Viterbo)
  • Abilità:Apprendista


#2 Inviato 03 January 2011 - 16:52 PM

Un po' poverello come tutorial...spiega una sola funzione, il call script poi non serve solo a chiamare finestre del menù...

Ci sono anche altre finestre ke possono essere kiamate (tutte hanno un call script) xò nn mi sembra il caso di scriverle (tradotto = mi sn scassato. . . rovatfl.gif ).

Non mi pare bene scrivere così in un buon tutorial, no? Ti prego anche di evitare abbreviazioni da sms visto che hai a disposizione tutta la tastiera, così da essere più chiaro e preciso.
Quando utilizzi del codice RGSS, usa il tag code inq uesto modo:
<div class="de1">Conditional Branch: Key R is pushed</div><div class="de1">Call Script: <span class="re0">$scene</span> = Scene_Item.<span class="me1">new</span></div><div class="de1"><span class="kw1">end</span></div></div></td></tr></table>
^ ^

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

 
Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^
 
KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^
 
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) ^ ^

Spoiler


    Guest_3000_*
  • Guests
  • Rens:

#3 Inviato 03 January 2011 - 17:21 PM

ok scusa è ke è il primo tutorial ke faccio ed ero molto contento. . .
poi di script nn capisco molto per questo adesso ne sto studiando. . .

    Gianmark
  • Utente avanzato

  • Utenti
  • Rens: 0
  • 0
  • StellettaStellettaStelletta
  • 416 messaggi
  • Sesso:Maschio
  • Abilità:Adepto

#4 Inviato 03 January 2011 - 18:04 PM

Tutorial un pò superfluo, devo dire.
Il call script è una delle prime cose che si apprendono...
Comunque, come ha detto Guardian, questo evento non si usa solo per il menu, con un pò di fantasia puoi fare molte altre cose, sarebbe un bene specificarlo.
Il tutorial è un pò disordinato e, come ti ha già detto Guardian, togli le abbreviazioni, odio il Rebus.

Immagine inserita


    Guest_3000_*
  • Guests
  • Rens:

#5 Inviato 03 January 2011 - 18:21 PM

ahah, vedo ke il mio tutorial serve a molto! ! ! (mi auto-voto visto che ricevo solo critiche negative :biggrin: )
Comunque chiedo scusa per gli errori che ho commesso e prometto ke nn farò più tutorial! :tongue:
Grazie per i consigli, vedrò di ricordarmi in futuro! :sisi:

    Guardian of Irael
  • Coniglietto Rosso

  • Rpg²S Admin
  • Rens: 195
  • 19
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 58427 messaggi
  • Sesso:Maschio
  • Provenienza:Bagnaia (Viterbo)
  • Abilità:Apprendista


#6 Inviato 03 January 2011 - 18:32 PM

e prometto ke nn farò più tutorial! rovatfl.gif

Non è lo spirito giusto :biggrin:
Che ne dici di migliorare e postarne di fatti meglio? ^ ^"

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

 
Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^
 
KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^
 
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) ^ ^

Spoiler


    Guest_3000_*
  • Guests
  • Rens:

#7 Inviato 03 January 2011 - 18:37 PM

Ci proverò. . . :tongue:
Grazie dei consigli !!! Vedrò di fare dei tutorial utili in futuro. . .
è che il call script essendo l' ultimo della lista credevo non fosse conosciuto da tutti come il Move Event o qualunque altra azione e siccome è stato l ultimo che io ho imparato ( e l ho imparato proprio perchè sto studiando gli script) volevo aiutare le new entry ignare del piccolo call . . . :biggrin:
E poi non è un tutorial per esperti, ma più per principianti. . . :sisi:

Modificato da 3000, 03 January 2011 - 18:39 PM.


    Hash'ak'Gik
  • Alex (Rm2k)

  • Utenti
  • Rens: 46
  • 0
  • StellettaStellettaStellettaStellettaStelletta
  • 837 messaggi
  • Sesso:Maschio
  • Abilità:Maestro

#8 Inviato 03 January 2011 - 21:47 PM

Senza contare che manca la parte meno conosciuta ai più (e che quindi andrebbe "tutorializzata")...

Nelle istruzioni condizionali ("Se", "If", "conditional branch" o quello che volete) c'è la voce "Script" che permette di fare cose interessanti, però non mi pare siano in molti a conoscerne l'esistenza...

Confucio dice: "Acquisisci nuove conoscenze mentre rifletti sulle vecchie, e forse potrai insegnare ad altri."
Non ha detto: "Insegna mentre acquisisci nuove conoscenze"...Ed ha ragione: se prima non padroneggi un argomento non lo puoi insegnare ad altri!

Il call script non serve solo a chiamare una scena, può cambiare il valore di variabili (per lo più globali, dato che viene utilizzato all'interno di una classe), chiamare metodi e tutto ciò che è possibile fare in quattro o cinque righe (print, aprire files, ecc.)

New-age-retro-hippie-psy_zpsde262717.gif

Spoiler

    Guest_3000_*
  • Guests
  • Rens:

#9 Inviato 03 January 2011 - 22:33 PM

lo so è solo che volevo insegnare l'uso di richiamare una scena o una finestra, non quelli che si possono fare tranquillamente tramite evento. . .

    Carlotta-The-Best
  • Nuovo Arrivato

  • Utenti
  • Rens: 0
  • 0
  • Stelletta
  • 1 messaggi
  • Sesso:Femmina
  • Provenienza:Trento
  • Abilità:Novizio

#10 Inviato 03 January 2011 - 22:51 PM

Uuuuuuutile come script! ! ! La funzione call script non la conoscevo molto bene ma ti ringrazio 1000 volte 3000 (sembra una battuta :biggrin: )
E poi il cambiare una variabile col call script è una funzione superflua secondo me xk non sono molti gli script con i quali serve cambiare una variabile durante il gioco!
Stare da soli a volte fa paura,e tu dove sei ora che ho bisogno di te??

    Hash'ak'Gik
  • Alex (Rm2k)

  • Utenti
  • Rens: 46
  • 0
  • StellettaStellettaStellettaStellettaStelletta
  • 837 messaggi
  • Sesso:Maschio
  • Abilità:Maestro

#11 Inviato 03 January 2011 - 23:38 PM

Uuuuuuutile come script! ! ! La funzione call script non la conoscevo molto bene ma ti ringrazio 1000 volte 3000 (sembra una battuta :biggrin: )
E poi il cambiare una variabile col call script è una funzione superflua secondo me xk non sono molti gli script con i quali serve cambiare una variabile durante il gioco!

Tu non hai chiaro il concetto di variabile... :P
Purtroppo quando qualcuno usa impropriamente un termine, la gente che conosce quel qualcuno, anziché aprire il vocabolario per controllare che quello non abbia detto stupidaggini, gli crede per fede...

RPG Maker la deve smettere di chiamare le variabili integer semplicemente variabili e le variabili booleane "switch" (ma chi ha mai sentito parlare di switch in programmazione? E di On & Off? Porca miseria! I valori di una var. booleana sono true e false, al massimo, se proprio vogliamo essere generosi, si concede anche 0 e 1!)

Poc'anzi io parlai di variabili (e ho specificato: globali), non di $Game_Variables[]

E se vogliamo essere pignoli $Game_Variables è un'array contenente valori integer, non è nemmeno una variabile integer (gli array si chiamano anche variabili indicizzate o vettori, è quindi una variabile ma non lo è)
E anche $Game_Switches è un'array (stavolta con valori booleani)


@3000: Negli script fatti bene ci sono sempre le istruzioni...Ergo di utile non c'è molto...
E volendo le cose da dire ci sono...
(Ad esempio sapevi che se imposti la variabile globale $test a true, quindi scrivendo "$test = true", puoi attivare la debug mode senza avviare il gioco dalla finestra di RPG Maker? E sai cosa si può fare con la debug mode oltre ad attraversare i muri con CTRL? Un sacco di cose) :P

Questo topic diventerebbe utile se tu lo trasformassi in un compendio di call script, in quanto la funzione in sé è semplice:
"Utilizza un frammento di codice RGSS all'interno dell'evento...Se viene cambiata la scena l'evento si interrompe
Teoria - Rudimenti di RGSS:
Il metodo new crea l'oggetto
Un oggetto va sempre assegnato a una variabile
RPG Maker ha di default la variabile $scene come 'contenitore' delle scene
Le scene sono classi 'regista' che organizzano tutto quello che si vede a schermo, per fare ciò richiamano in variabili locali altre classi (Per esempio: @sfondo = Bitmap.new chiama la classe Bitmap che gestisce le immagini)
Molti scripter chiamano le scene con un nome del tipo 'Scene_Script', ma non è necessario...Si può chiamare una scena 'Giovanni', 'Beppe', 'Guardian_of_Irael', eccetera...
Tutorial vero e proprio:
Alla luce di ciò per richiamare una scena tramite un Call Script si usa la riga:
$scene = Nome_Script.new
(Come abbiamo già spiegato $scene è la variabile in cui viene salvato l'oggetto Nome_Script e new è il metodo che indica a RPG Maker 'crea Nome_Script', ossia 'attivalo'"

(Non so perché ho scritto così tanto, il succo è poco)

E poi potresti iniziare, come ho già detto, con un compendio:
"I Call Script più usati sono:
$scene = Scene_Map.new -> Va alla mappa, ovviamente se lo usi sulla mappa non succede nulla :P
$scene = Scene_Menu.new -> Apre il menù
$Game_Switches[idswitch] = true/false -> Attiva/Disattiva la switch 'idswitch'
$game_temp.common_event_id = idevento -> Attiva l'evento comune 'idevento'
$test = true -> Attiva la modalità di debug che permette di cambiare le switch e le variabili durante il gioco con F9, visualizzare il framerate con F2, attraversare i muri e evitare tutte le battaglie casuali tenendo premuto CTRL mentre ci si sposta
eccetera"

New-age-retro-hippie-psy_zpsde262717.gif

Spoiler




  • Feed RSS