1 /***************************************************************************
2 gameobjs_bridge.h - description
5 copyright : (C) 2004 by Ricardo Cruz
7 ***************************************************************************/
9 /***************************************************************************
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
16 ***************************************************************************/
18 #ifndef GAMEOBJS_BRIDGE_H
19 #define GAMEOBJS_BRIDGE_H
23 //#include "lisp/parser.h"
24 #include "lisp/lisp.h"
25 //#include "lisp/writer.h"
26 //#include "lisp/list_iterator.h"
29 #include "object/gameobjs.h"
32 /** This is just a set of functions aim to provide a common way
33 to create new game objects. Game objects that ain't really
34 interactive don't fit in here. */
36 enum GameObjectsType {
39 INVISIBLE_BLOCK_OBJECT,
45 BOUNCING_SNOWBALL_BADGUY,
47 FLYING_SNOWBALL_BADGUY,
58 NOT_RECOGNIZED_GAMEOBJECT
61 /* Objects identifiers. */
62 std::string object_type_to_string(int kind);
63 GameObjectsType object_name_to_type(const std::string& name);
65 bool is_object(const std::string& name);
67 /* Calls to return a pointer to a created GameObjects.
68 Don't forget to delete them! */
69 GameObject* create_object(GameObjectsType kind, const lisp::Lisp& reader);
70 GameObject* create_object(GameObjectsType kind, const Vector& pos);
72 #endif /*GAMEOBJS_BRIDGE_H*/