# Path: korman/properties/modifiers/avatar.py
# class PlasmaLadderModifier(PlasmaModifierProperties):
# class PlasmaSittingBehavior(idprops.IDPropObjectMixin, PlasmaModifierProperties, PlasmaModifierLogicWiz):
#     def export(self, exporter, bo, so):
#     def requires_actor(self):
#     def harvest_actors(self):
#     def logicwiz(self, bo, tree):
#     def _idprop_mapping(cls):
#     def key_name(self):
#     def requires_actor(self):
#     def sanity_check(self):


import bpy
from bpy.props import *
from collections import OrderedDict
from PyHSPlasma import *
from .node_core import PlasmaNodeBase, PlasmaNodeSocketBase
from ..properties.modifiers.avatar import sitting_approach_flags
from ..exporter.explosions import ExportError
                                 default="kAdvanceNone")

    notify_on = EnumProperty(name="Notify",
                             description="Which events should send notifications",
                             items=[
                                ("kNotifyEnter", "Enter",
                                "Send notification when animation first begins to play"),
                                ("kNotifyLoop", "Loop",
                                "Send notification when animation starts a loop"),
                                ("kNotifyAdvance", "Advance",
                                "Send notification when animation is advanced"),
                                ("kNotifyRegress", "Regress",
                                "Send notification when animation is regressed")
                             ],
                             default={"kNotifyEnter"},
                             options={"ENUM_FLAG"})

    input_sockets = OrderedDict([
        ("advance_to", {
            "text": "Advance to Stage",
            "type": "PlasmaAnimStageAdvanceSocketIn",
            "valid_link_nodes": "PlasmaAnimStageNode",
            "valid_link_sockets": "PlasmaAnimStageOrderSocketOut",
            "link_limit": 1,
        }),
        ("regress_to", {
            "text": "Regress to Stage",
            "type": "PlasmaAnimStageRegressSocketIn",
            "valid_link_nodes": "PlasmaAnimStageNode",
            "valid_link_sockets": "PlasmaAnimStageOrderSocketOut",

# Path: korman/properties/modifiers/avatar.py
# class PlasmaLadderModifier(PlasmaModifierProperties):
# class PlasmaSittingBehavior(idprops.IDPropObjectMixin, PlasmaModifierProperties, PlasmaModifierLogicWiz):
#     def export(self, exporter, bo, so):
#     def requires_actor(self):
#     def harvest_actors(self):
#     def logicwiz(self, bo, tree):
#     def _idprop_mapping(cls):
#     def key_name(self):
#     def requires_actor(self):
#     def sanity_check(self):


# Path: korman/nodes/node_avatar.py
import bpy
from bpy.props import *
from collections import OrderedDict
from PyHSPlasma import *
from .node_core import PlasmaNodeBase, PlasmaNodeSocketBase
from ..properties.modifiers.avatar import sitting_approach_flags
from ..exporter.explosions import ExportError

                                 default="kAdvanceNone")

    notify_on = EnumProperty(name="Notify",
                             description="Which events should send notifications",
                             items=[
                                ("kNotifyEnter", "Enter",
                                "Send notification when animation first begins to play"),
                                ("kNotifyLoop", "Loop",
                                "Send notification when animation starts a loop"),
                                ("kNotifyAdvance", "Advance",
                                "Send notification when animation is advanced"),
                                ("kNotifyRegress", "Regress",
                                "Send notification when animation is regressed")
                             ],
                             default={"kNotifyEnter"},
                             options={"ENUM_FLAG"})

    input_sockets = OrderedDict([
        ("advance_to", {
            "text": "Advance to Stage",
            "type": "PlasmaAnimStageAdvanceSocketIn",
            "valid_link_nodes": "PlasmaAnimStageNode",
            "valid_link_sockets": "PlasmaAnimStageOrderSocketOut",
            "link_limit": 1,
        }),
        ("regress_to", {
            "text": "Regress to Stage",
            "type": "PlasmaAnimStageRegressSocketIn",
            "valid_link_nodes": "PlasmaAnimStageNode",
            "valid_link_sockets": "PlasmaAnimStageOrderSocketOut",

            "link_limit": 1,