Hey Patrick!

For 'saying' if I got you correctl, you can use a list of ENTITYs. Something like this (psesudo-code):
Code
// max amount of ship modules
#define MODULE_MAX 6

// rename those with your ship parts
#define MODULE_ONE 0
#define MODULE_TWO 1
#define MODULE_THREE 2
#define MODULE_FOUR 3
#define MODULE_FIVE 4
#define MODULE_SIX 5

ENTITY *ship_module[MODULE_MAX]; // max 6 modules

void create_ship_modules()
{
	ship_module[MODULE_ONE] = ent_create("modul_a.wmb", pos, NULL);
	ship_module[MODULE_TWO] = ent_create("modul_b.wmb", pos, NULL);
	ship_module[MODULE_THREE] = ent_create("modul_c.wmb", pos, NULL);
	ship_module[MODULE_FOUR] = ent_create("modul_d.wmb", pos, NULL);
	ship_module[MODULE_FIVE] = ent_create("modul_e.wmb", pos, NULL);
	ship_module[MODULE_SIX] = ent_create("modul_f.wmb", pos, NULL);
}
You can manage "MapEntitys " names and position vectors the same way with arrays.

As for 2d pos in 3d pos. As far as I know, there is no real 2d engine, only 3d. So you'll have to set one axis at fixed number for all entities.
F.e. entity can move X (left-right) and Z (up-down) but it's Y position will always stay at 0 (make sure to set this after each c_move call).

Best regards.


Looking for free stuff?? Take a look here: http://badcom.at.ua
Support me on: https://boosty.to/3rung