* Database.hpp is still the only external include file (moved to db/)
* The header is still uppercase to match its namespace
* db/internal.hpp is the shared header for the DB source files
* Added -Isrc/ compile flag for src-relative include paths
* Hoisted CHDR above CSRC in Makefile (it was bothering me)
* make clean now removes all objects in the subdirectories as well
This is terrible. It was a mistake to do this before cleaning up the
actual code. It might be better not to use this commit and to do this
refactor in a different order or something.
I've kept all the functions in their original namespaces for now, since
putting them all into the same one will cause collissions, and this is
all getting rewritten soon anyway.
* Extracted all commands into CustomCommands.cpp
* Moved all chat-related packet handlers into ChatManger.cpp
* Cleaned up redundant includes
* Unified handler naming scheme
* Made all command handlers in CustomCommands.cpp static
* Fixed Nano stamina not being halved on respawn
* Reverted the default argument to terminate() change because MSVC is
undable to disambiguate the function pointer passed to sigaction()
* Fatal errors during init (like in TableData) can just call exit(1)
directly anyway (missing "OpenFusion: terminated." be damned)
* Switched to a slightly more portable syntax for getting the version
in the Makefile
* We shouldn't join the shard thread in the signal handler because the
thread the signal handler ends up running in is undefined behaviour and
we don't strictly need to join it anyway
Many of these issues were discovered on OpenBSD.
* Initial Group Implementation
* Request/refuse/join and leave groups.
* Chat into groups.
* Get status updates on every group member each tick.
* Owner leaving the group destroys the entire group.
* Added more nano powers
* Revive for both variants work.
* Many nano powers now have a group variant working.
* Enemy checks for aggro before retreating.
* Enemies keep aggro on dead players with revive nanos out.
* Further Nano powers + Bugfixes
* Infection damage now relies on bitcondition flags.
* Antidote power now works.
* Improved how groups handle leaving players.
* Fixed mob aggro range.
* Group Healing is now functional.
* Possibly fixed the player being unselectable bug.
* Fixed indentations.
* Dismiss nano when starting a MSS ride
* Sneak, Invisibility and Bugfixes
* Sneak and invisibility affect mob aggro.
* Possibly bugfixed equips not showing to other players.
* Aggro checking is less likely to cause nullptr related crashes.
* Group PR cleanup.
* Made sure to label all hacky workarounds
* Implemented the Antidote nano power the right way
* Cleaned up the way various little things are written
Didn't have the opportunity to actually test groups.
Co-authored-by: CakeLancelot <CakeLancelot@users.noreply.github.com>
Co-authored-by: CPunch <sethtstubbs@gmail.com>
Co-authored-by: dongresource <dongresource@protonmail.com>
This replaces the unnecessary deallocations on program termination.
Passing in the suppression list environment variable via setenv()
doesn't seem to work, so I've added a comment in the Makefile to explain
invocation.
* Deleted empty Player.cpp
* Moved the helper functions from the obsolete CNStructs.cpp into
main.cpp and deleted it
* Renamed CombatManager to MobManager, as that will likely become it's
main focus soon
This is implemented in such a way that a change in one of our headers
won't cause recompilation of large C dependancies. It's a bit hacky, but
it works.
* Merge kamilprzyb and main repo's code
* Update Makefile by FunnHornhoover
* Update Makefile by FinnHornhoover
* Add flag to Makefile by FinnHornhoover
* Remove extra line from makefile
* Remove lbcrypt from Makefile
* Fix flag to Makefile by FinnHornhoover
* Reimplement potential fix for tutorial blackscreen by Dongresources
* Update CMakeLists.txt
* Update CMakeLists.txt
* Reinsert Jade's changes
* Cosmetic Changes to Databases .h & .cpp
* Remove CMakeSettings.json
* Update Makefile by Finn Hornhoover
* More cosmetic changes to Databases.cpp
* More cosmetic changes to Databases.cpp
* Remove unnecessary line (CMakeSettings.json)
* Fix CNLoginServer.cpp
* More cosmetic Changes to Database.hpp, edit Database.cpp to use JSON library onstead of json11 library, and delete json11 library files
* Delete json11 library files
* Delete JSON library to reupload
* Reupload JSON library from main repo
* Reupload JSON library from main repo
* Fix syntax error
* Fix Makefile
* Remove commented line of code to be like master
Co-authored-by: CPunch <sethtstubbs@gmail.com>
* Cleaned up protocol selection.
* cmake now works even if protocol option is omitted
* make now supports protocol selection
* removed PACKET_VERSION/CNPROTO_VERSION* redundancy
* ubuntu appveyor script has yet to be written
* cleaned up some trailing spaces
* Add some test items.
Ironically, this change is untested.
* [bugfix] Transmit MOTD when entering the game, not when loading screen fades.
This fixes unnecessary retransmission when /warping.
* Item Manager (Initial Implementation)
* Item Manager (Second Phase)
* Item Manager (Phase Three)
* Not Working Code
* Inventory Implementation (Complete?)
* Items Implementation
-Fixed Indentations
-Final touches to make it all work
* Update Makefile
* Added small comments
-- needs to be fixed