Skip to content
This repository was archived by the owner on May 12, 2023. It is now read-only.

Add an inline Level editor #7

@mcgivrer

Description

@mcgivrer

Proposition

Add the possibility to create from scratch with an embedded level editor :

  • a world with a name, a map, an introduction, and an illustration image,
  • a new Level, attached to a World, using exiting tileset and sprints (enemies, animated elements, etc...)
  • add the capability to place portal between levels/world.

Start Editor

The editor must remain very simple to use with some major themes, imposed by an elements set (tileset, enemies, etc...)

In the first version, this editor is available only in dev mode, with specific startup parameter called 'development mode':

$> gdj110 --mode editor

This will launch the specific editor mode on the current engine.

Storing map, world and level

Levels and their world structure are stored in some XML files:

  • res/maps/world-xxx.xml describe a part of a world,
  • res/maps/level-xxx-yyy.xml describe a level yyy in the world xxx,
  • res/resources/tilesets/tileset-999.png and res/resources/tilesets/tileset-999.xml will define a tileset with its graphics (the .png file), and their structure/name/size in the .xml file.

Sample Map


 Map sample
 +---------------------------------------------+
 | World 1                                     |
 | +---------+     +---------+     +---------+ |
 | |         |     |         |     |         | |
 | |Level 1.1+----->Level 1.2+----->Level 1.3| |
 | |         |     |         |     |         | |
 | +---------+     +---------+     +---------+ |
 |                                      |      |
 +--------------------------------------v------+
                       ||
 +---------------------vv----------------------+
 | World 2 |                                   |
 | +-------v-+     +---------+     +---------+ |
 | |         |     |         |     |         | |
 | |Level 2.1+----->Level 2.2+----->Level 2.3| |
 | |         |     |         |     |         | |
 | +---------+     +---------+     +---------+ |
 |                                      |      |
 +--------------------------------------v------+

Design

The editor can look like :

TODO

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions