This new method rolls three otherwise similar methods together. There is
still a conditional which handles room movements separately, but it's much
smoother, and PumpPacketProximity is utilized much more.
I've also added a stub for graphical attack data via
HandleCharacterAttack()
RoomData now has monsterMgr and waypointMgr members, so that it can
compare it's characters to the monster & waypoints, etc.
RoomManager has been updated. It now has a database reference, which is
passed to the monsterMgr of new rooms. The room API also has functions
which expose these managers to lua.
I'm planning on giving each room it's own waypoint manager, so it can
compare it's waypoints against the characters in that room alone. If it
turns out to be a good pattern, I'll do thae same for monsters.
Conflicts:
server/server_logic.cpp
Finally merging the changes to develop. This is only the ConfigUtility
skipping missing files, and something with the Timer class, that I'll need
to test the collisions.
IT should be noted that ClientManager::CheckConnections() no longer
removes a client; instead, it returns a client index that needs to be
removed via another means. This allows ServerApplication to use the 'full
unload' method.
Both sides of this message uses QUERY_CHARACTER_EXISTS because I'm just
trying to push forward, without worrying about mistakes I might be making.
I just want to merge this back into the main branch so I can say that I've
actually done something over the last few months.
I've also removed a large amount of commented and uncommented code from
in_world.cpp, simply because so much code was dummied out. I can readd
this code as I reimeplement various features.
* Fleshed out the ClientManager internals
* Folded some ServerApplication methods into ClientManager
* Removed Manager references from ServerApplication
* Corrected server_methods.cpp (compiles)
The calls to ConfigUtility::Load() also received some tweaks, to use '/'
instead of '\' for unix compatability. Also removed -llua from graphics
makefile.
You can set the file to read as the config file via the command line, like
this, assuming the program supports it:
prog -config=file.cfg
You can also override indevidual key-value pairs in the config system
using this syntax:
prog -Ckey=value
Both commands can be used together, and you can override multiple
key-value pairs at once. To use this feature of the ConfigUtility, it must
receive argc and argv as parameters to the Load() method.