https://github.com/victorqueiroz/tmx2c
Export Tiled Editor map files (.tmx) to C99 format directly from the command line.
https://github.com/victorqueiroz/tmx2c
2d tiled-map-editor tmx-maps tmx-parser
Last synced: 4 months ago
JSON representation
Export Tiled Editor map files (.tmx) to C99 format directly from the command line.
- Host: GitHub
- URL: https://github.com/victorqueiroz/tmx2c
- Owner: VictorQueiroz
- License: mit
- Created: 2021-10-31T18:44:09.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-02-15T16:36:01.000Z (over 2 years ago)
- Last Synced: 2025-03-10T17:09:18.390Z (4 months ago)
- Topics: 2d, tiled-map-editor, tmx-maps, tmx-parser
- Language: TypeScript
- Homepage:
- Size: 186 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tmx2c
Export [Tiled Editor](https://thorbjorn.itch.io/tiled) map files (.tmx) to C99 format directly from the command line.
## Installation
```
npm install -g tmx2c
```## Usage
```
tmx2c "test/Kings and Pigs/map.tmx":main_map "test/Kings and Pigs/map2.tmx":level_2_map -o generated
```This will generate a CMake project on a relative path (in this case `generated` was chosen) with all the embedded maps information.
```c
#include "generated/maps/main_map.h"
#include "generated/maps/level_2_map.h"
#include
#include
int main() {
struct tiled_map_t* map = NULL;
map = tiled_main_map_alloc();
assert(map != NULL);
tiled_main_map_free(&map);
assert(map == NULL);
map = tiled_level_2_map_alloc();
assert(map != NULL);
tiled_level_2_map_free(&map);
assert(map == NULL);
return 0;
}
```## Object types
The code generator will map all of the mentioned object types into a C enum. So this:
```xml
```
Becomes this:
```c
enum tiled_object_type_t {
TILED_OBJECT_TYPE_NONE,
TILED_OBJECT_TYPE_PLAYER_SPAWN_POINT,
TILED_OBJECT_TYPE_ENEMY_SPAWN_POINT,
TILED_OBJECT_TYPE_HEALTH_LIFE_ITEM
};
```