Rgss
# Rgss

L'RGSS (Ruby Game Scripting System) è un insieme di classi e moduli scritti come base per RPG Maker XP. L'RGSS non è un linguaggio a sé stante, ma, come indica la sigla, è solo un'implementazione del Ruby. Un gioco creato con RPG Maker XP si serve di una serie di script di base necessari affinché il gioco funzioni a seconda delle impostazioni del programma (mappe, database, eventi e così via). Nella rete, inoltre, vi sono varie comunità dedicate a RPG Maker XP che spesso forniscono script implementabili nel proprio gioco.

Un gioco fatto con RPG Maker XP funziona unicamente attraverso gli script; se si eliminano tutti gli script, infatti, la finestra di gioco si apre e si richiude rapidamente. L'eseguibile è solo un interprete Ruby che legge gli script e li fa funzionare.

L'interprete Ruby fornito dalla Enterbrain ha delle differenze rispetto all'interprete Ruby originale; in quello di RGP Maker XP, ad esempio, non è possibile importare librerie scritte in C o C++ (nonostante sia possibile usare il comando "require" per importare altri script esterni).

Le classi fornite con l'RGSS sono:

* Bitmap (permette di gestire le immagini)
* Color (permette di gestire i colori, anche nei singoli pixel delle Bitmap)
* Font (permette di gestire i caratteri)
* Plane (simili agli Sprite, permettono di mostrare le Bitmap)
* Rect (contiene informazioni sulla posizione e sulle dimensioni di un rettangolo)
* RGSSError (fa riferimento a un errore interno di una classe o di un modulo RGSS)
* Sprite (permette di mostrare le Bitmap, di spostarle e di ridimensionarle)
* Tilemap (classe necessaria a mostrare le mappe)
* Tone (pressoché uguale a Color)
* Viewport (serve a visualizzare parte di uno Sprite)
* Window (permette di gestire le finestre all'interno del gioco)

I moduli forniti con l'RGSS sono:

* Audio (permette di gestire musiche e suoni)
* Graphics (permette di gestire la visualizzazione)
* Input (permette di gestire l'input attraverso tastiera)

Inoltre bisogna citare il modulo RGSS: questo contiene classi (come RGSS::AudioFile o RGSS::Map) con le quali si possono gestire i dati del gioco (mappe, eventi, battaglie e così via).

