deer, with same basic code as pig.
* server/server.cpp: Pass on objects which are not know by the
Atlas::Objects::Decoder straight to the operation handler.
* server/Admin.*: Re-structured the way commands are handled from
admin client, so that apropriate operations are used instead of
always using Set.
* server/Admin.cpp: Added saving world state to the database.
* tools/cycmd.cpp: Updated to use the new admin command semantics.
Added save command.
* common/persistance.*: Added interface for saving world status.
* common/database.*: Added interface for deleting contents of database.
Al Riddoch (alriddoch@zepler.org)
* server/Admin.cpp: Fixed returning of info op from database load
message, and counting of objects loaded from database.
* configure.in: Added readline check for cycmd.
Al Riddoch (alriddoch@zepler.org)
the server database.
* configure.in: Added check for coal (0.2) which is used in map
loader tool.
* common/database.cc: Modified database initialisation functions
so that whether or not the database should be created can be
specified. Added separate function for decoding a database
object into an Atlas::Message::Object. Fix to the way objects
are added to the database which solves some corruption problems.
* common/database.*: Added database iterator class that can be
used to iterate over the database.
* server/Admin.cpp: Added handler for admin load command, which
loads world state from database.
* server/WorldRouter.*: Tweak to allow objects added to world
to have pre-defined id.
Al Riddoch (alriddoch@zepler.org)
when part of entity leaves box to when the whole entity leaves the
box.
* basic.vconf: Make tent use the structure base class.
* client/define_world.py: Add bounding box to tent.
* tools/cycmd.cpp: Added password entry.
* server/Admin.cpp: Added "stat" admin command, to get server
details.
* server/CommClient.h: Fixed include dependencies.
* common/persistance.cpp: Added findAccount() method for systems
without db3.
* rulesets/Thing.cpp: Added sending Apperance and Disappearance
operations to static entities when another entity moves out
of sight.
* rulesets/Character.cpp: Added check to make sure an entity does
not collide with itself.
* rulesets/Thing.cpp: Added check to make sure entity does not move
inside itself.
* rulesets/Py_Location.cpp: Modified python location.copy() method
so that only the position and velocity is copied. This should
bounding boxes getting set on things which should not have them.
* rulesets/Character.cpp: Added return statement to movement
handling, so move ops without arguments are not handled.
Al Riddoch (alriddoch@zepler.org)
sent to the admin account on the server.
* server/WorldRouter.cpp: Removed mechanism for shutting down server
after a fixed run period.
* server/Admin.*: Added reception of Set operation by admin account
` which contain commands from an admin client. Implemented shutdown
command, which sets a flag indicating server shutdown should start.
* server/server.cpp: Added output indicating that shutdown is taking
place, to make it clear that it is not a crash.
Al Riddoch (alriddoch@zepler.org)
* */*: Fixed mistake in copyright statement.
* tools/cypasswd.cpp: Fixed usage message.
* tools/cycmd.cpp: Added tools for sending administrative commands
to server.
* server/server.cpp: Send terminate instruction to metaserver on
server shutdown.
Al Riddoch (alriddoch@zepler.org)
of oplist to take advantage of vector's best performance.
* Modified OP_SWITCH macros to improve speed, and made it inlinable.
* Cleaned up python interface code to improve compile and link time.
* Moved custom operation definitions in one header file per class
to improve modularity and compile time.
* Modified boundingbox handling so it now uses size and median.
* Added collision check and inbox member function to Vector3D class.
* Added collision prediction and checking to Location and Vector3D
classes.
* Added collision prediction into MovementInfo class.
* Modified Thing::operator[] so that static attributes can be handled
and added Thing::set() which must be used to modify attributes.
* Added collision resolution so characters can no longer walk through
each other.
* Moved weight attribute to being static attribute of Thing, so it
can be much more easily handled in movement code.
Al
* Throughout entire code base:
Removed all obsolete code and commented out code relating to porting
from python. Removed interim data types bad_type and None. Added
const throughout where apropriate. Change various flags to bool
type. Removed unused members.
* Added TODO list.
Al