title: Rgss
text: # 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).
  
  