aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2005-05-30 12:24:31 +0000
committerSimon Tatham <anakin@pobox.com>2005-05-30 12:24:31 +0000
commit7ff09fbba196e540a60a866c9a7c208b5edacfd8 (patch)
treeacaa2efe9afeaf37048fcc1cf58001ed2db99962
parent6e7421a3ba0318e730e6fafb77e5d60c25edd21a (diff)
downloadpuzzles-7ff09fbba196e540a60a866c9a7c208b5edacfd8.zip
puzzles-7ff09fbba196e540a60a866c9a7c208b5edacfd8.tar.gz
puzzles-7ff09fbba196e540a60a866c9a7c208b5edacfd8.tar.bz2
puzzles-7ff09fbba196e540a60a866c9a7c208b5edacfd8.tar.xz
Neat idea from Gareth: if you put a % on the end of the mine count
in the Custom dialog box, it'll treat it as a mine density. [originally from svn r5861]
-rw-r--r--mines.c2
-rw-r--r--puzzles.but12
2 files changed, 13 insertions, 1 deletions
diff --git a/mines.c b/mines.c
index 3c06b53..db98cc9 100644
--- a/mines.c
+++ b/mines.c
@@ -232,6 +232,8 @@ static game_params *custom_params(config_item *cfg)
ret->w = atoi(cfg[0].sval);
ret->h = atoi(cfg[1].sval);
ret->n = atoi(cfg[2].sval);
+ if (strchr(cfg[2].sval, '%'))
+ ret->n = ret->n * (ret->w * ret->h) / 100;
ret->unique = cfg[3].ival;
return ret;
diff --git a/puzzles.but b/puzzles.but
index e1f6681..d158bc4 100644
--- a/puzzles.but
+++ b/puzzles.but
@@ -891,7 +891,17 @@ menu are:
\dt \e{Mines}
-\dd Number of mines in the grid.
+\dd Number of mines in the grid. You can enter this as an absolute
+mine count, or alternatively you can put a \cw{%} sign on the end in
+which case the game will arrange for that proportion of the squares
+in the grid to be mines.
+
+\lcont{
+
+Beware of setting the mine count too high. At very high densities,
+the program may spend forever searching for a solvable grid.
+
+}
\dt \e{Ensure solubility}