Commit graph

212 commits

Author SHA1 Message Date
Al Riddoch
21b18875f6 * Started working on sorting out memory leaks.
* Implemented python function to deal with not being able to check
	  type of python objects implemented in C.

	* Added method to thing for extracting location data from a
	  Message::Object

	* More work on python references to improve leakage.

	* Added flag so that python Operation object can own
	  the operation they point to, and thus delete it in dealloc().

	* Implemented find_by_location() and find_by_type() as required in
	  MemMap, and corresponding python interface.

	* Put in temporary work around to deal with the fact that a mind
	  does not know its name. Currently the mind is not able to
	  discover any of its bodies attributes, and I am not sure how
	  to solve this.

	* Fixed Location and Vector3D so they use operator bool() to detect
	  whether they are set.

	* Fixed bugs in getting parent from Location in python which caused
	  segfaults.

	* Imported all the basic ruleset entity python scripts.


Goals now work to some extent, though nothing moves around still. The main
priority is to work out how minds inherit the attributes of their
bodies, and keep them up to date. aloril?

Al
2000-12-04 20:08:21 +00:00
Al Riddoch
222786df66 * Added support for decoding Sound operations in BaseMind.
* Added Talk operation throughout operation handling code.

	* Added basic WorldTime class together with python wrapper.
	  Can fill in functionality as required.

	* Put debugging back in cos I still need it.

Python mind code now gets talk ops. Some tweaking still to go.
2000-11-29 15:19:36 +00:00
Al Riddoch
e156a2b6f1 * Disabled some of the excessive debugging messages.
* Implemented getting and setting of to and from in operations
	  using map to lookup what the mind knows about the entities
	  in question. This involved adding an extra field to the
	  RootOperationObject structure to store to and from entities.

	* Sorted out base_init() python member so __init__() of all
	  classes in inheritance tree are called.

	* Started work on set_kw() replacement.

	* Added python module finding mechanism which is required to deal
	  with rulesets correctly. I am not convinced this works.

Al
2000-11-24 01:41:06 +00:00
Al Riddoch
971a6df68d * Bug fix that meant that updates to MemMap object caused segfault.
Al
2000-11-21 22:15:46 +00:00
Al Riddoch
166696fab6 * Fixed setting location of newly created objects
* Fixed setting weight as float on default Thing.

	* Added more support for mode and face in movement code.

	* Cleaned up the debugging output code.

	* Fixed looking, and added support for contains attribute

Al
2000-11-10 20:41:24 +00:00
Al Riddoch
fc4ab2b5fe * Removed two conflicting "WorldRouter * world" members from
class hierarchy.

	* Added setting of refno to operations, so client can tell
	  what they apply to.

	* Sorted out initialisation of python path.

	* Added loading of admin account, allowing admin client to communicate.

	* Made sure all attributes of created objects are set, so that
	  character gender works.

	* Added face attribute to Thing, to indicate what direction it faces!

	* Modified error operation so it complies with traditional format

Al
2000-11-10 00:57:34 +00:00
Al Riddoch
f3f1e4fd39 * More movement fixes, including lots of clearer debugging output.
Still does not seem to correctly handle moves which don't
	  specify direction.

Al
2000-11-05 16:08:17 +00:00
Al Riddoch
bd9aecbcfa Modified all internal operation handling functions so they now return a list
of Operations instead of just one. Debugged movement, which now works, but
does not yet stop when it reaches the destination.

Al
2000-08-31 21:48:46 +00:00
Al Riddoch
d6a56f6764 The basic world model now works. Operation get routed effectively between
objects in the world, mind and external minds. You can now log in, create
a character, and witness other operations in the world through receiving
sight operations.

Al
2000-08-26 15:11:24 +00:00
Al Riddoch
604d22f80d Lots more code added, and WorldRouter can now send operations around
Now adding character body and mind code so mind and body abstraction can
work and communication between client and server character entity can
work. The code is not currently in any particular state, but I have not
commited for a while, so I am doing it now for security.
Al
2000-08-25 17:54:30 +00:00
Al Riddoch
2af3db08b1 Can now connect, login or create account, and create a character, which is
then added to the world. Socket code has been tweaked so it now handles
client disconnection a little better.

Al
2000-08-21 11:31:18 +00:00
Al Riddoch
52e69e1137 Account related files required for account management
Al
2000-08-19 16:44:19 +00:00