| 
									
										
										
										
											2017-09-12 17:42:36 -03:00
										 |  |  | <?xml version="1.0" encoding="UTF-8" ?> | 
					
						
							| 
									
										
										
										
											2022-02-14 14:18:53 +01:00
										 |  |  | <class name="SceneTreeTimer" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> | 
					
						
							| 
									
										
										
										
											2017-09-12 17:42:36 -03:00
										 |  |  | 	<brief_description> | 
					
						
							| 
									
										
										
										
											2019-02-23 18:56:10 -08:00
										 |  |  | 		One-shot timer. | 
					
						
							| 
									
										
										
										
											2017-09-12 17:42:36 -03:00
										 |  |  | 	</brief_description> | 
					
						
							|  |  |  | 	<description> | 
					
						
							| 
									
										
										
										
											2019-02-23 18:56:10 -08:00
										 |  |  | 		A one-shot timer managed by the scene tree, which emits [signal timeout] on completion. See also [method SceneTree.create_timer]. | 
					
						
							| 
									
										
										
										
											2019-02-25 11:17:56 +01:00
										 |  |  | 		As opposed to [Timer], it does not require the instantiation of a node. Commonly used to create a one-shot delay timer as in the following example: | 
					
						
							| 
									
										
										
										
											2020-11-28 00:33:15 +01:00
										 |  |  | 		[codeblocks] | 
					
						
							|  |  |  | 		[gdscript] | 
					
						
							| 
									
										
										
										
											2019-02-23 18:56:10 -08:00
										 |  |  | 		func some_function(): | 
					
						
							| 
									
										
										
										
											2019-10-01 10:55:49 +02:00
										 |  |  | 		    print("Timer started.") | 
					
						
							| 
									
										
										
										
											2021-10-21 12:22:55 -04:00
										 |  |  | 		    await get_tree().create_timer(1.0).timeout | 
					
						
							| 
									
										
										
										
											2019-10-01 10:55:49 +02:00
										 |  |  | 		    print("Timer ended.") | 
					
						
							| 
									
										
										
										
											2020-11-28 00:33:15 +01:00
										 |  |  | 		[/gdscript] | 
					
						
							|  |  |  | 		[csharp] | 
					
						
							|  |  |  | 		public async void SomeFunction() | 
					
						
							|  |  |  | 		{ | 
					
						
							|  |  |  | 		    GD.Print("Timer started."); | 
					
						
							|  |  |  | 		    await ToSignal(GetTree().CreateTimer(1.0f), "timeout"); | 
					
						
							|  |  |  | 		    GD.Print("Timer ended."); | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 		[/csharp] | 
					
						
							|  |  |  | 		[/codeblocks] | 
					
						
							| 
									
										
										
										
											2022-06-10 17:54:18 +08:00
										 |  |  | 		The timer will be dereferenced after its time elapses. To preserve the timer, you can keep a reference to it. See [RefCounted]. | 
					
						
							| 
									
										
										
										
											2017-09-12 17:42:36 -03:00
										 |  |  | 	</description> | 
					
						
							|  |  |  | 	<tutorials> | 
					
						
							|  |  |  | 	</tutorials> | 
					
						
							| 
									
										
										
										
											2018-01-12 00:38:35 +02:00
										 |  |  | 	<members> | 
					
						
							|  |  |  | 		<member name="time_left" type="float" setter="set_time_left" getter="get_time_left"> | 
					
						
							| 
									
										
										
										
											2021-12-05 18:37:58 +01:00
										 |  |  | 			The time remaining (in seconds). | 
					
						
							| 
									
										
										
										
											2018-01-12 00:38:35 +02:00
										 |  |  | 		</member> | 
					
						
							|  |  |  | 	</members> | 
					
						
							| 
									
										
										
										
											2017-09-12 17:42:36 -03:00
										 |  |  | 	<signals> | 
					
						
							|  |  |  | 		<signal name="timeout"> | 
					
						
							|  |  |  | 			<description> | 
					
						
							| 
									
										
										
										
											2019-02-23 18:56:10 -08:00
										 |  |  | 				Emitted when the timer reaches 0. | 
					
						
							| 
									
										
										
										
											2017-09-12 17:42:36 -03:00
										 |  |  | 			</description> | 
					
						
							|  |  |  | 		</signal> | 
					
						
							|  |  |  | 	</signals> | 
					
						
							|  |  |  | </class> |