Index: server/settlers.c =================================================================== RCS file: /home/freeciv/CVS/freeciv/server/settlers.c,v retrieving revision 1.31 diff -u -r1.31 settlers.c --- settlers.c 1999/05/09 16:53:38 1.31 +++ settlers.c 1999/05/26 22:01:03 @@ -614,8 +609,8 @@ **************************************************************************/ int is_ok_city_spot(int x, int y) { - int dx, dy; - int i; + int dx, dy, i; + switch (map_get_terrain(x,y)) { case T_OCEAN: case T_UNKNOWN: @@ -623,12 +618,14 @@ case T_FOREST: case T_HILLS: case T_ARCTIC: - case T_DESERT: case T_JUNGLE: case T_SWAMP: case T_TUNDRA: case T_LAST: return 0; + case T_DESERT: + if (!((map_get_tile(x, y))->special&S_SPECIAL)) + return 0; case T_GRASSLAND: case T_PLAINS: case T_RIVER: