皆さんは、一応チューニングからtdescへとチューニングの内容を確認したことはあると思いますが、一応、 SocialSuperInteraction を例に、script側から見る方法を教えます。
social_super_interaction.pyの中身の
class SocialSuperInteraction(SocialInteractionMixin, SocialCompatibilityMixin, SuperInteraction):
というクラスと
0x1C2B2のインスタンスのxmlを見ます
<I c="SocialSuperInteraction" i="interaction" m="interactions.social.social_super_interaction" n="scientist_MindControl_Clean" s="115378">
って書いてあります。
これを見る限り、c=""は、c="クラス"ということがわかります。
i="interaction"は、わからん
m="は、simulation.interactions.social.social_super_interaction"
を表してるので、多分classの置き場所を示しています。
n=""は、名前、s=""はインスタンスの10進数だと思います。
という感じで、個々の解説はOK
てことで本題その中の、チューニングの検索です
まず、最初の、 <V n="_icon" t="resource_key"> では、_iconがあるので、それをスクリプト内で、検索''をつけると簡単に検索できます
'allow_autonomous '
""じゃだめです
'_icon': TunableIconVariant(description='\n The icon to be displayed i...
ってやつが見つかりました。
これを見るとTunableIconVariantってやつで、descriptionってやつで説明を書いてるらしい。
cls._iconで中身を、取得をしているらしい
@classmethod
def _get_icon(cls, interaction):
return cls._icon(interaction)
@flexmethod
def get_icon_info(cls, inst, target=DEFAULT, context=DEFAULT):
inst_or_cls = inst if inst is not None else cls
resolver = inst_or_cls.get_resolver(target=target, context=context)
icon_info = inst_or_cls._get_icon(resolver)
if icon_info is not None:
return icon_info
else:
target = inst.target if inst is not None else target
if target is not DEFAULT and target is not None:
return IconInfoData(icon_resource=target.icon)
return EMPTY_ICON_INFO_DATA
まあこんな感じで、iconのscriptを調べることができました
次では、もう一つ実験としてやるつもりです