more smaller fixes
[supertux.git] / src / scripting / scripted_object.hpp
1 #ifndef __SCRIPTED_OBJECT_INTERFACE_H__
2 #define __SCRIPTED_OBJECT_INTERFACE_H__
3
4 namespace Scripting
5 {
6
7 class ScriptedObject
8 {
9 public:
10 #ifndef SCRIPTING_API
11   virtual ~ScriptedObject()
12   {}
13 #endif
14
15   virtual void set_action(const std::string& animation) = 0;
16   virtual std::string get_action() = 0;
17
18   virtual void move(float x, float y) = 0;
19   virtual void set_pos(float x, float y) = 0;
20   virtual float get_pos_x() = 0;
21   virtual float get_pos_y() = 0;
22   
23   virtual void set_velocity(float x, float y) = 0;
24   virtual float get_velocity_x() = 0;
25   virtual float get_velocity_y() = 0;
26   
27   virtual void set_visible(bool visible) = 0;
28   virtual bool is_visible() = 0;
29
30   virtual std::string get_name() = 0;
31 };
32
33 }
34
35 #endif
36