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.
		
		
		
		
		
			
		
			
	
	
		
			26 lines
		
	
	
		
			685 B
		
	
	
	
		
			GDScript
		
	
		
		
			
		
	
	
			26 lines
		
	
	
		
			685 B
		
	
	
	
		
			GDScript
		
	
| 
											2 years ago
										 | ## Erases the specified key from the blackboard. | ||
|  | ## Returns [code]FAILURE[/code] if expression execution fails, otherwise [code]SUCCESS[/code]. | ||
|  | @tool | ||
|  | class_name BlackboardEraseAction extends ActionLeaf | ||
|  | 
 | ||
|  | 
 | ||
|  | ## Expression representing a blackboard key. | ||
|  | @export_placeholder(EXPRESSION_PLACEHOLDER) var key: String = "" | ||
|  | 
 | ||
|  | @onready var _key_expression: Expression = _parse_expression(key) | ||
|  | 
 | ||
|  | 
 | ||
|  | func tick(actor: Node, blackboard: Blackboard) -> int: | ||
|  | 	var key_value: Variant = _key_expression.execute([], blackboard) | ||
|  | 	 | ||
|  | 	if _key_expression.has_execute_failed(): | ||
|  | 		return FAILURE | ||
|  | 	 | ||
|  | 	blackboard.erase_value(key_value) | ||
|  | 	 | ||
|  | 	return SUCCESS | ||
|  | 
 | ||
|  | 
 | ||
|  | func _get_expression_sources() -> Array[String]: | ||
|  | 	return [key] |