00001
00006
00007 #ifndef __KX_CAMERAACTUATOR
00008 #define __KX_CAMERAACTUATOR
00009
00010 #include "SCA_IActuator.h"
00011
00012 #include "KX_CameraActuator.h"
00013
00020 class KX_CameraActuator : public SCA_IActuator
00021 {
00022 Py_Header;
00023
00025 CValue *m_ob;
00026
00028 float m_height;
00029
00031 float m_minHeight;
00032
00034 float m_maxHeight;
00035
00037 bool m_x;
00038
00039
00040 CValue *findObject(char *obName);
00041
00042
00043 bool string2axischoice(char *axisString);
00044
00045 public:
00046 static CCString X_AXIS_STRING;
00047 static CCString Y_AXIS_STRING;
00048
00052 KX_CameraActuator(SCA_IObject *gameobj,
00053 CValue *ob,
00054 float hght,
00055 float minhght,
00056 float maxhght,
00057 bool xytog,
00058 PyTypeObject* T=&Type);
00059 virtual ~KX_CameraActuator();
00060 virtual CValue* GetReplica() {
00061 KX_CameraActuator* replica = new KX_CameraActuator(*this);
00062 replica->ProcessReplica();
00063
00064 CValue::AddDataToReplica(replica);
00065 return replica;
00066 };
00067
00068 virtual bool Update(double curtime,double deltatime);
00069
00070
00071
00072
00073 virtual PyObject* _getattr(char *attr);
00074
00075
00076 PyObject* PySet(PyObject* self, PyObject* args, PyObject* kwds);
00077 static PyObject* sPySet(PyObject* self, PyObject* args, PyObject* kwds) {
00078
00079 return ((KX_CameraActuator*) self)->PySet(self, args, kwds);
00080 };
00081
00082 };
00083 #endif //__KX_CAMERAACTUATOR