forked from LeenkxTeam/LNXSDK
		
	
		
			
	
	
		
			31 lines
		
	
	
		
			989 B
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			31 lines
		
	
	
		
			989 B
		
	
	
	
		
			Python
		
	
	
	
	
	
|  | import bpy | ||
|  | 
 | ||
|  | import lnx.utils | ||
|  | from lnx.logicnode.lnx_nodes import * | ||
|  | 
 | ||
|  | 
 | ||
|  | class MaterialNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): | ||
|  |     """Stores the given material as a variable.""" | ||
|  |     bl_idname = 'LNMaterialNode' | ||
|  |     bl_label = 'Material' | ||
|  |     lnx_version = 1 | ||
|  | 
 | ||
|  |     @property | ||
|  |     def property0_get(self): | ||
|  |         if self.property0 == None: | ||
|  |             return '' | ||
|  |         if self.property0.name not in bpy.data.materials: | ||
|  |             return self.property0.name | ||
|  |         return lnx.utils.asset_name(bpy.data.materials[self.property0.name]) | ||
|  | 
 | ||
|  |     property0: HaxePointerProperty('property0', name='', type=bpy.types.Material) | ||
|  | 
 | ||
|  |     def lnx_init(self, context): | ||
|  |         self.add_output('LnxDynamicSocket', 'Material', is_var=True) | ||
|  | 
 | ||
|  |     def draw_content(self, context, layout): | ||
|  |         layout.prop_search(self, 'property0', bpy.data, 'materials', icon='NONE', text='') | ||
|  | 
 | ||
|  |     def synchronize_from_master(self, master_node: LnxLogicVariableNodeMixin): | ||
|  |         self.property0 = master_node.property0 |