----------------------------------------------------------------------
Fichiers de spcifications des graphiques et tuiles de Freeciv
----------------------------------------------------------------------

Utilisation des graphiques :
----------------------------

Pour utiliser des graphiques diffrents avec Freeciv, appliquez
l'argument '--tiles' au client Freeciv. Par exemple, pour utiliser les
graphiques 'engels', lancez le client avec :
  
    civclient --tiles engels

Ce que Freeciv fait dans ce cas est de chercher un fichier nomm
'engels.tilespec' quelque part dans le chemin des donnes de Freeciv.
(Voyez le fichier INSTALL pour des informations sur ce chemin des
donnes.) Ce fichier tilespec contient des informations indiquant 
Freeciv quels fichiers graphiques utiliser et ce que contiennent ces
fichiers graphiques.

Ceci est tout ce que vous devez savoir pour utiliser les jeux de
tuiles alternatif distribus avec Freeciv ou par des contributions de
tierces parties. Ce qui suit dcrit (quoique pas intgralement) le
contenu du fichier tilespec et de ses fichiers associs. Ce document
est  l'attention des dveloppeurs et des personnes qui veulent
crer/compiler des jeux de tuiles ou des modpacks pour Freeciv.

----------------------------------------------------------------------
Vue d'ensemble :
----------------

L'objet du fichier 'tilespec' et des fichiers 'spec' associs est de
faire en sorte que la disposition prcise des graphiques dans les
fichiers soit flexible et pas 'code en dur' dans Freeciv ; faire en
sorte galement que les add-on puissent aisment fournir des
graphiques additionnels.

Il y a deux niveaux pour les fichiers tilespec :

Le fichier de premier niveau est nomm, par exemple,
'trident.tilespec'.  Le nom de base de ce fichier (ici 'trident')
correspond au paramtre de l'argument en ligne de commande '--tiles'
pour le client Freeciv (voir plus haut).

Ce fichier tilespec de premier niveau contient des informations
gnrales sur l'ensemble du tileset ainsi qu'une liste de fichiers
qui spcifient les informations sur chacun des fichiers graphiques.
Ces noms de fichiers doivent tre localiss quelque part dans le
chemin des donnes, quoique pas forcment au mme endroit que le
fichier tilespec de premier niveau. Notez qu'avec ce systme le
nombre et le contenu des fichiers rfrencs est compltement
flexible  ce niveau.

Une exception est que les graphiques d'introduction doivent tre dans des
fichiers individuels, tels que dcrits dans le fichier tilespec,
parce que Freeciv s'en sert d'une manire spciale : ils sont
dchargs aprs le dmarrage du jeu et rechargs par la suite si
ncessaire.

----------------------------------------------------------------------
Fichiers spec individuel :
--------------------------

Chaque fichier spec dcrit un fichier graphique (actuellement au
format xpm seulement). Le fichier graphique doit tre localis dans
le chemin des donnes de Freeciv, mais pas ncessairement "prs" du
fichier spec. (Par consquent, vous pouvez avoir plusieurs fichiers
spec utilisant un seul fichier graphique de manires diffrentes.)

Les donnes principales dcrites dans le fichier spec sont dans les
sections nommes [grid_*], o * est une marque arbitraire (mais
unique  l'intrieur de chaque fichier). Une grille, correspond  un
tableau de tuiles rectangulaire. Il est gnralement possible d'avoir
plusieurs grilles dans un fichier mais les jeux de tuiles par dfaut
n'en ont habituellement qu'une seule. (Les grilles multiples
pourraient tre utiles pour avoir des tuiles de tailles diffrentes
dans le mme fichier.) Chaque grille dfinit une origine (en haut 
gauche) et un espacement, tous les deux exprims en pixels puis
rpertorie individuellement les tuiles de la grille par ligne et par
colonne. La numrotation de l'origine, ainsi que les lignes et
colonnes, commence  (0,0) = en haut  gauche.

 chacune des tuiles est attribu une "dsignation" consistant en une
chane qui est rfrence dans le code et/ou dans depuis les fichiers
ruleset. Une grille peut tre discontinue, avec des lments
inutiliss (ne mentionnez simplement pas leur ligne/colonne) et une
tuile unique peut avoir plusieurs dsignations (par exemple pour
avoir une utilisation multiple du mme graphique dans le jeu) :
spcifiez juste une liste de chanes spares par des virgules.

Si une dsignation donne apparat plusieurs fois dans les fichiers
spec, seule la *dernire* est prise en compte. (C'est  dire dans
l'ordre dans lequel les fichiers sont lists dans le fichier tilespec
puis par l'ordre 'naturel'  l'intrieur de chacun de ces fichiers.)
Ceci permet que certains graphiques soient "outrepasss" en
mentionnant un fichier spec de remplacement  la fin de la liste
'files' dans le fichier tilespec de premier niveau sans avoir 
modifier les fichiers prcdents dans cette liste.

----------------------------------------------------------------------
Prfixes des dsignations :
---------------------------

Pour conserver une certaine organisation dans les dsignations, il
existe un systme de prfixage pour les dsignations standard :

  f.	        drapeaux des nations
  r.	        route/rail
  s.	        "petit" en gnral
  u.	        images des units
  t.	        terrains de base (de _n0s0e0w0  _n1s1e1w1)
  ts.	        ressources spciales des terrains
  tx.	        supplments relatifs au terrain
  gov.	      types de gouvernements
  unit.	      ajouts aux units : points de vie, pile, activits
              (aller , se fortifier etc)
  upkeep.     entretien et mcontentement dus aux units
  city.	      graphiques relatifs aux villes (style, taille, prod. des
	            cases, dsordre civil, occupe)
  cd.	        graphiques par dfaut
  citizen.    citoyens, y compris les spcialistes
  explode.    graphiques des explosions (missile nuclaire, units)
  spaceship.  composants du vaisseau spatial
  treaty.     pouces des traits diplomatiques
  user.	      rticules (en gnral : interface utilisateur ?)

En gnral, le dsignations de graphiques codes en dur dans Freeciv
_doivent_ figurer dans les fichiers spec, ou bien le client refuse de
dmarrer. Les dsignations graphiques fournies par les fichier
ruleset (au moins pour les jeux de rgles "standards") devraient
galement tre fournies, mais en gnral le client continuera mme si
elles ne le sont pas quoique le rsultat peut s'avrer dcevant pour
l'utilisateur. Pour fonctionner correctement, les dsignations
devraient correspondre  des graphiques de la taille approprie. (La
taille de base peut varier, en fonction de ce qui est spcifi dans
le fichier tilespec de premier niveau mais les tuiles en elles-mmes
doivent correspondre  ces tailles et/ou  l'usage de ces
graphiques.)  

----------------------------------------------------------------------
