* Update AMFDeserializeTests.cpp
Redo Amf3 functionality
Overhaul the whole thing due to it being outdated and clunky to use
Sometimes you want to keep the value
Update AMFDeserializeTests.cpp
* Fix enum and constructors
Correct enum to a class and simplify names.
Add a proper default constructor
* Update MasterServer.cpp
* Fix bugs and add more tests
* Refactor: AMF with templates in mind
- Remove hard coded bodge
- Use templates and generics to allow for much looser typing and strengthened implementation
- Move code into header only implementation for portability
Refactor: Convert AMF implementation to templates
- Rip out previous implementation
- Remove all extraneous terminology
- Add proper overloads for all types of inserts
- Fix up tests and codebase
* Fix compiler errors
* Check for null first
* Add specialization for const char*
* Update tests for new template specialization
* Switch BitStream to use references
* Rename files
* Check enum bounds on deserialize
I did this on a phone
* Breakout rest of the enums from dcommonvars
so we don't have to deal with merge conflicts
ePlayerFlags is not a scoped enum, yet, due to it's complexity
* address feedback
* make player flag types consistent
* fix typo
* Implement maelstrom fog for alpha FV
add OnOffCollisionPhantom call to cppscripts
Add physics shape for gas blocking volume
* Add Ninja Sensie Script for alpha FV
and migration
* Fix private var casing
* And ninja wild scripts
they keep making me add more things
* address feedback
---------
Co-authored-by: Gie "Max" Vanommeslaeghe <gievanom@hotmail.com>
Clean up macros
more tomorrow
Cleanup and optimize CDActivities table
Remove unused include
Further work on CDActivityRewards
Update MasterServer.cpp
Further animations work
Activities still needs work for a better PK.
fix type
All of these replacements worked
Create internal interface for animations
Allows for user to just call GetAnimationTIme or PlayAnimation rather than passing in arbitrary true false statements
* Implement some trigger event calls
and command handlers
* add zone summary dimissed GM
* break and remove log
* some cleanup in Gather Targets
and blocking out
* fix default value of unlock for play cinematic
* Log on errors
add enum for physics effect type
simplify nipoint3 logic
check arg count
add enum for End behavior
* tryparse for nipoint3
* totally didn't forget to include it
* bleh c++ is blah
* ???
* address feedback
* Fix for #1028
* CDClient cleanup and optimization
- Use static function to get table name
- Remove unused GetName function
- Replace above function with a static GetTableName function
- Remove verbose comments
- Remove verbose initializers
- Remove need to specify table name when getting a table by name
- Remove unused typedef for mac and linux
* Re-add unused table
Convert tables to singletons
- Convert all CDClient tables to singletons
- Move Singleton.h to dCommon
- Reduce header clutter in CDClientManager
* breakout the component types into a scoped enum
tested that things are the same as they were before
* fix missed rename
* fix brick-by-brick name to be crafting
because that's what it is
* Make wrapper for casting skills
this is to reduce magic numbers in the code base
Only updated one use of this to demo that this works.
Will be do more in a sepearate PR.
Also, inadvertantly fix damage stacking and self-damage in the teslapack
* add skill<->behavior caching
* explicit by reference
* address emo's feedback
* moving branch
* Add deleteinven slash command
* Change name of BRICKS_IN_BBB
* Use string_view instead of strcmp
* Clean up include tree
* Remove unneeded headers from PCH files
Removes unneeded headers from pre-compiled headers. This increases compile time, however reduces development time for most files.
* Update Entity.h
* Update EntityManager.h
* Update GameMessages.cpp
* There it compiles now
Co-authored-by: Aaron Kimbrell <aronwk.aaron@gmail.com>
- Give entities that have a script component ID of zero a script component still
- Progress scripted entity missions within the for loop as we do for script calls
Tested that Boogie Down is (finally) completable.
Tested that Mission 737 is still completable
Checked that missions progressed inside OnEmoteReceived scripts to not double trigger progression
* General AMF cleanup
Proper memory management as well as style cleanup
* General optimizations
Fix AMFArray so values are properly deleted when you leave the scope it was created in.
Add bounds check for deletion so you don't double delete.
Remove all AMFdeletions that are contained in an array since the array now manages its own memory and deletes it when it is no longer needed.
* Better tests and fix de-serialize
Fix de-serialize to be correct and implement a test to check this
* Update AMFDeserializeTests.cpp
* Update AMFFormat.cpp
* Update CMake configuration for easier maintenance
* Incorrect casing fix
* Move package requirement
* Update CTest linking
* Add logs to the CMake
* Add linking for common libraries
Added linking for common libraries in tests subdirectory.
* Move test subdirectory higher up for some reason
* Whitespace a log removal
Missed new line
* Add dCommon to dChatFilter
* Update library output dir
* Correct libBcrypt
* Further refactor CMake behaviour
* Repair bad comments and update library defines
* Revert to old include directory method
* Implement platform defines
* Add missing include
Mac needs a specific include for defining platform. Does not compile without this.
Co-authored-by: EmosewaMC <39972741+EmosewaMC@users.noreply.github.com>
* Implement Precompiled Headers
* First volume of optimizations
* Scripts A-B
Gonna be doing this in alphabetical order now.
* C Scripts and remove unneeded includes from base cppscripts header
Remove the MissionComponent and Loot includes from all base scripts and place their needed includes in the respective scripts.
* D scripts
* F scripts
* F scripts 2
Finish up removing extraneous includes from scripts that start with the letter F
* G scripts
Removing extraneous includes from scripts that start with the letter G
* I scripts
Removing extraneous includes from scripts that start with the letter I
* M-Z scripts
Removing extraneous includes from scripts that start with the letter M-Z
* Revert "Implement Precompiled Headers"
This reverts commit d79d8d4991.
* Revert "Revert "Implement Precompiled Headers""
This reverts commit 0597faf308.
* Add back in PCH
Add back in PCH
* Fix CMake
Whitespace
Remove duplicate file glob
Remove newline
* breakout possessor from char comp
Use the correct component for possessor
cleanup scirps that were using possessor improperly
beginnings of mounts
* fix comments
added bounds check
Add the FireFirstSkillonStartup script to allow for scripts that use this to function.
Add comments
Fix QB Stunner scripts
Use SetVar for variable
Remember that variables for scripts need to be stored in the entity since a script can be used across multiple entities.
Remove unused variable
Specify Unsigned Int
Start skill asap, not next tick
The shooting Gallery now properly ends when a player leaves the instance
Frakjaw player update
Update the Frakjaw battle instance script to remove players when they leave the instance
Simplify comparison
Simplify comparison for entity pointer to be implicit
Address an issue on Brick Mesa where Battle of Nimbus Station was dropping activity loot. Tested completing Battle of Nimbus Station and ending early and was not given loot as is expected.
For Windows, the definition for a long is 32 bits, not 64 bits like on other operating systems. This caused an issue on Windows only where a number larger than 32 bits was attempted to be converted to a long, the WorldServer would crash. This commit replaces all instances of `stol` with `stoull` to further define a long and reduce ambiguity of number length.
Added the GM animation and stun for the Nexus Tower Paradox Panels for mission 1281. Tested on local instance and animation played correctly when having the mission and did not play at all before or after completing the mission