Added item precondition checks for items so players who do not meet the conditions cannot use the items. tested with the faction bag tokens and they only gave the tokens when a player met all the preconditions or was a Game Master of level 6+
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
Changed the activator position parsing to have TryParse so that we dont throw an exception trying to load the position. Should the loading of the activator position fail the game will default to the position of the entity.
change delimiter value to hex
Updated the character delimiter used for rebuild_activator settings to use hex
Remove extra parsing of activator position
in Entity.cpp we were parsing the activator position but when doing so where we were, this was after we had ended up spawning the activator since that is now in the constructor of the rebuild component. The extra parsing has been removed.
Simplify dirty parent/child info
Simplify the if condition for parent child info. This info only needs to be written should it be changed (dirty) or if the packet being sent is a construction, meaning that a requesting player needs all base data and needs to know what parents/children an entity has at that time.
get rid of extra parenthesis
Left over extra parenthesis were around these conditions on accident
The build activator as a result of the previous changes was spawning at the wrong position. This commit pulls the activators position from the settings (should they exist) and sets them accordingly.
Address an issue where quickbuilds would become unbuildable. The main issue lied within serializing parent/child info too often for some reason / serializing it when the info wasnt dirty. Only serializing this info when it is actually dirty and has changed has addressed the issue and allows quickbuilds to never break.
Add the setlevel slash command. Command accepts parameters of the requested level and a player to set the level of. This also adjects the uscore of the player accordingly. The player must re-log upon using the command to see any updates to themselves or others.
Bricks have a stack size of zero in the cdclient so we need to make sure to give them a full stack size of 999 as we do for the bricks inventory with the selling inventory.
This fixes an issue where the item would get overwritten and would effectively fetch a "random" item in the inventory to move instead of the requested one.
Mover owner override to be earlier so that we dont try to get the team of an entity that doesnt have a team and may be a child entity of a player. Tested changes with a team of two players and players were correctly given credit for kills
Sanity checks on Prop and LUP launchpads to not open if no valid rocket
Add serialization for sending item configs
so that rockets show for other players
Quickbuilds jump fix
Corrected an error where the builder was erronously changed to an empty lwoobjid when a quickbuild was completed, causing the builds to no longer jump on completion (if configured to do so.) Packet captures from live show that we do not want to get rid of the builder during resetting or during completion of the build so the file has been changed to not clear the builder in those cases.
Added functions and methods to support the pickup radius. Functionality includes:
Corrected serialization for ControllablePhysicsComponent which correctly serializes the pickup radius to the client.
A method to add the pickup radius to the list of active pickup radii the component has.
A method to remove and re-calculate the largest active radii the component currently has.
Tested equipping all variations of the LootBuff behavior (passive skills, items, item skills) and all functioned as intended. Tested equipping multiple items with a loot buff and then unequipping them in different orders. Tested adding pickup radii of different values and the server correctly adjusted the pickup radius to the largest one currently equipped.
Fixed a few issues in VendorComponent.
- Corrected serialization to only happen on construction.
- Added functionality to refresh the vendor based on info from the vendor component table
- some whitespaceing inconsistencies.
- Sorted includes.
Tested the vendor in Nimbus Station and when the player re-enters the world, the vendor inventory refreshes, as opposed to previously where the world would need to reset in order to refresh the inventory.