Changed verb syncing to work closer like IThingHolder #412
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
One of the changes I've proposed in #411, but without any API implementation.
List of changes:
VerbOwnerType
enum was removed and replaced bysupportedVerbOwnerTypes
arraytypeof(Thing)
instead oftypeof(Pawn)
for increased compatibilityIVerbOwner
sync worker entry was addedVerb
sync worker entry was modified to sync the owner asIVerbOwner
Those changes should result in greater compatibility, as new supported
IVerbOwner
types can now be added to the array and synced using their own sync workers.This should also end up simplifying
Verb
sync worker going forward, as we won't have to expand it anymore in the future - only the array of supported types.Things that I did not include, but we may want to potentially consider:
HediffComp
(specifically due toHediffComp_VerbGiver
) - in vanilla RW they don't have gizmos, but a mod could add a custom hediff comp that adds themPawn_MeleeVerbs_TerrainSource
- likely will never get gizmos, probably will be completely pointless to includePawn_NativeVerbs
- same as aboveIVerbOwner
which have a(n explicit) sync worker