Closed Limiana closed 10 months ago
Hello, thank you for your PR. I assume this is PR for DynamicBridge support. Unfortunately right now it cannot be accepted without some overhaul because using temporary profiles system to switch between profiles of a local player is incorrect.
Here is what needs to be done:
ProfileManager
needs to have SetEnabled
overload implemented which accepts profile's id and bool
depicting desired profile state. Inside of it it searches for profile while checking that ProfileType == Normal
and passes it to SetEnabled(Profile, bool, bool)
overload if found.SetProfileToCharacterByUniqueId
should be renamed to EnableProfileByUniqueId
, accept only guid and should call that method.GetRegisteredProfileList
should be renamed to GetProfileList
GetProfileList
should not return profiles with ProfileType != Normal
..Text
should be used instead of ToString()
for Profile.Name
and Profile.CharacterName
.If you want this IPC to support setting profiles to arbitrary characters please let me know and I'll think of best approach.
Sorry, yes this is for DynamicBridge. Ty so much for the feedback! We will get back to you with changes :)
If you want this IPC to support setting profiles to arbitrary characters please let me know and I'll think of best approach.
I had a feature request to add a possibility to apply random profiles to all other characters so that'd be nice
I had a feature request to add a possibility to apply random profiles to all other characters so that'd be nice
After taking quick look I see that it seems like DynamicBridge only operates on the local player, so I propose we leave this idea for some point in the future because after thinking about it I came to conclusion that proper implementation involves changing quite a bunch of stuff and there is a lot of other stuff which has bigger priority.
It will probably involve temporary profiles, but that means that temporary profiles need to accomodate quite a bunch of additional game state changes like moving between the zones and UI needs to be modified to allow user to see and control temporary profiles. Basically quite a bunch of work which needs to be thoroughly thought out in order to work properly both for Mare and other plugins.
That's totally fine, applying profiles to other players would be lower priority task for me either. I will edit this PR to match the requirements later today
All the changes are finished now, I also added extra method to disable profile by ID since revert character method is only used with temporary profiles
Thank you, here is the plan - I want to use this opportunity to establish some base infrastructure for new IPC, so I will merge this into a separate branch and do some refactoring and changes. I will probably slightly alter some methods you added, so I ask you to not rely on this IPC for now. By the time next version is released this IPC will be ready to be used.
Okay, that sounds good!
Hello! Readded IPC methods from previous version in different fashion.