Commit graph

418 commits

Author SHA1 Message Date
Al Riddoch
5f34ba522e 2004-01-17 Al Riddoch <alriddoch@zepler.org>
* common/BaseWorld.h, rulesets/Character.cpp, rulesets/Py_World.cpp,
	  rulesets/PythonThingScript.cpp, rulesets/Stackable.cpp,
	  rulesets/Thing.cpp, rulesets/World.cpp, server/Account.cpp,
	  server/Admin.cpp, server/Connection.cpp, server/EntityFactory.cpp,
	  server/Restoration.cpp, server/WorldRouter.cpp, server/WorldRouter.h:
	  Rename some functions in the World interface so they make more
	  sense.

	* rulesets/Entity.cpp, rulesets/Entity.h: Add destroyed flag to
	  Entity so we can tell if its no longer in the world.

	* server/WorldRouter.cpp: Cut down the special case handling of
	  delete ops as we can now broadcast ops from entities that
	  have been removed from the world.
2005-01-17 01:42:25 +00:00
Al Riddoch
7273cb19cc 2004-12-30 Al Riddoch <alriddoch@zepler.org>
* common/const.h: Make the coments doxygen compatable.

	* rulesets/Character.cpp: Add comments to document tool use.

	* rulesets/Fell.cpp, rulesets/Fell.h, rulesets/Task.cpp,
	  rulesets/Task.h: Add reference to Character to base Task class,
	  and setup() method for task initiation.

	* tests/Tasktest.cpp: Update task test for new changes.

	* tests/randomtest.cpp, tests/consttest.cpp: New tests for random
	  and const headers.
2004-12-30 20:01:33 +00:00
Al Riddoch
901cdbff8d 2004-12-28 Al Riddoch <alriddoch@zepler.org>
* common/OOGThing.cpp, common/Property.cpp, common/Property.h,
	  common/Property_impl.h, common/inheritance.h, common/operations.cpp,
	  rulesets/World.cpp: Update some comments.

	* rulesets/Task.h, rulesets/Task.cpp, tests/Tasktest.cpp,
	  rulesets/Fell.h, rulesets/Fell.cpp: New Task interface for
	  tasks which take a while to complete. Sample implentation provided
	  in the form of a Fell task for felling trees.

	* rulesets/Character.cpp, rulesets/Character.h: Try out Task
	  implementation with Fell.
2004-12-28 02:14:17 +00:00
Al Riddoch
2b75aa5b06 2004-12-06 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp, rulesets/Pedestrian.cpp,
	  rulesets/Py_World.cpp, rulesets/PythonThingScript.cpp,
	  rulesets/Thing.cpp, server/Account.cpp, server/Admin.cpp,
	  server/Connection.cpp, server/Restoration.cpp:
	  Remove unnecessary includes of common/BaseWorld.h.
2004-12-06 22:08:36 +00:00
Al Riddoch
a394cd8e48 2004-12-06 Al Riddoch <alriddoch@zepler.org>
* common/BaseEntity.cpp, common/BaseWorld.h, common/refno.h,
	  common/serialno.h, rulesets/Character.cpp, rulesets/Creator.cpp,
	  rulesets/World.h, server/Account.cpp, server/Admin.cpp,
	  server/Connection.cpp, server/Lobby.cpp, server/ServerRouting.h,
	  server/WorldRouter.cpp, server/WorldRouter.h, tests/Creatortest.cpp,
	  tests/Worldtest.cpp: Simplify the way operation refnos and serialnos
	  are handled, getting rid of some unnecessary virtual methods and
	  functions.
2004-12-06 21:56:47 +00:00
Al Riddoch
3b17d4de51 2004-12-06 Al Riddoch <alriddoch@zepler.org>
* client/BaseClient.cpp, client/BaseClient.h, client/CreatorClient.cpp,
	  client/CreatorClient.h, common/BaseEntity.cpp, common/BaseEntity.h,
	  common/BaseWorld.h, common/OOGThing.cpp, common/OOGThing.h,
	  common/op_switch.h, common/refno.h, common/types.h,
	  rulesets/BaseMind.cpp, rulesets/BaseMind.h, rulesets/Character.cpp,
	  rulesets/Character.h, rulesets/Creator.cpp, rulesets/Creator.h,
	  rulesets/Entity.cpp, rulesets/Entity.h, rulesets/Food.cpp,
	  rulesets/Food.h, rulesets/MemMap.cpp, rulesets/Plant.cpp,
	  rulesets/Plant.h, rulesets/Py_Map.cpp, rulesets/PythonMindScript.cpp,
	  rulesets/PythonThingScript.cpp, rulesets/Stackable.cpp,
	  rulesets/Stackable.h, rulesets/Thing.cpp, rulesets/Thing.h,
	  rulesets/World.cpp, rulesets/World.h, server/Account.cpp,
	  server/Account.h, server/Admin.cpp, server/Admin.h,
	  server/CommClient.cpp, server/Connection.cpp, server/Connection.h,
	  server/Connection_methods.h, server/ExternalMind.cpp,
	  server/ExternalMind.h, server/Lobby.cpp, server/Lobby.h,
	  server/Player.cpp, server/Player.h, server/WorldRouter.cpp,
	  server/WorldRouter.h, tests/Creatortest.cpp, tests/Worldtest.cpp:
	  Add a new Operation typedef to clean up headers, and get round
	  limitation in doxygen.
2004-12-06 16:35:44 +00:00
Al Riddoch
7bed7caf04 2004-12-03 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp, rulesets/Creator.cpp, rulesets/Entity.cpp,
	  rulesets/Food.cpp, rulesets/Plant.cpp, rulesets/Thing.cpp,
	  rulesets/World.cpp: Remove some redundant includes.
2004-12-03 15:06:57 +00:00
Al Riddoch
299efcafdc 2004-12-03 Al Riddoch <alriddoch@zepler.org>
* client/BaseClient.cpp, client/BaseClient.h,
	  client/CharacterClient.cpp, client/CharacterClient.h,
	  client/ClientConnection.cpp, client/ClientConnection.h,
	  client/CreatorClient.cpp, client/CreatorClient.h,
	  client/Py_CreatorClient.cpp, common/BaseEntity.cpp,
	  common/BaseEntity.h, common/BaseWorld.h, common/custom.cpp,
	  common/inheritance.cpp, common/inheritance.h,
	  common/inheritance_impl.h, common/op_switch.h, common/type_utils.h,
	  common/types.h, common/utility.cpp, common/utility.h,
	  modules/Location.cpp, rulesets/BaseMind.cpp, rulesets/BaseMind.h,
	  rulesets/Character.cpp, rulesets/Character.h, rulesets/Creator.cpp,
	  rulesets/Creator.h, rulesets/Entity.cpp, rulesets/Entity.h,
	  rulesets/EntityProperties.cpp, rulesets/Entity_getLocation.h,
	  rulesets/Food.cpp, rulesets/Food.h, rulesets/MemMap.cpp,
	  rulesets/MemMap.h, rulesets/Missile.h, rulesets/Pedestrian.cpp,
	  rulesets/Plant.cpp, rulesets/Plant.h, rulesets/Py_Mind.cpp,
	  rulesets/Py_Object.cpp, rulesets/Py_Operation.cpp,
	  rulesets/Py_Operation.h, rulesets/Py_Thing.cpp,
	  rulesets/PythonMindScript.h, rulesets/PythonScript.h,
	  rulesets/PythonThingScript.h, rulesets/Python_API.cpp,
	  rulesets/Script.cpp, rulesets/Script.h, rulesets/Stackable.cpp,
	  rulesets/Stackable.h, rulesets/Thing.cpp, rulesets/Thing.h,
	  rulesets/World.cpp, rulesets/World.h,
	  server/Account.cpp, server/Account.h server/Admin.cpp, server/Admin.h,
	  server/CommClient.cpp, server/Connection.cpp, server/Connection.h,
	  server/EntityFactory.cpp, server/EntityFactory.h, server/Lobby.cpp,
	  server/Lobby.h, server/Persistance.cpp, server/Persistance.h,
	  server/Persistor.cpp, server/Player.cpp, server/Player.h,
	  server/ServerRouting.cpp, server/ServerRouting.h,
	  server/TrustedConnection.cpp, server/TrustedConnection.h,
	  server/WorldRouter.cpp, server/WorldRouter.h, tests/Areatest.cpp,
	  tests/Charactertest.cpp, tests/Creatortest.cpp,
	  tests/EntityExerciser.h, tests/Entitytest.cpp, tests/Foodtest.cpp,
	  tests/IGEntityExerciser.h, tests/Linetest.cpp, tests/Planttest.cpp,
	  tests/Stackabletest.cpp, tests/Structuretest.cpp, tests/Thingtest.cpp,
	  tests/Worldtest.cpp, tests/allOperations.h, tests/inheritancetest.cpp,
	  tests/utilitytest.cpp, tools/cycmd.cpp:
	  Modify the entity interface so that all Operation methods
	  take references to RootOperation, as its cleaner, and requires
	  less nasty casts. Clean up operations in headers generally.
2004-12-03 14:49:13 +00:00
Al Riddoch
0e71e6be03 2004-11-18 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp, rulesets/Plant.cpp: Encapsulate the
	  debugging output relating to tool use into the debug macro, so it
	  is no longer printed.

	* rulesets/basic/mind/goals/common/move.py: Re-write a couple
	  of movement goals so they work more reliably.

	* rulesets/basic/mind/goals/humanoid/construction.py: Comment out
	  debugging output.

	* rulesets/mason/define_world.py: More additions to NPC settler test.
2004-11-18 14:48:32 +00:00
Al Riddoch
3bc8a55ea4 2004-11-16 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Clarify error message on tool use.

	* rulesets/Thing.cpp: Allow setting of mode attribute from args
	  of move op for efficiency.

	* server/Player.cpp, server/Admin.cpp, server/Player.cpp:
	  Add TO to all accounts at the account level, so the client
	  can tell they are for the account.
2004-11-16 01:09:57 +00:00
Al Riddoch
7761643f5e 2004-11-06 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp, rulesets/EntityProperties.cpp,
	  rulesets/Thing.cpp: Use pre-increment in for loops.

	* server/WorldRouter.cpp: Optimise inserting ops into the queue.
2004-11-06 21:16:47 +00:00
Al Riddoch
c4a92de9f3 2004-11-06 Al Riddoch <alriddoch@zepler.org>
* aiclient/ClientConnection.cpp, client/BaseClient.cpp,
	  client/CharacterClient.cpp, client/ClientConnection.cpp,
	  common/Database.cpp, common/FormattedXMLWriter.cpp,
	  common/inheritance.cpp, common/refno.h, common/terrain_utils.cpp,
	  common/type_utils.h, common/utility.cpp, modules/WorldTime.cpp,
	  modules/WorldTime.h, physics/Collision.cpp, rulesets/Area.cpp,
	  rulesets/BaseMind.cpp, rulesets/Character.cpp, rulesets/Entity.cpp,
	  rulesets/Line.cpp, rulesets/MemMap.cpp, rulesets/MemMap_methods.h,
	  rulesets/Movement.cpp, rulesets/Plant.cpp, rulesets/Py_Map.cpp,
	  rulesets/Py_Object.cpp, rulesets/Py_Operation.cpp,
	  rulesets/Py_Oplist.cpp, rulesets/PythonMindScript.cpp,
	  rulesets/PythonThingScript.cpp, rulesets/Python_API.cpp,
	  rulesets/Stackable.cpp, rulesets/TerrainProperty.cpp,
	  rulesets/Thing.cpp, rulesets/World.cpp, server/Account.cpp,
	  server/CommClient.cpp, server/CommServer.cpp, server/Connection.cpp,
	  server/EntityFactory.cpp, server/Lobby.cpp, server/Persistance.cpp,
	  server/Player.cpp, server/Restoration.cpp, server/ServerRouting.cpp,
	  server/WorldRouter.cpp, tests/EntityExerciser.h,
	  tests/IGEntityExerciser.h, tests/inheritancetest.cpp,
	  tools/cycmd.cpp, tools/cyconvertrules.cpp, tools/cydbload.cpp,
	  tools/cyloadrules.cpp:
	  Tweak for loops to avoid creating a temporary iterator each
	  iteration.

	* tests/type_utilstest.cpp: New test for function which does
	  list conversions.
2004-11-06 20:36:03 +00:00
Al Riddoch
25b857aa98 2004-11-04 Al Riddoch <alriddoch@zepler.org>
* cyphesis.spec.in: Ensure rpm spec correctly obsoletes the old
	  mason and service rpms.

	* modules/Location.cpp: Get rid of accidentally commited change
	  that screws up orientation.

	* rulesets/Character.cpp: Provide more info about ops which
	  have TO set incorrectly.

	* rulesets/MemMap.cpp: Don't set TO on look ops from memory.

	* rulesets/basic/mind/NPCMind.py: Don't set TO on tick ops
	  from the mind.
2004-11-04 21:04:01 +00:00
Al Riddoch
e13826d573 2004-11-04 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Add notes, and a check to ensure that
	  ops from the mind don't have TO set.

	* rulesets/basic/mind/NPCMind.py,
	  rulesets/basic/mind/goals/common/misc_goal.py,
	  rulesets/basic/mind/goals/humanoid/mason.py: Don't set TO or FROM
	  on goals from the mind.
2004-11-04 17:42:40 +00:00
Al Riddoch
8424723b7a 2004-11-02 Al Riddoch <alriddoch@zepler.org>
* rulesets/Entity.cpp, rulesets/Entity.h: Add has() method
	  to query if an entity has an attribute with a given name.

	* rulesets/Character.cpp, rulesets/Character.h: Implement tool
	  wield and use operations.

	* data/mason.xml: Add operations list to the cleaver.

	* rulesets/mason/world/objects/tools/Cleaver.py: Simplify the chop
	  operation the cleaver expects to get from its user.

	* tools/cyloadrules.cpp: Remove some commented out cruft and
	  debugging output.
2004-11-03 15:28:10 +00:00
Al Riddoch
0480a455c0 2004-11-02 Al Riddoch <alriddoch@zepler.org>
* rulesets/Entity.cpp, rulesets/Entity.h: Make get(), set(), and
	  addToMessage() non-virtual, and convert them to using new property
	  mechanism. Add the necessary properties in the constructor.

	* rulesets/Area.cpp, rulesets/Area.h, rulesets/Character.cpp,
	  rulesets/Character.h, rulesets/Line.cpp, rulesets/Line.h,
	  rulesets/Plant.cpp, rulesets/Plant.h, rulesets/Stackable.cpp,
	  rulesets/Stackable.h, rulesets/World.cpp, rulesets/World.h:
	  Remove virtual get() set() and addToMessage() methods. These
	  are now entirely in Entity.

	* rulesets/World.cpp, rulesets/World.h: Remove some functions
	  for handling terrain data now handled by properties.
	  Clean up Set code to get rid of nasty unnecessary exception
	  try / catch block.
2004-11-02 20:44:24 +00:00
Al Riddoch
69d297c847 2004-10-27 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.h, rulesets/Character.cpp: Add new variable for
	  storing currently tool.
2004-10-27 21:01:18 +00:00
Al Riddoch
8a11b05290 2004-10-03 Al Riddoch <alriddoch@zepler.org>
* modules/Location.cpp, physics/Collision.cpp, rulesets/Character.cpp,
	  rulesets/Entity.cpp, rulesets/Movement.cpp, rulesets/Movement.h,
	  rulesets/Pedestrian.cpp: Make sure orientation is not used if it
	  is not valid.
2004-10-03 03:32:16 +00:00
Al Riddoch
68ab5f7fc8 2004-09-20 Al Riddoch <alriddoch@zepler.org>
* physics/Vector3D.h, physics/Vector3D.cpp, modules/Location.h,
	  modules/Location.cpp: Convert to using WFMath::Point instead of
	  WFMath::Vector for position.

	* physics/Collision.h, physics/Collision.cpp: Update collision code
	  to use new pos type.

	* rulesets/Py_Point3D.h, rulesets/Py_Point3D.cpp: New python
	  wrappers for WFMath::Point.

	* rulesets/Py_Location.cpp, rulesets/Py_Vector3D.cpp,
	  rulesets/Python_API.cpp:
	  Update python wrappers to take into account new pos type.
	  Ensure that only apropriate functionality is available for
	  point and vector.

	* rulesets/Character.cpp, rulesets/Entity.cpp, rulesets/Entity.h,
	  rulesets/Line.cpp, rulesets/Movement.cpp, rulesets/Movement.h,
	  rulesets/Pedestrian.cpp, rulesets/Pedestrian.h,
	  rulesets/Plant.cpp, rulesets/Thing.cpp, rulesets/World.cpp,
	  server/EntityFactory.cpp, server/WorldRouter.cpp,
	  server/WorldRouter.h: Update the rest of the code for new pos
	  type, converting all places where entity parenting is changed
	  to use WFMath toParentCoords() and toLocalCoords() methods,
	  so that orientation is handled correctly.

	* tests/transformtest.cpp: New test to ensure that toParentCoords()
	  and toLocalCoords() perform as expected.

	* tests/Creatortest.cpp, tests/Locationtest.cpp, tests/Worldtest.cpp,
	  tests/collisiontest.cpp, tests/emergencetest.cpp:
	  Update the rest of the tests.
2004-09-20 10:16:04 +00:00
Al Riddoch
eeb5865d6b 2004-09-06 Al Riddoch <alriddoch@zepler.org>
* server/Connection.cpp, rulesets/Creator.cpp, rulesets/Character.cpp:
	  Check and clean up places where args are checked before querying
	  their contents.

	* rulesets/Character.cpp: Assert that Movement::getMoveOperation()
	  always returns an operation, rather than a normal tolerant test.
	  Remove a FIXME about the Python code operations conversion functions.
2004-09-06 01:18:09 +00:00
Al Riddoch
593e22b4d8 2004-09-05 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp, server/Account.cpp:
	  Add serialno assignments to character inventory creation ops,
	  and ops from builtin mind.

	* server/WorldRouter.cpp: Remove an obsolete comment.
2004-09-05 01:39:02 +00:00
Al Riddoch
f0070fec52 2004-09-04 Al Riddoch <alriddoch@zepler.org>
* server/Connection.cpp, rulesets/Thing.h, rulesets/Entity.h,
	  rulesets/Entity.cpp, rulesets/Creator.h, rulesets/Creator.cpp,
	  rulesets/Character.h, rulesets/Character.cpp: Modify
	  externalOperation() so it no longer returns anything, ensuring
	  that Entity::externalOperation() passes its results back to
	  the world.
2004-09-04 15:16:26 +00:00
Al Riddoch
b079641db8 2004-09-04 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Check if a Setup op is for the mind
	  before dispatching to script, and ensure that Appearance
	  is always broadcast.

	* server/Account.cpp: No need to broadcase sight(create) when a
	  character is created by an account.
2004-09-04 14:08:39 +00:00
Al Riddoch
302d34955b 2004-09-04 Al Riddoch <alriddoch@zepler.org>
* rulesets/Creator.h, rulesets/Creator.cpp: Rename sendMind() to
	  sendExternalMind() to make it clear that its not the same as the
	  method in Character.

	* rulesets/Character.h, rulesets/Character.cpp: Remove world2body()
	  as it was identical in semantics to callOperation().
2004-09-04 12:44:37 +00:00
Al Riddoch
e8640f3832 2004-09-04 Al Riddoch <alriddoch@zepler.org>
* rulesets/Creator.cpp: Allow creator to handle a few more op
	  types, and use switch to determine what to do.

	* rulesets/Character.cpp: Remove setting and checking of sub_to
	  on Use and Wield ops as it is not relevant.
2004-09-04 00:18:12 +00:00
Al Riddoch
d526d8df78 2004-09-03 Al Riddoch <alriddoch@zepler.org>
* client/CharacterClient.cpp, client/CharacterClient.h,
	  client/CommClient.cpp, common/BaseEntity.cpp,
	  common/BaseEntity.h, common/OOGThing.cpp,
	  common/OOGThing.h, common/op_switch.h,
	  rulesets/BaseMind.cpp, rulesets/BaseMind.h,
	  rulesets/Character.cpp, rulesets/Character.h,
	  rulesets/Creator.cpp, rulesets/Creator.h, rulesets/Entity.cpp,
	  rulesets/Entity.h, rulesets/Food.cpp, rulesets/Food.h,
	  rulesets/Missile.h, rulesets/Plant.cpp, rulesets/Plant.h,
	  rulesets/PythonMindScript.cpp, rulesets/PythonThingScript.cpp,
	  rulesets/Stackable.cpp, rulesets/Stackable.h, rulesets/Thing.cpp,
	  rulesets/Thing.h, rulesets/World.cpp, rulesets/World.h,
	  server/Account.cpp, server/Account.h, server/Admin.cpp,
	  server/Admin.h, server/CommClient.cpp, server/Connection.cpp,
	  server/Connection.h, server/ExternalMind.cpp, server/ExternalMind.h,
	  server/Lobby.cpp, server/Lobby.h, server/Player.cpp,
	  server/Player.h, server/WorldRouter.cpp:
	  Re-work basic op dispatch mechanism so result is passed by
	  a reference argument rather than returning by value.
2004-09-03 00:33:19 +00:00
Al Riddoch
2ae7a24fa4 2004-08-29 Al Riddoch <alriddoch@zepler.org>
* common/BaseEntity.cpp, common/BaseEntity.h,
	  rulesets/Character.cpp, rulesets/Creator.cpp,
	  server/CommClient.cpp, server/ExternalMind.cpp,
	  server/ExternalMind.h, client/CharacterClient.cpp,
	  client/CommClient.cpp: Remove the message method from BaseEntity
	  and everything that inherits from it - its redundant.

	* tests/Charactertest.cpp, tests/Creatortest.cpp,
	  tests/EntityExerciser.h: Sort out the tests so they no longer use
	  message, and try and get the character class tests working a bit
	  better.
2004-08-29 00:45:07 +00:00
Al Riddoch
890aefa918 2004-08-28 Al Riddoch <alriddoch@zepler.org>
* common/BaseEntity.h, common/BaseEntity.cpp, rulesets/BaseMind.h,
	  rulesets/Character.h, rulesets/Character.cpp, rulesets/Entity.cpp,
	  rulesets/Entity.h, server/Connection.cpp, tests/EntityExerciser.h:
	  Remove externalMessage() completely as its redundant, and remove
	  externalOperation() from the BaseEntity class, and into
	  Entity as its only applicable in-game.

	* tests/Charactertest.cpp, tests/Creatortest.cpp:
	  Add tests for more IG classes.
2004-08-28 21:54:03 +00:00
Al Riddoch
b256b30d90 2004-08-24 Al Riddoch <alriddoch@zepler.org>
* client/Py_CreatorClient.cpp, common/BaseEntity.cpp,
	  common/BaseEntity.h, modules/Location.cpp, modules/Location.h,
	  rulesets/Area.cpp, rulesets/Area.h, rulesets/Character.cpp,
	  rulesets/Character.h, rulesets/Entity.cpp, rulesets/Entity.h,
	  rulesets/Line.cpp, rulesets/Line.h, rulesets/MemMap.cpp,
	  rulesets/Pedestrian.cpp, rulesets/Plant.cpp, rulesets/Plant.h,
	  rulesets/Py_Mind.cpp, rulesets/Py_Object.cpp, rulesets/Py_Thing.cpp,
	  rulesets/Python_API.cpp, rulesets/Stackable.cpp,
	  rulesets/Stackable.h, rulesets/Thing.cpp, rulesets/World.cpp,
	  rulesets/World.h, server/Account.cpp, server/Account.h,
	  server/Admin.cpp, server/Connection.cpp, server/Lobby.cpp,
	  server/Lobby.h, server/Player.cpp, server/Player.h,
	  server/ServerRouting.cpp, server/ServerRouting.h,
	  tests/Areatest.cpp, tests/Entitytest.cpp, tests/Foodtest.cpp,
	  tests/Linetest.cpp, tests/Planttest.cpp, tests/Stackabletest.cpp,
	  tests/Structuretest.cpp, tests/Thingtest.cpp, tests/Worldtest.cpp:
	  Replace addToObject() with addToMessage() throughout.

	* server/Account.cpp, server/Lobby.cpp: Use BaseEntity::addToMessage().

	* server/Player.cpp: Make adding character types attribute to Message
	  more efficient.
2004-08-24 21:05:06 +00:00
Al Riddoch
96f13800c8 2004-08-07 Al Riddoch <alriddoch@zepler.org>
* common/BaseEntity.cpp, common/BaseEntity.h, common/BaseWorld.h,
	  common/Database.cpp, common/Database.h, common/FormattedXMLWriter.cpp,
	  common/FormattedXMLWriter.h, common/accountbase.cpp,
	  common/accountbase.h, common/custom.cpp, common/inheritance.cpp,
	  common/inheritance.h, common/operations.h, common/type_utils.h,
	  common/utility.cpp, common/utility.h, modules/Location.cpp,
	  modules/Location.h, rulesets/Area.cpp, rulesets/Area.h,
	  rulesets/BaseMind.cpp, rulesets/Character.cpp, rulesets/Character.h,
	  rulesets/Creator.cpp, rulesets/Entity.cpp, rulesets/Entity.h,
	  rulesets/Entity_getLocation.h, rulesets/Food.cpp, rulesets/Line.cpp,
	  rulesets/Line.h, rulesets/MemMap.cpp, rulesets/MemMap.h,
	  rulesets/Pedestrian.cpp, rulesets/Plant.cpp, rulesets/Plant.h,
	  rulesets/Py_Mind.cpp, rulesets/Py_Object.cpp, rulesets/Py_Object.h,
	  rulesets/Py_Operation.cpp, rulesets/Py_Thing.cpp,
	  rulesets/Python_API.cpp, rulesets/Stackable.cpp, rulesets/Stackable.h,
	  rulesets/Thing.cpp, rulesets/World.cpp, rulesets/World.h,
	  server/Account.cpp, server/Account.h, server/Admin.cpp,
	  server/Admin.h, server/CommClient.cpp, server/CommClient.h,
	  server/CommListener.cpp, server/CommListener.h,
	  server/CommLocalClient.cpp, server/CommLocalClient.h,
	  server/CommMetaClient.h, server/CommPSQLSocket.h,
	  server/CommRemoteClient.cpp, server/CommRemoteClient.h,
	  server/CommServer.cpp, server/CommServer.h, server/CommSocket.cpp,
	  server/CommSocket.h, server/CommUnixListener.cpp,
	  server/CommUnixListener.h, server/Connection.cpp,
	  server/Connection.h, server/EntityFactory.cpp,
	  server/EntityFactory.h, server/Lobby.cpp, server/Lobby.h,
	  server/Persistance.cpp, server/Persistance.h,
	  server/PersistantThingFactory.h, server/Persistor.cpp,
	  server/Player.cpp, server/Player.h, server/Restorer.h,
	  server/Restorer_impl.h, server/ServerRouting.cpp,
	  server/ServerRouting.h, server/TrustedConnection.cpp,
	  server/TrustedConnection.h, server/WorldRouter.cpp,
	  server/WorldRouter.h: Convert code to using Atlas Message
	  typedefs as found in Atlas-C++ 0.6 to aid conversion later.
2004-08-16 14:26:47 +00:00
Al Riddoch
12442d48ae 2004-07-26 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Don't give minds to player characters.
	  Improve commenting.
2004-07-26 17:58:54 +00:00
Al Riddoch
cd3328d534 2004-07-25 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Remove some obsolete commented out code.
2004-07-25 20:35:01 +00:00
Al Riddoch
12c1ab2573 2004-07-14 Al Riddoch <alriddoch@zepler.org>
* common/BaseEntity.h, common/BaseEntity.cpp, common/refno.h,
	  server/Account.cpp, rulesets/Creator.cpp, server/WorldRouter.cpp:
	  Move refno functions which don't need to be methods into
	  their own header.

	* common/BaseWorld.h, common/BaseWorld.cpp, rulesets/Character.cpp,
	  rulesets/Creator.cpp, server/WorldRouter.cpp, server/WorldRouter.h:
	  Make BaseWorld no longer inherit from anything, as we were not
	  using this inheritance at all.
2004-07-14 10:16:54 +00:00
Al Riddoch
c981aa1c70 2004-06-28 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Ensure that Use and Wield ops are
	  subscribed from mind.
2004-06-28 20:11:23 +00:00
Al Riddoch
9add1344a5 2004-06-28 Al Riddoch <alriddoch@zepler.org>
* common/BaseEntity.cpp, common/BaseEntity.h, common/custom.cpp,
	  common/inheritance.cpp, common/op_switch.h, common/operations.cpp,
	  common/operations.h, common/types.h, rulesets/Character.cpp,
	  rulesets/Character.h, tests/EntityExerciser.h, tests/allOperations.h:
	  Add, install, implement and test new op types for Use and Wield.
2004-06-28 01:19:45 +00:00
Al Riddoch
6f2f0cd630 2004-06-24 Al Riddoch <alriddoch@zepler.org>
* rulesets/Creator.cpp: Allow a creator to move around the world.

	* rulesets/Character.cpp: Get rid of some extraneous debugging output.
2004-06-24 12:23:14 +00:00
Al Riddoch
9ab67e5117 2004-04-21 Al Riddoch <alriddoch@zepler.org>
* rulesets/MemMap.cpp: Ensure that updates can modify LOC of entities
	  in characters memory, or it often doesn't get set at all. Simplify
	  the process of adding a new id.

	* rulesets/Character.cpp: Don't need to send out nearly as many looks
	  to bootstrap mind code.
2004-04-21 22:02:25 +00:00
Al Riddoch
9a7a07007f 2004-01-22 Al Riddoch <alriddoch@zepler.org>
* common/custom.cpp, common/inheritance.cpp, common/operations.cpp,
2004-01-22 03:03:07 +00:00
Al Riddoch
8c16f4145a 2004-01-12 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Fix logic error in direction
	  processing code.
2004-01-12 10:00:24 +00:00
Al Riddoch
c2a1321723 2004-01-09 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Fix some bugs which can occur if from
	  normalising a zero-length vector.
2004-01-09 16:32:48 +00:00
Al Riddoch
ebf22b5d59 2003-11-24 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Fix logic when charging mind touch op
	  args.
2003-11-24 21:11:50 +00:00
Al Riddoch
bbbd83f0d4 2003-10-23 Al Riddoch <alriddoch@zepler.org>
* rulesets/Movement.cpp: Add valid checks when comparing velocity.

	* rulesets/Character.cpp: Remove code which ignore pos if it is
	  the same as current.
2003-10-23 21:05:20 +00:00
Al Riddoch
22235eb370 2003-10-23 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Rename some variable in mindMoveOp()
	  to more accuratly reflect their meaning. Move direction
	  calculation code so it is now based on updated position, not
	  old position.
2003-10-23 19:39:37 +00:00
Al Riddoch
53a19dcef4 2003-10-23 Al Riddoch <alriddoch@zepler.org>
* rulesets/Movement.h, rulesets/Pedestrian.h: Update movement
	  interface to reflect the different jobs done by genMoveOperation().

	* rulesets/Movement.cpp: Fix badly named argument.

	* rulesets/Pedestrian.cpp: Shift code around a little to ensure
	  it is clear that genMoveUpdate() only produces an op if one
	  is necessary, but genMoveOperation() should always return
	  one.

	* rulesets/Character.cpp: Get rid of confusing logic now
	  That we know genMoveOperation() never returns NULL.
2003-10-23 19:18:04 +00:00
Al Riddoch
bbd55f115f 2003-10-23 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Re-work mind movement processing code,
	  eliminating some nasty corner cases, and making the whole
	  lot more readable.
2003-10-23 00:38:08 +00:00
Al Riddoch
132a177dc7 2003-10-23 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp, rulesets/Entity.cpp, rulesets/Thing.cpp:
	  Avoid explicit constructor + copy constructor when assigning
	  vector classes from Atlas.
2003-10-22 23:44:48 +00:00
Al Riddoch
0fbfc771ad 2003-08-07 Al Riddoch <alriddoch@zepler.org>
* server/Lobby.cpp: Add some debugging messages.

	* server/CommServer.cpp: Tweak select loop so that closed connections
	  are cleaned up as soon as they are detected.

	* rulesets/World.cpp: Make demo terrain a bit more mountainous.

	* Convert entire codebase over to using Atlas-C++ 0.4.90, as
	  start of transition to 0.6 API.
2003-08-07 23:03:26 +00:00
Al Riddoch
85b5a40c2c 2003-07-19 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Debugging output to help debug
	  orientation.
2003-07-19 11:52:20 +00:00
Al Riddoch
aaad11108c 2003-07-18 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp, rulesets/Pedestrian.cpp:
	  Include atlasconv.h so that the conversions work.
2003-07-18 10:36:09 +00:00
Al Riddoch
0468869ee1 2003-07-18 Al Riddoch <alriddoch@zepler.org>
* Migrate maths code to wfmath. Compiles and links, but lots has been
	  commented out.
2003-07-18 00:43:53 +00:00