cyphesis/rulesets/PythonThingScript.h
Al Riddoch ad8e5989cf 2005-12-11 Al Riddoch <alriddoch@zepler.org>
* rulesets/PythonWrapper.h, rulesets/PythonWrapper.cpp: Add new
	  class which inherits from Script to store a wrapper pointer
	  for instances which have no script.

	* rulesets/PythonScript.h, rulesets/PythonScript.cpp,
	  rulesets/PythonThingScript.h, rulesets/PythonThingScript.cpp,
	  rulesets/PythonMindScript.h, rulesets/PythonMindScript.cpp:
	  Refactor script classes to inherit from PythonWrapper to make
	  storing wrappers for mind and world entities easier.

	* rulesets/Py_Location.cpp, rulesets/Py_World.cpp: Use PythonWrapper
	  interface to get wrapper pointers from Script objects.

	* rulesets/Python_API.cpp: Improve variable names, and comment out
	  some unused code.
2005-12-11 20:33:43 +00:00

29 lines
960 B
C++

// This file may be redistributed and modified only under the terms of
// the GNU General Public License (See COPYING for details).
// Copyright (C) 2001 Alistair Riddoch
#ifndef RULESETS_PYTHON_THING_SCRIPT_H
#define RULESETS_PYTHON_THING_SCRIPT_H
#include "PythonScript.h"
class Entity;
/// \brief Script class for Python scripts attached to an Entity
class PythonEntityScript : public PythonScript {
protected:
// PyObject * const m_wrapper;
public:
explicit PythonEntityScript(PyObject *, PyObject *);
virtual ~PythonEntityScript();
// PyObject * wrapper() const { return m_wrapper; }
virtual bool operation(const std::string &,
const Atlas::Objects::Operation::RootOperation &,
OpVector &,
const Atlas::Objects::Operation::RootOperation * = 0);
virtual void hook(const std::string &, Entity *);
};
#endif // RULESETS_PYTHON_THING_SCRIPT_H