Slime Volley Portable

Une version portable de Slime Volley contient toutes les ressources nécessaires au jeu intégrées
dans son exécutable (éventuellement compilé statiquement).

Dans un premier temps, cette version ne permettera pas de charger des éléments externes : thèmes ou
images de slimes supplémentaires. Elle sera donc réservée dans les cas où une version complète ne
peut être installée.

Les éléments sont écrits à la fin de l'exécutable dans l'ordre suivant :
1)  data/themes/default/balle.png
2)  data/themes/default/fleche.png
3)  data/themes/default/jeu.png
4)  data/themes/default/menu.png
5)  data/themes/default/oeil.png
6)  data/themes/default/slimeD.png
7)  data/themes/default/slimeG.png
8)  data/themes/default/police.ttf
9)  data/themes/default/s_filet.wav
10) data/themes/default/s_jg_m.wav
11) data/themes/default/s_mur.wav
12) data/themes/default/s_slime.wav

Ils sont tous suivis de leurs tailles, codée sur un entier non signé sur 32 bits.
Attention, le programme d'"empaquetage" et l'exécutable doivent fonctionner sur des processeurs
d'endianess identiques.

Puis, sont écrites les informations sur le thème, 
1) Couleur du texte de menu (SDL_Color)
2) Couleur de texte des dialogues (SDL_Color)
3) Couleur de texte lors du jeu (SDL_Color)
4) Taille en pixels de la marge au dessus du menu (1 entier non signé 16 bits)
5) Taille de police (1 entier non signé 16 bits)
6) Taille en pixels de l'espace entre chaque ligne du menu (1 entier non signé 16 bits)

Pour la lecture, l'exécutable s'ouvre lui-même en lecture seule et place le curseur de lecture en
fin de fichier, lit les informations de thème, puis se place avant celles-ci.
Fonctionnement de la fonction de lecture :
- Le curseur de lecture est décalé de 4 octets vers le début
- Ce qui permet de lire la taille N du contenu.
- Le curseur se décale à nouveau de 4 + N octets vers le début. Il est maintenant au début de la
ressource à lire.
- La ressource est lue, et placée dans un pointeur (initialisé pour l'occation) passé en paramètre.
- Le curseur se déplace de N octets vers le début. Il est à nouveau au début de la ressource.
- Une SDL_RWops, pointant vers les données, est retournée.
