<URL: http://bugs.freeciv.org/Ticket/Display.html?id=39488 >

On 04/08/07, Marko Lindqvist <[EMAIL PROTECTED]> wrote:
>
>  README.graphics is outdated even for S2_1. Attached is update for
> what I figured out reading source code. I don't know that part of the
> code too well, so I just hope this  is correct.

 First version for trunk.

 And yes, some of the updates I made to this patch for trunk version
should be backported to S2_1 patch.


 - ML

diff -Nurd -X.diff_ignore freeciv/doc/README.graphics freeciv/doc/README.graphics
--- freeciv/doc/README.graphics	2007-08-04 18:36:17.000000000 +0300
+++ freeciv/doc/README.graphics	2007-08-05 00:32:15.000000000 +0300
@@ -69,15 +69,23 @@
 
   Strings (enclosed in "")
   ------------------------
-  options               : A capability string, currently "+tilespec3"
+  options               : A capability string, currently "+tilespec4"
   name                  : the name of the tileset
   city_names_font       : an X font string
   city_productions_font : an X font string
   main_intro_file       : GFX file for the intro graphics
   minimap_intro_file    : GFX file for the radar screen intro graphics
 
+  String vectors
+  --------------
+  prefered_themes       : List of prefered client themes to use with this
+                          tileset
+
   Integers
   --------
+  priority              : when user does not specify tileset, client
+                          automatically loads available compatible tileset
+                          with highest priority.
   normal_tile_width     : the width of terrain tiles
   normal_tile_height    : the height of terrain tiles
   small_tile_width      : the width of icon sprites
@@ -93,13 +101,11 @@
                               directions.  There are thus 256 road and 256
                               rail sprites (64 for a hex tileset).
   fogstyle              : Specifies how fog is drawn.
-                          0 : A single fog sprite is drawn on top of all
+                          0 : Code automatically adds fog.
+                          1 : A single fog sprite is drawn on top of all
                               other sprites for fogged tiles.  The
                               tx.fog sprite is used for this.
-                          1 : Each sprite for a fogged tile is drawn fogged.
-                              The tx.fog sprite may be used for the fog
-                              drawing (but clipped by the mask of the
-                              underlying sprite).
+                          2 : No fog, or fog from darkness_style = 4.
   darkness_style        : Specifies how "encroaching darkness" is drawn.
                           0 : No darkness.
                           1 : A single sprite can be split into 4 parts, each
@@ -111,10 +117,15 @@
                           3 : The sprite is chosen based on the vector sum of
                               the darkness in all 4 cardinal directions.  15
                               different sprites are needed.
-  flag_offset_x        : Gives an offset from the tile origin at which to
-  flag_offset_y          draw flags behind units and cities.  With isometric
-                         tilesets this should be non-zero so that the flag
-                         is placed correctly behind the unit/city.
+                          4 : Corner darkness & fog, 81 sprites needed.
+  unit_flag_offset_x   : Gives an offset from the tile origin at which to
+  unit_flag_offset_y     draw flags behind units or cities. With isometric
+  city_flag_offset_x     tilesets this should be non-zero so that the flag
+  city_flag_offset_y     is placed correctly behind the unit/city.
+  unit_offset_x        : Gives an offset from the tile origin at which to
+  unit_offset_y          draw units.
+  citybar_offset_y     : Gives an offset from city tile origin at which to
+                         draw citybar text.
   hex_side             : When is_hex is specified (see is_hex, below), this
                          value gives the length of the "extra" side of the
                          hexagon.  This extra side will be on the top/bottom
@@ -131,6 +142,8 @@
                          "normal" dimensions of 64x32 with a hex_side of 16
                          for an iso-hex tileset will give hexagons of size
                          48x32.
+  city_names_font_size : Font size used in drawing city name
+  city_production_font_size : Font size used in drawing city production
 
   Booleans (0 or 1)
   -----------------
@@ -139,6 +152,8 @@
                           is also specified then you have an iso-hex tileset.
                           Hex tilesets should be used with topologies 8-11 and
                           iso-hex tilesets with topologies 12-15.
+  is_mountainous        : set to 1 for blending hills and mountains together.
+  is_full_citybar       : set to 1 to enable citybar.
 
   String lists (a comma-separated list of strings)
   ------------------------------------------------
@@ -151,64 +166,61 @@
 ----------------
 
 The top-level tilespec file also contains information on how to draw each
-terrain type.  For each terrain type include a section "terrain_<terrain>"
-(e.g., "terrain_plains").  This section contains information on how to draw
+terrain type.  For each terrain type include a section "tile_<terrain>"
+(e.g., "tile_plains").  This section contains information on how to draw
 this terrain type.  (The terrain types are specified in the server ruleset
 file under the graphc and graphic_alt flags.)
 
-  [terrain_XXX] options
+  [tile_XXX] options
   ----------------
-  is_blended            : If set, this terrain will be blended with adjacent
-                          terrains.  Blending is done civ2-style with a
-                          dither mask.  Only iso-view currently supports
-                          blending.  Only the base graphic will be blended.
-                          Blending is drawn on top of the first layer (see
-                          below).
+  is_blended            : If non-zero, given layer of this terrain will be
+                          blended with adjacent terrains. Blending is done
+                          civ2-style with a dither mask.  Only iso-view
+                          currently supports blending. Only the base graphic
+                          will be blended.
                           The blending mask has sprite t.dither_tile.
+  is_reversed           : Draw layers in reverse order.
+  mine_sprite           : Mine sprite for this terrain.
   num_layers            : The number of layers in the terrain.  This value
-                          must be either 1 or 2.  Each layer is drawn
+                          must be 1, 2 or 3.  Each layer is drawn
                           separately.  The layerN options below control the
-                          drawing of each layer (N should be either 0 or 1).
+                          drawing of each layer (N should be 0, 1 or 2)
+  layerN_is_tall        : Left right corner of terrain sprites is not based
+                          on normal_tile_width and normal_tile_height, but
+                          to corner of the full tile.
+  layerN_offset_x       : Offset for terrain sprites
+  layerN_offset_y       
   layerN_match_type     : If 0 or unset, no terrain matching will be done and
                           the base sprite will be drawn for the terrain.  If
                           non-zero, then terrain matching will be done.  A
                           matched sprite will be chosen that matches all
                           cardinally adjacent tiles whose terrain has the same
                           match_type.
-  layerN_match_style    : A string telling how matching is to be done for
-                          this layer.
-                          "none" : No matching is to be done.
-                          "bool" : Matching is done based only on whether the
-                                   adjacent tile has the same match type.
-                          "full" : Matching is done against all possible
-                                   match types of adjacent tiles.
-  layerN_cell_type      : With traditional tilesets each tile is drawn using
-                          one sprite.  Which sprite to use may be specified
-                          using a match_type, and there may be multiple layers
-                          (each having one sprite).  This method corresponds
-                          to cell_type "single".  A more sophisticated drawing
-                          method breaks the tile up into 4 rectangles.  Each
-                          rectangular cell is adjacent to 3 different tiles.
-                          Each adjacency is matched, giving 8 different sprites
-                          for each of the 4 cells.
+  layerN_match_with     : List of match_types to match against
+  layerN_sprite_type    :  With traditional tilesets each tile is drawn using
+                          one sprite. This default sprite_type is "whole".
+                           Which sprite to use may be specified using a
+                          match_type, and there may be multiple layers
+                          (each having one sprite). This method corresponds
+                          to sprite_type "single".
+                           A more sophisticated drawing method breaks the tile
+                          up into 4 rectangles. Each rectangular cell is
+                          adjacent to 3 different tiles. Each adjacency is
+                          matched, giving 8 different sprites for each of the
+                          4 cells. This sprite_type is "corner".
 
 Additionally the top-level tilespec file should contain information about
 the drawing of each layer.  This is needed because the way each layer is
-drawn must be consistent between different terrain types.  As an example you
-can mix boolean and no matching but you cannot mix full and boolean matching.
-You may not have more than 2 layers (either in this section or in the
-[terrain_XXX] sections).
+drawn must be consistent between different terrain types. You may not have
+more than 3 layers (either in this section or in the [tile_XXX] sections).
 
   [layerN] options
   ----------------
-  match_style            : Gives the match style for this layer.
-                           "none" : no matching
-                           "bool" : terrains may use "none" or "bool" for
-                                    matching
-                           "full" : terrains may only use "full" matching
   match_types            : Gives a string list of all different match types.
                            This list must include every possible match_type
                            used by terrains for this layer.
+                           First letter of the match_type must be unique
+                           within layer.
 
 ----------------------------------------------------------------------
 Individual spec files:
_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to