summaryrefslogtreecommitdiffstats
path: root/src/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* [Abilities] Removed the old autoattack systemErik Schilling2013-05-081-6/+0
| | | | | As a side effect i had to remove the monster attack AI for now. I will readd this as next thing.
* [Abilities] Moved the ability code into a own componentErik Schilling2013-05-081-0/+2
| | | | This later allows monsters and characters to use this component.
* [Abilities] Renamed specials to abilitiesErik Schilling2013-05-081-2/+2
|
* Single xml solutionPrzemysław Grzywacz2013-04-291-0/+2
| | | | Mana-mantis: #506.
* Warn at failing overridesErik Schilling2013-04-271-1/+2
|
* Fixed multiple warnings and errors that blocked c++0xErik Schilling2013-04-021-0/+2
| | | | | This allows the server to compile with c++0x (and enables it). This also includes some coding style / readabillity fixes.
* Removed old commandhandler approachErik Schilling2013-04-021-1/+0
| | | | It was forgotten to remove when the new approach was added
* Moved fighting code into a componentErik Schilling2013-04-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | All damage dealing is now handeled via CombatComponent. Monsters use a derived MonsterCombatComponent since they can have a damage mutation and have a seperate script callback. The wirering with Being is still not optional since most of the stuff does not exist as components. Things done: - Seperated the fighting code from Being and only let Characters and Monsters add the Component (less overhead for npcs) - Added a getter for Attribute values to prevent searching it all the time in non Being members - Fixed the type if the damage mutation to double (no idea why it was int) I did not want to copy it over incorrectly - Removed the addAttack/removeAttack overrides in Character and made the knuckleAttack being added based on newly added signals Future TODOS: - Remove depedency on Being as soon all needed dependencies are available as components of Entity - Move the monster script callback into the general combatcomponent and make it usuable for characters too
* Changed SpawnArea and TriggerArea to components of EntityThorbjørn Lindeijer2013-03-251-4/+5
| | | | | | Well, first visible change is that everything just gets longer to read. Reviewed-by: Yohann Ferreira
* Added possibility to reserve mapsErik Schilling2013-02-241-0/+2
| | | | | | | | | | | | If you set net_gameServerName you can now reserve maps in the maps.xml. There you have to add the servername - property to the <map> tag. Then the map will only be activated by that server. Also changed the activate sequence that the account server now tells the game server what maps to activate (previously the server requested all maps and the account server said yes or no). TODO: Fix general inter server map switching.
* Modifications to allow crosscompiling with mingwErik Schilling2013-02-031-4/+4
| | | | Reviewed-by: bjorn.
* Added emote support.Yohann Ferreira2013-02-011-0/+2
|
* Replaced EventListener with signals based on libsigc++Thorbjørn Lindeijer2013-01-091-1/+4
| | | | | | | | | | | | | This replaces the rather hard to understand event dispatcher with a probably even harder to understand templated library, but fortunately we can rely on the available documentation. Hopefully it will also help with the readability of our code and with adding additional signals to other classes. Added libsigc++ to README and Travis CI configuration. Reviewed-by: Erik Schilling
* Rename AutoAttack to AttackErik Schilling2013-01-081-2/+2
|
* Introduced a Timeout class for counting down without countingThorbjørn Lindeijer2012-04-141-0/+2
| | | | | | | | The timeout remembers a reference point of time against which it can check how much time is remaining. Reviewed-by: Erik Schilling Reviewed-by: Yohann Ferreira
* Renamed Thing to EntityThorbjørn Lindeijer2012-04-041-2/+2
| | | | | | | | In preparation for using an entity/component system for the entities in the game world, this name will be more recognizable and easier to talk about. Reviewed-by: Yohann Ferreira
* Enhanced special supportErik Schilling2012-04-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Made the current charge being saved. - Added script binds: - chr_set_special_recharge_speed - chr_get_special_recharge_speed - chr_set_special_mana - chr_get_special_mana - get_special_info - Added special info lua class. Functions: - name - needed_mana - rechargeable - on_use - on_recharged - category Further the engine no longer sets charge to 0 after using of specials this allows more flexbilillity (like failing specials). Changes on the xml database: - recharge renamed to rechargeable (needed by client and server) - needed - the needed mana to trigger a special (server only) - rechargespeed - the defailt recharge speed in mana per tick (server only) - target - the type of target (either being or point) (server and client) I also made the lua engine pushing nil instead of a 0 light userdata when the pointer was 0. Database update needed. Change is tested. Mana-Mantis: #167, #156 Reviewed-by: bjorn.
* Merged all the different Lua states into oneThorbjørn Lindeijer2012-03-021-0/+2
| | | | | | | | | | | | | | | | | No more Lua state for each status effect, monster, item effect or map. All scripts are loaded into the same state. This should be more efficient overall and make it easier to implement dynamic reloading of the scripts in the future. Now, this introduces the problem of name collisions between different Lua scripts. For now this is solved by using more specific function names, like 'tick_plague' and 'tick_jump' rather than just 'tick'. The plan is however to get rid of these globals, and register these callbacks from the script, so that they can be local functions without the danger of colliding with other scripts. Reviewed-by: Erik Schilling Reviewed-by: Yohann Ferreira
* Removed unused createRandomPassword functionThorbjørn Lindeijer2012-01-291-2/+0
| | | | Reviewed-by: Erik Schilling
* Add persistent items support based on seeseekey's work.Yohann Ferreira2011-09-091-0/+1
| | | | | | | | | | | | | 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.
* Moved defines.h and manaserv_protocol.h into 'common'Thorbjørn Lindeijer2011-03-201-2/+2
| | | | Just seems a bit more organized to me.
* Add an heartbeat time flag in the statistics file.Yohann Ferreira2011-01-261-0/+1
| | | | | | | | | | | | | | | | | | This way, any kind of external service can know about the running state of each servers, even if only the account server is updating the statistics because: 1. When the account server is running, each <gameserver> tag is a running game server. Otherwise, it's not listed. 2. Whenever the account server stops running, the stat file isn't updated anymore and so the <heartbeat> tag isn't. 3. Game servers without any contact with an account server will try to reconnect to the account server and kick out every players so they aren't considered as running in that case. Reviewed-by: Crush. Resolves: Mana-mantis #270.
* Removed the superfluous point struct.Yohann Ferreira2011-01-091-1/+1
| | | | | | | | It was too close from the Position class and it leads to making the server handle one or another type through the code. Still bugged me many times while making changes. Reviewed-by: Jaxad.
* protocol.h -> manaserv_protocol.h to avoid conflicts with mysql files.Yohann Ferreira2010-12-291-1/+1
| | | | Resolves: Mana-Mantis #278.
* Standardized the current errors thrown.Yohann Ferreira2010-12-161-0/+1
| | | | Reviewed-by: Jaxad0127.
* Renamed .hpp files into .h for consistency.Yohann Ferreira2010-11-141-68/+68
| | | | | | Also added an header to the autoattack.{h,cpp} files. Big but trivial fix.
* Always check for zlib and add the necessary library flagsThorbjørn Lindeijer2010-10-261-4/+3
| | | | | | | Not only necessary on Windows, but also on Ubuntu (and probably Fedora) This seems to be due to a recent change in how things are packaged. Reviewed-by: Bernd Wachter
* Centralized stringToBool conversion.Yohann Ferreira2010-09-081-1/+0
| | | | | | | Also moved the trim() function into the utils namespace where it belongs more, and made some random code cleanups. Reviewed-by: Thorbjorn.
* Merge branch 'testing'Freeyorp2010-08-291-0/+8
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/account-server/storage.cpp src/game-server/being.cpp src/game-server/being.hpp src/game-server/character.cpp src/game-server/character.hpp src/game-server/gamehandler.cpp src/game-server/inventory.cpp src/scripting/lua.cpp src/sql/mysql/createTables.sql src/sql/sqlite/createTables.sql
| * Made the game-server compile again with CMake.Yohann Ferreira2010-07-301-0/+8
| |
* | Add included enet to CMakeBernd Wachter2010-08-151-3/+8
|/
* Fixing compatibility with cmake 2.6.0Renato Alves2010-07-231-2/+2
| | | | | | The syntax IF ((condition) OR (condition)) is not accepted by cmake prior to 2.6.4. The patch should address this without affecting newer versions.
* Changed and split up the default location for loading dataThorbjørn Lindeijer2010-05-161-3/+4
| | | | | | | | | | | | | | | | | Instead of loading data from a 'data' directory in the current working directory, the server now uses clientDataPath and serverDataPath as specified in the configuration. This removes the need to set up symbolic links in order to merge these two types of data. The default values point to example/clientdata and example/serverdata, where a minimal example world can be developed to make setting up an initial server quick and easy. The XML::Document convenience class was copied over from the client. Also, the ResourceManager is now shared between both servers, since the account client is reading items.xml. Reviewed-by: Jared Adams
* Win32 build fixes when building with cmakeBernd Wachter2010-01-301-2/+6
| | | | Add missing zlib dependency, add NOGDI flag to avoid namespace clashes.
* Add/fix win32 build rulesBernd Wachter2010-01-291-1/+22
|
* Switch inverted binary namesBernd Wachter2010-01-291-2/+2
|
* Fix build flags for optional libraries, add extra link librariesBernd Wachter2010-01-291-5/+10
|
* Use the module shipped with CMake 2.6 to detect Lua 5.1Bernd Wachter2010-01-291-5/+5
|
* Upgraded CMakeLists.txt files to deal with compile option. I have still one ↵Bertram2010-01-291-64/+94
| | | | | | | problem with Lua... There must be something wrong in the FindLua.cmake module because the FIND_PACKAGE(Lua) doesn't work and is currently commented out.
* Added WIP entries for Cmake build. This is configurable but non-working atm.Bertram2010-01-281-0/+252
I'll need a bit more time and help to get this fully working, but it's a good start :) Also corrected a typo in a makefile.am file.