0.0.45 • Published 1 year ago

tmx2c v0.0.45

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

tmx2c

Export Tiled Editor 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.

#include "generated/maps/main_map.h"
#include "generated/maps/level_2_map.h"
#include <assert.h>
#include <stddef.h>
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:

<objectgroup id="2" name="Object Layer 1">
    <object id="1" name="Player Spawn Point" type="playerSpawnPoint" x="512" y="288" width="32" height="32"/>
    <object id="2" name="Enemy Spawn Point" type="enemySpawnPoint" x="480" y="576" width="32" height="32">
        <properties>
            <property name="attack" value="10"/>
        </properties>
    </object>
</objectgroup>
<objectgroup id="3" name="Object Layer 2">
    <object id="4" name="Health Life Item" type="healthLifeItem" x="160" y="576" width="32" height="32"/>
</objectgroup>

Becomes this:

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
};
0.0.42

1 year ago

0.0.43

1 year ago

0.0.44

1 year ago

0.0.45

1 year ago

0.0.40

1 year ago

0.0.41

1 year ago

0.0.20

1 year ago

0.0.21

1 year ago

0.0.22

1 year ago

0.0.25

1 year ago

0.0.19

1 year ago

0.0.30

1 year ago

0.0.31

1 year ago

0.0.32

1 year ago

0.0.33

1 year ago

0.0.34

1 year ago

0.0.35

1 year ago

0.0.26

1 year ago

0.0.27

1 year ago

0.0.28

1 year ago

0.0.29

1 year ago

0.0.10

2 years ago

0.0.11

2 years ago

0.0.12

2 years ago

0.0.13

2 years ago

0.0.14

2 years ago

0.0.15

2 years ago

0.0.9

2 years ago

0.0.16

2 years ago

0.0.8

2 years ago

0.0.17

2 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago