2005-05-23 05:51:37 +02:00
|
|
|
#ifndef __OBJPARSE_H__
|
|
|
|
#define __OBJPARSE_H__
|
|
|
|
|
|
|
|
#include "map.h"
|
|
|
|
#include "entity.h"
|
2005-06-06 09:46:28 +02:00
|
|
|
#include "constraint.h"
|
|
|
|
#include "areapainter.h"
|
|
|
|
#include "areaplacer.h"
|
|
|
|
#include "terrain.h"
|
2005-05-23 05:51:37 +02:00
|
|
|
|
|
|
|
// Object type constants
|
|
|
|
|
|
|
|
const int
|
|
|
|
TYPE_RECTPLACER = 1,
|
|
|
|
TYPE_TERRAINPAINTER = 2,
|
2005-06-06 09:46:28 +02:00
|
|
|
TYPE_NULLCONSTRAINT = 3,
|
|
|
|
TYPE_RANDOMTERRAIN = 4,
|
|
|
|
TYPE_LAYEREDPAINTER = 5,
|
|
|
|
TYPE_AVOIDAREACONSTRAINT = 6,
|
|
|
|
TYPE_CLUMPPLACER = 7,
|
2005-06-07 09:21:55 +02:00
|
|
|
TYPE_AVOIDTERRAINCONSTRAINT = 8,
|
|
|
|
TYPE_ANDCONSTRAINT = 9;
|
2005-05-23 05:51:37 +02:00
|
|
|
|
|
|
|
// Helper functions to parse objects from array versions
|
|
|
|
|
|
|
|
JSObject* GetRaw(JSContext* cx, jsval val);
|
|
|
|
|
|
|
|
bool ParseFields(JSContext* cx, JSObject* array, const char* format, ...);
|
2005-06-06 09:46:28 +02:00
|
|
|
bool ParseArray(JSContext* cx, jsval val, std::vector<jsval>& ret);
|
2005-05-23 05:51:37 +02:00
|
|
|
|
|
|
|
AreaPainter* ParsePainter(JSContext* cx, jsval val);
|
|
|
|
AreaPlacer* ParsePlacer(JSContext* cx, jsval val);
|
|
|
|
Constraint* ParseConstraint(JSContext* cx, jsval val);
|
2005-06-06 09:46:28 +02:00
|
|
|
Terrain* ParseTerrain(JSContext* cx, jsval val);
|
2005-05-23 05:51:37 +02:00
|
|
|
|
|
|
|
#endif
|