# The level edit window

In this window you can edit a level. Just select the object you want to add (Wall, Empty field, Keeper, Gem, Goal) and click in the map to place it at the desired place. You can also 'draw lines' by holding the &LMB; down and moving the mouse. There are some (sensible) restrictions in what you can place where:

- You cannot place an empty field, a wall, a goal or a gem on the field of the keeper. You first have to move the keeper away.

- You cannot move the keeper to a gem or wall field.

- You put a gem or a goal on a wall field. You first have to place an empty field at the desired position.

The meaning of the other menu entries is:

Change properties ...

  Lets you enter the properties (author, homepage, name, copyright) of the level.

Change size ...

  Lets you change the the size (width and height) of the level. If you increase the size, the new fields will be empty. If you decrease the size and the keeper will fall outside the map, it is forced to be in the map.

Adjust size

  Adjusts the size of the map, so that every nonempty field will fit in the map and the size is as small as possible.

Rotate left

  Rotates the map left (counterclockwise) by 90 degrees.

Rotate right

  Rotates the map right (clockwise) by 90 degrees.

Mirror horizontally

  Mirrors the level by the middle horizontal line.

Mirror vertically

  Mirrors the level by the middle vertical line.

Undo

  Undoes the last modification of the level.

Redo

  Redoes the last modification of the level.

Simplify

  Removes all gems and walls of the level, which are not really needed. Gems on goals which cannot be moved are replaced by gems. All this should not change the solution of the level (if it does, you have found a bug)!

Fill edges

  Tries to fill edges of the walls. Just try it, to see the effect!

Fill outside

  Fills all outside fields with walls.

Create empty map ...

  Creates a random map of the size of the actual map. The map will contain no gems or goals. You will be asked to give a fill amount (the percentage of the fields to be filled with walls). Note that the fill amount will only be respected with a certain error. This function can be useful to find a starting map for a new level (most of the time the create level will need manual adjustmenst to be really useful).

Create goals ...

  Fills the map with goals in random positions. The former goals will all be deleted. You will be asked to give the number of goals.

Create gems ...

  Fills the map with gems in random positions. A gem is created for every goal (if it is possible). All former gems will be deleted first.

Is Map Valid?

  Checks the validity of the map. There are many reasons why a map may be invalid:

  - There are no gems. You must have at least one gem in the map.

  - There are more gems than goals. The number of gems and goals must be the same.

  - There are more goals than gems. The number of gems and goals must be the same.

  - The map leaks. This means, the keeper reachable fields are not completely enclosed by walls, so that outside fields (empty fields which lie outside of the walls) have contact to non wall fields. Note that &EasySok; calculates the outside fields itself, so you cannot declare what is an outside field and what not, apart from enclosing it by walls.

  - There map is already solved. It doesn't makes much sense to supply an already solved map.

Is solvable?

  Starts the solver and informs you if the level is solvable or not.