How would I turn a fetched voicetype into a string?
Something like this:
string VoiceName = (TheActorRef.getbaseobject()).GetVoiceType()
How would I turn a fetched voicetype into a string?
Something like this:
string VoiceName = (TheActorRef.getbaseobject()).GetVoiceType()
You won't be able to get it through a script, since the game doesn't actually load Editor IDs at runtime, and voice types don't have an actual "name" besides their Editor ID.
If this is important to you, though, you could include your own array of strings that correspond to each voice type in your script, and then lookup your own custom string from that array.
Mind if I ask why you need the voicetype as a string? (Curious)
Like so many other base objects forms in skyrim "ghost" actors sometimes do not have a proper keyword attached to them to identify them. And custom made ghost actors often do not.
So I have designed a system (checking shader effects and the actor name and and certain spells) to detect when an actor is a ghost. My system works even with ghost from other mods "most of the time". In three years of using my ghost detection system I have only found 2 mods that it did not work.
Problem is that those custom made "ghosts" still sidestepped my system because the modded actor is using all their own customer resources AND their name does not include the word "ghost".
Today I realized that I had not yet included the voice type as part of my detection. So I was trying to get the voice type to a string to do a word check of the name.
I can still do this with a form list but it means it will only work for any custom ghost that still uses the vanilla voicetype.