<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?action=history&amp;feed=atom&amp;title=Task_%28functions%29</id>
	<title>Task (functions) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?action=history&amp;feed=atom&amp;title=Task_%28functions%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=Task_(functions)&amp;action=history"/>
	<updated>2026-07-31T18:34:25Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=Task_(functions)&amp;diff=6360&amp;oldid=prev</id>
		<title>Imbion at 20:23, 17 January 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=Task_(functions)&amp;diff=6360&amp;oldid=prev"/>
		<updated>2026-01-17T20:23:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=Task_(functions)&amp;amp;diff=6360&amp;amp;oldid=6359&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Imbion</name></author>
	</entry>
	<entry>
		<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=Task_(functions)&amp;diff=6359&amp;oldid=prev</id>
		<title>Imbion at 20:13, 17 January 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=Task_(functions)&amp;diff=6359&amp;oldid=prev"/>
		<updated>2026-01-17T20:13:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:13, 17 January 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Hat Note|More functions: [[Script Reference]]&#039;&#039;}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Cleanup}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Cleanup}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== TASK:StartEntityTask(RogueEssence.Ground.GroundEntity,NLua.LuaFunction) ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== TASK:StartEntityTask(RogueEssence.Ground.GroundEntity,NLua.LuaFunction) ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Imbion</name></author>
	</entry>
	<entry>
		<id>https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=Task_(functions)&amp;diff=5323&amp;oldid=prev</id>
		<title>Imbion: Created page with &quot;{{Cleanup}} == TASK:StartEntityTask(RogueEssence.Ground.GroundEntity,NLua.LuaFunction) ==   Helper function to make an entity run the specified task. Will not replace a running task! Tasks are run interlocked with the script processing and game processing, and characters cannot run multiple tasks at the same time.   === Arguments ===  * &lt;code&gt;ent&lt;/code&gt;: Entity which will run the task. * &lt;code&gt;fn&lt;/code&gt;: Task coroutine.  == TASK:StopEntityTask(RogueEssence.Ground.GroundE...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.pmdo.pmdcollab.org/wiki/index.php?title=Task_(functions)&amp;diff=5323&amp;oldid=prev"/>
		<updated>2025-11-26T16:14:36Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{Cleanup}} == TASK:StartEntityTask(RogueEssence.Ground.GroundEntity,NLua.LuaFunction) ==   Helper function to make an entity run the specified task. Will not replace a running task! Tasks are run interlocked with the script processing and game processing, and characters cannot run multiple tasks at the same time.   === Arguments ===  * &amp;lt;code&amp;gt;ent&amp;lt;/code&amp;gt;: Entity which will run the task. * &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;: Task coroutine.  == TASK:StopEntityTask(RogueEssence.Ground.GroundE...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Cleanup}}&lt;br /&gt;
== TASK:StartEntityTask(RogueEssence.Ground.GroundEntity,NLua.LuaFunction) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Helper function to make an entity run the specified task.&lt;br /&gt;
Will not replace a running task!&lt;br /&gt;
Tasks are run interlocked with the script processing and game processing, and characters cannot run multiple tasks at the same time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;ent&amp;lt;/code&amp;gt;: Entity which will run the task.&lt;br /&gt;
* &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;: Task coroutine.&lt;br /&gt;
&lt;br /&gt;
== TASK:StopEntityTask(RogueEssence.Ground.GroundEntity) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Helper function to force stop an entity&amp;#039;s current task.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;ent&amp;lt;/code&amp;gt;: Entity running the task to stop.&lt;br /&gt;
&lt;br /&gt;
== TASK:WaitStartEntityTask ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Makes an entity run a specified task, and waits for it to complete.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;ent&amp;lt;/code&amp;gt;: Entity which will run the task.&lt;br /&gt;
* &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;: Task coroutine.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TASK:WaitEntityTask ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Waits for the specified entity to finish its task.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;ent&amp;lt;/code&amp;gt;: Entity which task we&amp;#039;ll wait on.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TASK:WaitEntityTask(player)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TASK:WaitTask ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Runs a task and waits for it to complete.&lt;br /&gt;
Most methods that do not expose themselves to script need to be wrapped with this.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;obj&amp;lt;/code&amp;gt;: The task to wait on.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TASK:WaitTask(_DUNGEON:DropMoney(100, RogueElements.Loc(10, 10), RogueElements.Loc(10, 10)))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TASK:StartScriptLocalCoroutine(NLua.LuaFunction,System.Object[]) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A wrapper around the StartCoroutine method of the GameManager, so lua coroutines can be executed locally to the script context.&lt;br /&gt;
AKA, it will block the script execution while its executed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;fn&amp;lt;/code&amp;gt;: None&lt;br /&gt;
* &amp;lt;code&amp;gt;args&amp;lt;/code&amp;gt;: None&lt;br /&gt;
&lt;br /&gt;
== TASK:BranchCoroutine(System.Object) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Starts a new coroutine to run parallel to the current execution.&lt;br /&gt;
Useful for performing multiple actions at once.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;obj&amp;lt;/code&amp;gt;: The task to run in parallel&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
local coro1 = TASK:BranchCoroutine(GAME:_FadeIn(60))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TASK:JoinCoroutines ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Waits for all specified coroutines to finish before continuing execution.&lt;br /&gt;
Often used for coroutines created using TASK:BranchCoroutine()&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arguments ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;coroTable&amp;lt;/code&amp;gt;: A table of coroutines to wait on.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TASK:JoinCoroutines({coro1})&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imbion</name></author>
	</entry>
</feed>