branchwiseguys/main/Character References Cleanupcancel
30 Commits over 31 Days - 0.04cph!
Using IBuildingUnitUser in building ownership. Removing character references. IBuildingUnitUser is now an interface on the owner PersistentPerson rather than the character since it's the person, and not their current character, that really owns a building.
Major refactoring effort to remove Character references outside of Character. Cheated a bit and created an ICharacter interface to use when no other option presents itself, which hopefully can end up much more minimal than Character itself.
IVehicleUser no longer needs a character reference
Removed Character ref from FootstepsControler
Removed character ref from CharacterMotorHitReceiver
Moving away from having Character implement all these interfaces. Instead, have its components implement the interfaces, and expose them if necessary. Starting with IHealth.
Spectator and PersistentPerson character refs simplified. Spectator now implements IPlayableCharacter
Making spectators a character type was a mess. Too many places where something wants a character, but only if it's a real physical character and NOT a spectator. Separated them but gave them a common base interface as well.
Testing and fixing some bugs
More conversion to remove character refs
Removin' more character refs
Working on glorious ItemContainer simplifying revolution. A few compiler errors remaining here
Removed ICharacterInventory entirely. Can now simply use an IContainer
General stuff. Fix trade tables and item transfer being broken
Fixed vehicle wreckage bugs
Player ragdoll conversion
Fixed player ragdoll "MakeStatic", which hadn't actually been firing
Removed character ref from welfare.
Tried to remove the Character ref from Criminal but it's just not going to work easily. Here's some more minor stuff instead.