summaryrefslogtreecommitdiffstats
path: root/src/game-server
Commit message (Collapse)AuthorAgeFilesLines
...
* | .find() -> .value due to recent API changes.Yohann Ferreira2011-10-221-1/+1
| |
* | Merge branch 'master' of github.com:mana/manaservYohann Ferreira2011-10-224-5/+5
|\|
| * Return a const & from NameMap to avoid potential deep copiesThorbjørn Lindeijer2011-10-204-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | When I introduced NameMap it was only used with pointers, but now it is also used with std::string so it probably makes sense to keep a default- constructed value around so that a reference can be returned rather than a copy. NameMap::find was renamed to NameMap::value to make it more clear that it doesn't return an iterator, like std::map::find. Reviewed-by: Yohann Ferreira Reviewed-by: Ben Longbons
* | Merge branch 'master' of github.com:mana/manaservYohann Ferreira2011-10-1911-349/+317
|\| | | | | | | | | Conflicts: src/game-server/accountconnection.cpp
| * Have one place where the Logger is initializedThorbjørn Lindeijer2011-10-191-18/+1
| | | | | | | | | | | | | | log_accountToStandardOutput and log_gameToStandardOutput have been merged together as log_toStandardOutput. Reviewed-by: Yohann Ferreira
| * Took interpreting the objects out of the map readerThorbjørn Lindeijer2011-10-198-216/+229
| | | | | | | | | | | | | | The map reader is now only concerned with parsing the XML, whereas the MapComposite turns some of the objects into Warps, Spawns and NPCs. Reviewed-by: Yohann Ferreira
| * Removed inappropriate assignment to mOld in Being::findPathThorbjørn Lindeijer2011-10-191-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | Being::findPath doesn't change the position of a being, and so should not be syncing mOld to the current position. When invoked on the wrong moment, this could cause MapComposite::update to fail to realize that a being has moved into another zone. Also removed some other usages of mOld that were not necessary, to make its purpose clearer and make a potential cleanup easier. Reviewed-by: Yohann Ferreira
| * Added script bindings for reading map objectsErik Schilling2011-10-153-154/+124
| | | | | | | | | | | | | | | | | | | | | | map_get_objects([string filter]): returns all object of the current map optionally filtered by type. map_get_object_property(handle object, string key): returns the value of the property of the object. map_get_object_bounds(handle object): returns x, y, width, height of an object. map_get_object_name(handle object): returns name of an object. map_get_object_type(handle object): returns type of an object. Mantis-issue: 397 Reviewed-by: Thorbjørn Lindeijer
* | Started to fix the autoattack system.Yohann Ferreira2011-09-284-46/+36
| | | | | | | | | | | | | | | | I simply made the default autoattack look for the default skill and add exp to it when killing monsters. Now the player can earn xp again even if it's not well handled between two logins.
* | Added a default skill id getter in the skill manager.Yohann Ferreira2011-09-281-0/+4
| | | | | | | | | | | | I also added a link to the skillmanager object in its header file. This will later be used to get info from elsewhere than the server main loop.
* | Officially added the being gender to the protocol.Yohann Ferreira2011-09-282-5/+17
| |
* | Merge github.com:mana/manaservYohann Ferreira2011-09-284-14/+16
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/game-server/inventory.cpp src/game-server/inventory.h src/game-server/item.h src/game-server/main-game.cpp src/game-server/skillmanager.cpp src/utils/point.h
| * Clarified the role of initialize() and reload() functions in the monsterYohann Ferreira2011-09-282-6/+8
| | | | | | | | | | | | | | | | | | and item managers. ack-by: o11c. note: The managers still need to auto deinit when already loaded. This will be done in another trivial commit.
| * Fixed mem leak on the item and monster manager unloading processYohann Ferreira2011-09-283-8/+16
| | | | | | | | | | | | | | Reviewed-by: o11c. Note: the initialize/reload() api problem will be fixed in another commit.
| * Added a bit more precision on the conditions used in the ↵Yohann Ferreira2011-09-282-2/+6
| | | | | | | | TriggerArea::update() function.
| * Rewrote the skill manager the same way as the item manager.Yohann Ferreira2011-09-282-128/+149
| | | | | | | | | | This will permit better handling of both skills names and id. This is needed to start reworking on the auto-attack system.
| * Turned the skill manager into a class.Yohann Ferreira2011-09-283-7/+24
| | | | | | | | Ack-by: o11c.
| * Fixed the trigger area declared within map files.Yohann Ferreira2011-09-281-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | The bug was pretty generic, as the contains() method of the Rectangle class wasn't checking against left and top sides according to the client view point. I also documented the call site. Resolves: Mana-Mantis #317. Reviewed-by: o11c.
| * Small random code format cleanups, and documentation fixes.Yohann Ferreira2011-09-284-78/+49
| | | | | | | | | | | | This doesn't change anything yet. Reviewed-by: o11c.
| * Added chatcommand to get position of a character.Erik Schilling2011-09-151-0/+33
| | | | | | | | | | | | | | | | Add chatcommand @getpos <character> which return the mapid and location of the character. Part of: Mana-Mantis: #385. Reviewed-by: Bertram.
| * Avoid crashing the game server when the last argument is quoted.Yohann Ferreira2011-09-131-1/+9
| | | | | | | | | | | | Resolves: Mana-Mantis #386 Reviewed-by: o11c.
* | Add persistent items support based on seeseekey's work.Yohann Ferreira2011-09-093-9/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | Also made some random changes where useful, including: - Code formatting fixes, - Design fix about the fact that only the game config option should be checked. - Fixed the size of the values sent and receive to follow the rest of the development. - Fixed variables names to make them show what they are, and not why they are used. Resolves: Mana-Mantis #142.
* | Merge github.com:mana/manaservYohann Ferreira2011-09-081-1/+1
|\| | | | | | | | | | | | | Conflicts: src/account-server/storage.cpp src/game-server/mapreader.cpp src/sql/mysql/createTables.sql
| * Added possibility for using monster name in SPAWN map objects.Erik Schilling2011-09-041-14/+41
| | | | | | | | Reviewed-by: Bertram.
| * Prevented char from picking up items when inventory is full.Erik Schilling2011-09-021-9/+14
| | | | | | | | | | | | Resolves: Mana-Mantis: #379. Reviewed-by: Bertram.
* | Added possibility for using monster name in SPAWN map objects.Erik Schilling2011-09-051-14/+41
| |
* | Added chatcommand to get position of a character.Erik Schilling2011-09-011-0/+33
| | | | | | | | | | Add chatcommand @getpos <character> which return the mapid and location of the character. Part of: Mana-Mantis: #385.
* | Prevented char from picking up items when inventory is full.Erik Schilling2011-09-011-9/+14
| | | | | | | | Resolves: Mana-Mantis: #379.
* | As requested, changed the trigger 'existence' to 'in-inventory'.Yohann Ferreira2011-08-301-2/+2
| |
* | Avoid crashing the game server when the last argument is quoted.Yohann Ferreira2011-08-301-1/+9
| | | | | | | | Resolves: Mana-Mantis #386
* | Fixed mem leak on the item and monster manager unloading processYohann Ferreira2011-08-263-3/+11
| |
* | Rewrote the skill manager the same way as the item manager.Yohann Ferreira2011-08-263-131/+169
| | | | | | | | | | | | This will permit better handling of both skills names and id. This is needed to start reworking on the auto-attack system.
* | Added a bit more precision on the conditions used in the ↵Yohann Ferreira2011-08-262-2/+6
| | | | | | | | TriggerArea::update() function.
* | Fixed the trigger area declared within map files.Yohann Ferreira2011-08-261-1/+5
| | | | | | | | | | | | | | | | The bug was pretty generic, as the contains() method of the Rectangle class wasn't checking against left and top sides according to the client view point. Resolves: Mana-Mantis #317.
* | Changed the sprite layer protocol to supportYohann Ferreira2011-08-194-57/+64
| | | | | | | | an arbitrary number of layers. (up to 255).
* | Used the client base to make a final bugfix on the server code.Yohann Ferreira2011-08-194-132/+147
| | | | | | | | | | | | | | | | | | Made the server handle only one slot type requirement since it's irrelevant to have more anyway. Plus, it simplifies the code for both equipping/unequipping. I also added a dagger to show how equipping/unequipping is working.
* | Change the unequip function to make use of the item instance id.Yohann Ferreira2011-08-182-16/+14
| | | | | | | | | | | | | | | | It will make the client capable to tell which item is to be unequipped when there are several item equipped within a slot type, for instance. The client has now yet to be upgraded to follow the new protocol.
* | Fixed a crash when dealing with unknown equipped items.Yohann Ferreira2011-08-181-1/+1
| |
* | Basically redid equip and unequip functions().Yohann Ferreira2011-08-112-154/+262
| | | | | | | | | | | | | | | | | | | | | | | | | | | | I made the system handle the fact that equipment item are completely unlinked to the inventory items. Equip items now have a unique itemInstance number permitting to equip the same item type multiple time when the slot capacity is wide enough to do so. I also prepared the functions to welcome in the near tests against scripted equipment. The equip process is known to be working server-side but the unequip process has yet to be reviewed, even if implemented.
* | Changed ItemEquipInfo to only be a pair of unsigned.Yohann Ferreira2011-08-103-14/+12
| | | | | | | | | | | | | | | | | | | | | | | | Previously it was a list of pair ofunsigned int, used to get the equipment slot requirements. It didn't make sense as the ItemEquipsInfo was already a list of it. So you had to manage with a list of list and that ended up being irrelevant to the need. I had to disable the equip function to permit compilation. This will be fixed in my next commit.
* | Fixed getting slot id per name.Yohann Ferreira2011-08-102-6/+20
| |
* | Change the changeEquipment() function nameYohann Ferreira2011-08-042-7/+7
| | | | | | | | to something more meaningful.
* | Reworked the way equip slot info are loaded in a more logical way.Yohann Ferreira2011-07-274-70/+83
| |
* | Reviewed the removeFromSlot() function, fixing the unequip triggerYohann Ferreira2011-07-271-5/+16
| |
* | Fixed and completed the move() function.Yohann Ferreira2011-07-272-22/+70
| | | | | | | | | | Moving and splitting items in the inventory window should be much more responsive now.
* | Reviewed the Inventory::remove() function.Yohann Ferreira2011-07-272-9/+17
| | | | | | | | | | The unecessary equipment check was already removed, but the now useless force parameter is now also removed.
* | Reviewed the Inventory::insertion function.Yohann Ferreira2011-07-271-5/+16
| |
* | Finished the inventory check, by dropping itemsYohann Ferreira2011-07-271-3/+19
| | | | | | | | in oversized inventories.
* | First revision of the Inventory::initialize() code.Yohann Ferreira2011-07-271-26/+38
| | | | | | | | | | The inventory part is done. The equipment one will only handle equipment triggers for now.
* | Forgot to update the gamehandler.cpp file.Yohann Ferreira2011-07-271-8/+8
| |