|
70 | 70 | } |
71 | 71 |
|
72 | 72 | _attrib_key_types = { |
73 | | - "ptAttribSceneobject": plFactory.ClassIndex("plSceneObject"), |
74 | | - "ptAttribSceneobjectList": plFactory.ClassIndex("plSceneObject"), |
75 | | - "ptAttribActivator": (plFactory.ClassIndex("plLogicModifier"), |
76 | | - plFactory.ClassIndex("plPythonFileMod")), |
77 | | - "ptAttribActivatorList": (plFactory.ClassIndex("plLogicModifier"), |
78 | | - plFactory.ClassIndex("plPythonFileMod")), |
79 | | - "ptAttribNamedActivator": (plFactory.ClassIndex("plLogicModifier"), |
80 | | - plFactory.ClassIndex("plPythonFileMod")), |
81 | | - "ptAttribResponder": plFactory.ClassIndex("plResponderModifier"), |
82 | | - "ptAttribResponderList": plFactory.ClassIndex("plResponderModifier"), |
83 | | - "ptAttribNamedResponder": plFactory.ClassIndex("plResponderModifier"), |
84 | | - "ptAttribDynamicMap": plFactory.ClassIndex("plDynamicTextMap"), |
85 | | - "ptAttribGUIDialog": plFactory.ClassIndex("pfGUIDialogMod"), |
86 | | - "ptAttribExcludeRegion": plFactory.ClassIndex("plExcludeRegionModifier"), |
87 | | - "ptAttribAnimation": (plFactory.ClassIndex("plAGMasterMod"), |
88 | | - plFactory.ClassIndex("plMsgForwarder")), |
89 | | - "ptAttribBehavior": plFactory.ClassIndex("plMultistageBehMod"), |
90 | | - "ptAttribMaterial": plFactory.ClassIndex("plLayer"), |
91 | | - "ptAttribMaterialList": plFactory.ClassIndex("plLayer"), |
92 | | - "ptAttribGUIPopUpMenu": plFactory.ClassIndex("pfGUIPopUpMenu"), |
93 | | - "ptAttribGUISkin": plFactory.ClassIndex("pfGUISkin"), |
94 | | - "ptAttribWaveSet": plFactory.ClassIndex("plWaveSet7"), |
95 | | - "ptAttribSwimCurrent": (plFactory.ClassIndex("plSwimRegionInterface"), |
96 | | - plFactory.ClassIndex("plSwimCircularCurrentRegion"), |
97 | | - plFactory.ClassIndex("plSwimStraightCurrentRegion")), |
98 | | - "ptAttribClusterList": plFactory.ClassIndex("plClusterGroup"), |
99 | | - "ptAttribMaterialAnimation": plFactory.ClassIndex("plLayerAnimation"), |
100 | | - "ptAttribGrassShader": plFactory.ClassIndex("plGrassShaderMod"), |
| 73 | + "ptAttribSceneobject": { plFactory.kSceneObject }, |
| 74 | + "ptAttribSceneobjectList": { plFactory.kSceneObject }, |
| 75 | + "ptAttribActivator": { |
| 76 | + plFactory.kLogicModifier, |
| 77 | + plFactory.kPythonFileMod |
| 78 | + }, |
| 79 | + "ptAttribActivatorList": { |
| 80 | + plFactory.kLogicModifier, |
| 81 | + plFactory.kPythonFileMod |
| 82 | + }, |
| 83 | + "ptAttribNamedActivator": { |
| 84 | + plFactory.kLogicModifier, |
| 85 | + plFactory.kPythonFileMod |
| 86 | + }, |
| 87 | + "ptAttribResponder": { plFactory.kResponderModifier }, |
| 88 | + "ptAttribResponderList": { plFactory.kResponderModifier }, |
| 89 | + "ptAttribNamedResponder": { plFactory.kResponderModifier }, |
| 90 | + "ptAttribDynamicMap": { plFactory.kDynamicTextMap }, |
| 91 | + "ptAttribGUIDialog": { plFactory.kGUIDialogMod }, |
| 92 | + "ptAttribExcludeRegion": { plFactory.kExcludeRegionModifier }, |
| 93 | + "ptAttribAnimation": { |
| 94 | + plFactory.kAGMasterMod, |
| 95 | + plFactory.kMsgForwarder |
| 96 | + }, |
| 97 | + "ptAttribBehavior": { plFactory.kMultistageBehMod }, |
| 98 | + "ptAttribMaterial": { plFactory.kLayer }, |
| 99 | + "ptAttribMaterialList": { plFactory.kLayer }, |
| 100 | + "ptAttribGUIPopUpMenu": { plFactory.kGUIPopUpMenu }, |
| 101 | + "ptAttribGUISkin": { plFactory.kGUISkin }, |
| 102 | + "ptAttribWaveSet": { plFactory.kWaveSet7 }, |
| 103 | + "ptAttribSwimCurrent": { |
| 104 | + plFactory.kSwimRegionInterface, |
| 105 | + plFactory.kSwimCircularCurrentRegion, |
| 106 | + plFactory.kSwimStraightCurrentRegion, |
| 107 | + }, |
| 108 | + "ptAttribClusterList": { plFactory.kClusterGroup }, |
| 109 | + "ptAttribMaterialAnimation": { plFactory.kLayerAnimation }, |
| 110 | + "ptAttribGrassShader": { plFactory.kGrassShaderMod }, |
101 | 111 | } |
102 | 112 |
|
103 | 113 |
|
@@ -342,11 +352,7 @@ def _export_key_attrib(self, exporter, bo, so: plSceneObject, pfm: plPythonFileM |
342 | 352 | return |
343 | 353 |
|
344 | 354 | key_type = _attrib_key_types[socket.attribute_type] |
345 | | - if isinstance(key_type, tuple): |
346 | | - good_key = key.type in key_type |
347 | | - else: |
348 | | - good_key = key.type == key_type |
349 | | - if not good_key: |
| 355 | + if not key.type in key_type: |
350 | 356 | exporter.report.warn( |
351 | 357 | f"'{self.id_data.name}' Node '{socket.links[0].from_node.name}' " |
352 | 358 | f"returned an unexpected key type '{plFactory.ClassName(key.type)}' " |
|
0 commit comments