branchrust_reboot/main/shieldscancel
19 Commits over 31 Days - 0.03cph!
Fixed shields not getting OnHolster callbacks
spawn.shielddummy command can now be passed true to make the dummy holster the shield
Placeholder shield idle to fix foot IK
Fixed gibs spawning parented to the player
Reworked how we handle broken state, entity is now properly destroyed when a shield is broken rather than just becoming invisible
Added debug.breakshield convar
Drop the shield when a player dies if it's equipped (like the current held entity)
World model
Compile fixes
Fixed some parts of ADS still working when a shield is equipped
Remove shield viewmodel component, set up placeholder animator states and surface logic there instead
Player model cleanup
Added a blocking state to the 3rd person animator
Added spawn.shielddummy command that spawns a bot with a shield equipped for testing
First pass on damage logic
Shields can take hits and the hits are absorbed by the items condition
Shields can have different ProtectionProperties like a BaseCombatEntity
Shields can take hits when mounted on the back and abosrb the damage like they were held
Broken shields won't appear at all
Converted the isGestureViewmodel field on viewmodel into a new viewmodel type variable, also has a shield type
Fixes bullet casings ejecting from the players camera while a shield is equipped as well as some clothing issues
Temp model
Added a new shield hands layer to the 3p animator that only masks the left arm, just has an idle for now
Hold RMB to block with the shield (only visible in first person right now)
Cannot attack while blocking
Hide the left arm of viewmodels when a shield is active (rotated off screen)
Hide the viewmodel shield while reloading weapons
Made a simple shield viewmodel, seems to just work as expected as the shield entity is getting the correct OnDeploy/OnHolster client events
Added a shields inventory loadout for testing
Can now use M92 with shields
Can no longer ADS while a shield is equipped
Fix parenting issues
Don't allow throwing melee weapons while a shield is equipped
Initial implementation work
Created placeholder item and entity
Item goes in backpack slot and will be automatically equipped when a valid held entity is equipped (enabled on salvaged sword for now)