You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			41 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			GDScript
		
	
		
		
			
		
	
	
			41 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			GDScript
		
	
| 
											2 years ago
										 | @tool | ||
|  | extends Resource | ||
|  | 
 | ||
|  | ## The theme used for drawing map cells. | ||
|  | @export var theme: MapTheme: | ||
|  | 	set(t): | ||
|  | 		if t == theme: | ||
|  | 			return | ||
|  | 		 | ||
|  | 		theme = t | ||
|  | 		theme_changed.emit() | ||
|  | 
 | ||
|  | ## The root directory where room scenes are located. All scenes used for MetSys editor should be within this folder or its subfolders. | ||
|  | @export_dir var map_root_folder: String = "res://" | ||
|  | @export_dir var map_setting_folder: String = "res://" | ||
|  | ## The size of a map cell within an in-game room, i.e. this is the real game size of your map cells. Usually equal to the screen size. | ||
|  | @export var in_game_cell_size := Vector2(1152, 648) | ||
|  | @export var collectible_list: Array[Dictionary] | ||
|  | ## The script that determines the custom elements available in the Custom Elements map editor mode. It should inherit [code]CustomElementManager.gd[/code], refer to that class' documentation on how to use it. | ||
|  | @export var custom_element_script: Script: | ||
|  | 	set(elements): | ||
|  | 		if elements == custom_element_script: | ||
|  | 			return | ||
|  | 		 | ||
|  | 		custom_element_script = elements | ||
|  | 		if elements: | ||
|  | 			custom_elements = elements.new() | ||
|  | 		else: | ||
|  | 			custom_elements = null | ||
|  | 		 | ||
|  | 		custom_elements_changed.emit() | ||
|  | 
 | ||
|  | var custom_elements: MetroidvaniaSystem.CustomElementManager | ||
|  | 
 | ||
|  | signal theme_changed | ||
|  | signal custom_elements_changed | ||
|  | 
 | ||
|  | func _validate_property(property: Dictionary) -> void: | ||
|  | 	if property.name == "collectible_list": | ||
|  | 		property.usage &= ~PROPERTY_USAGE_EDITOR |