<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pt-BR">
	<id>https://wiki.brdoom.org/index.php?action=history&amp;feed=atom&amp;title=ACS_NamedExecuteWithResult</id>
	<title>ACS NamedExecuteWithResult - Histórico de revisão</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.brdoom.org/index.php?action=history&amp;feed=atom&amp;title=ACS_NamedExecuteWithResult"/>
	<link rel="alternate" type="text/html" href="https://wiki.brdoom.org/index.php?title=ACS_NamedExecuteWithResult&amp;action=history"/>
	<updated>2026-04-15T15:39:04Z</updated>
	<subtitle>Histórico de revisões para esta página neste wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.brdoom.org/index.php?title=ACS_NamedExecuteWithResult&amp;diff=185&amp;oldid=prev</id>
		<title>MegaManx3: Criou página com &#039;{{DISPLAYTITLE:ACS_NamedExecuteWithResult}}__NOTOC__ int &#039;&#039;&#039;ACS_NamedExecuteWithResult&#039;&#039;&#039; (string &#039;&#039;script&#039;&#039;, int &#039;&#039;s_arg1&#039;&#039;, int &#039;&#039;s_arg2&#039;&#039;, int &#039;&#039;s_arg3&#039;&#039;, int &#039;&#039;s_arg4&#039;&#039;)  == Uso == Variante de ACS_ExecuteWithResult para named scripts.  Há uma versão desta função em ACS e outra em DECORATE. Ambas se comportam de forma idêntica. A versão DECORATE também pode ser chamada pelo alias mais curto &#039;&#039;&#039;CallACS&#039;&#039;&#039; em DECORATE expressions. Outro alias...&#039;</title>
		<link rel="alternate" type="text/html" href="https://wiki.brdoom.org/index.php?title=ACS_NamedExecuteWithResult&amp;diff=185&amp;oldid=prev"/>
		<updated>2026-03-06T15:04:57Z</updated>

		<summary type="html">&lt;p&gt;Criou página com &amp;#039;{{DISPLAYTITLE:ACS_NamedExecuteWithResult}}__NOTOC__ int &amp;#039;&amp;#039;&amp;#039;ACS_NamedExecuteWithResult&amp;#039;&amp;#039;&amp;#039; (string &amp;#039;&amp;#039;script&amp;#039;&amp;#039;, int &amp;#039;&amp;#039;s_arg1&amp;#039;&amp;#039;, int &amp;#039;&amp;#039;s_arg2&amp;#039;&amp;#039;, int &amp;#039;&amp;#039;s_arg3&amp;#039;&amp;#039;, int &amp;#039;&amp;#039;s_arg4&amp;#039;&amp;#039;)  == Uso == Variante de &lt;a href=&quot;/index.php?title=ACS_ExecuteWithResult&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;ACS ExecuteWithResult (página inexistente)&quot;&gt;ACS_ExecuteWithResult&lt;/a&gt; para &lt;a href=&quot;/index.php?title=Named_script&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Named script (página inexistente)&quot;&gt;named scripts&lt;/a&gt;.  Há uma versão desta função em &lt;a href=&quot;/index.php/ACS&quot; title=&quot;ACS&quot;&gt;ACS&lt;/a&gt; e outra em &lt;a href=&quot;/index.php/DECORATE&quot; title=&quot;DECORATE&quot;&gt;DECORATE&lt;/a&gt;. Ambas se comportam de forma idêntica. A versão DECORATE também pode ser chamada pelo alias mais curto &amp;#039;&amp;#039;&amp;#039;CallACS&amp;#039;&amp;#039;&amp;#039; em &lt;a href=&quot;/index.php?title=DECORATE_expressions&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;DECORATE expressions (página inexistente)&quot;&gt;DECORATE expressions&lt;/a&gt;. Outro alias...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{DISPLAYTITLE:ACS_NamedExecuteWithResult}}__NOTOC__&lt;br /&gt;
int &amp;#039;&amp;#039;&amp;#039;ACS_NamedExecuteWithResult&amp;#039;&amp;#039;&amp;#039; (string &amp;#039;&amp;#039;script&amp;#039;&amp;#039;, int &amp;#039;&amp;#039;s_arg1&amp;#039;&amp;#039;, int &amp;#039;&amp;#039;s_arg2&amp;#039;&amp;#039;, int &amp;#039;&amp;#039;s_arg3&amp;#039;&amp;#039;, int &amp;#039;&amp;#039;s_arg4&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
== Uso ==&lt;br /&gt;
Variante de [[ACS_ExecuteWithResult]] para [[named script]]s.&lt;br /&gt;
&lt;br /&gt;
Há uma versão desta função em [[ACS]] e outra em [[DECORATE]]. Ambas se comportam de forma idêntica. A versão DECORATE também pode ser chamada pelo alias mais curto &amp;#039;&amp;#039;&amp;#039;CallACS&amp;#039;&amp;#039;&amp;#039; em [[DECORATE expressions]]. Outro alias para esta função é &amp;#039;&amp;#039;&amp;#039;ACS_ScriptCall&amp;#039;&amp;#039;&amp;#039;, que introduz a capacidade de a função ser chamada por objetos actor arbitrários, assim como pelo objeto {{c|self}} (veja o segundo exemplo abaixo). Este alias é exclusivo de DECORATE e [[ZScript]].&lt;br /&gt;
&lt;br /&gt;
ACS_(Named)ExecuteWithResult tem uma pequena diferença além de retornar um valor. Eles executam imediatamente assim que são chamados, enquanto os outros tipos geralmente esperam um tic antes de agir.&lt;br /&gt;
&lt;br /&gt;
No entanto, ela não está disponível como um [[action special]]: para chamar scripts nomeados a partir de um [[special]] de line ou thing, você precisa usar a variante não nomeada ([[ACS_ExecuteWithResult]]) em [[UDMF]], com o argumento customizado &amp;lt;tt&amp;gt;arg0str&amp;lt;/tt&amp;gt; definido para o nome do script &amp;amp;mdash; isso sobrescreverá o primeiro parâmetro.&lt;br /&gt;
&lt;br /&gt;
=== Parâmetros ===&lt;br /&gt;
* &amp;#039;&amp;#039;script&amp;#039;&amp;#039;: Nome do script a executar &lt;br /&gt;
* &amp;#039;&amp;#039;s_arg1&amp;#039;&amp;#039;: Primeiro argumento passado para o script &lt;br /&gt;
* &amp;#039;&amp;#039;s_arg2&amp;#039;&amp;#039;: Segundo argumento passado para o script &lt;br /&gt;
* &amp;#039;&amp;#039;s_arg3&amp;#039;&amp;#039;: Terceiro argumento passado para o script &lt;br /&gt;
* &amp;#039;&amp;#039;s_arg4&amp;#039;&amp;#039;: Quarto argumento passado para o script &lt;br /&gt;
&lt;br /&gt;
=== Valor de retorno ===&lt;br /&gt;
Retorna o valor de retorno do script executado. Veja [[SetResultValue]].&lt;br /&gt;
&lt;br /&gt;
==Exemplos==&lt;br /&gt;
Este exemplo mostra um item similar ao item {{Class|ArtiHealingRadius|Mystic Ambit}} de &amp;#039;&amp;#039;[[Hexen]]&amp;#039;&amp;#039;: verifica qual classe de jogador usa um item e aplica um efeito diferente.&lt;br /&gt;
&lt;br /&gt;
Item em Decorate:&lt;br /&gt;
 Actor ClassBoost : CustomInventory&lt;br /&gt;
 {&lt;br /&gt;
   {{Property|Inventory.MaxAmount}} 25&lt;br /&gt;
   {{Property|Inventory.InterHubAmount}} 25&lt;br /&gt;
   +{{flag|INVENTORY.INVBAR}}&lt;br /&gt;
   {{Property|Inventory.Icon}} &amp;quot;ARTIHRAD&amp;quot;&lt;br /&gt;
   States&lt;br /&gt;
   {&lt;br /&gt;
   Spawn:&lt;br /&gt;
     HRAD ABCDEFGHIJKLMNOP 4 Bright&lt;br /&gt;
     [[Loop]]&lt;br /&gt;
   Use:&lt;br /&gt;
     TNT1 A 0 [[A_JumpIf]]([[ACS_NamedExecuteWithResult|CallACS]](&amp;quot;CheckPlayerClass&amp;quot;, 0, 0, 0) == 0, &amp;quot;NormalPlayer&amp;quot;)&lt;br /&gt;
     TNT1 A 0 [[A_JumpIf]]([[ACS_NamedExecuteWithResult|CallACS]](&amp;quot;CheckPlayerClass&amp;quot;, 0, 0, 0) == 1, &amp;quot;AlternatePlayer&amp;quot;)&lt;br /&gt;
     [[Fail]]&lt;br /&gt;
   NormalPlayer:&lt;br /&gt;
     TNT1 A 0 [[A_RadiusGive]](&amp;quot;{{Class|Health}}&amp;quot;, 256, {{const|RGF_PLAYERS}} | {{const|RGF_GIVESELF}}, random(50, 90))&lt;br /&gt;
     [[Stop]]&lt;br /&gt;
   AlternatePlayer:&lt;br /&gt;
     TNT1 A 0 [[A_RadiusGive]](&amp;quot;PowerImproveDamage&amp;quot;, 256, {{const|RGF_PLAYERS}} | {{const|RGF_GIVESELF}}, 1)&lt;br /&gt;
     [[Stop]]&lt;br /&gt;
   }&lt;br /&gt;
 }&lt;br /&gt;
Script ACS:&lt;br /&gt;
 script &amp;quot;CheckPlayerClass&amp;quot; (void)&lt;br /&gt;
 {&lt;br /&gt;
   if([[CheckActorClass]](0, &amp;quot;DoomPlayer&amp;quot;))&lt;br /&gt;
   {&lt;br /&gt;
     ;&lt;br /&gt;
     [[terminate]];&lt;br /&gt;
   }&lt;br /&gt;
   else if([[CheckActorClass]](0, &amp;quot;AlternateDoomPlayer&amp;quot;))&lt;br /&gt;
   {&lt;br /&gt;
     ;&lt;br /&gt;
     [[terminate]];&lt;br /&gt;
   }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Este item de exemplo demonstra o uso de ACS_ScriptCall. Ao ser pego, ele spawna um {{Class|BaronOfHell|baron of hell}} e faz duas chamadas de script ACS: uma feita pelo próprio baron of hell, e outra feita pelo actor que pegou o item.&lt;br /&gt;
 class BaronSummoner : [[CustomInventory]]&lt;br /&gt;
 {&lt;br /&gt;
     States&lt;br /&gt;
     {&lt;br /&gt;
     Spawn:&lt;br /&gt;
         SOUL ABCD 6 Bright;&lt;br /&gt;
         Loop;&lt;br /&gt;
 &lt;br /&gt;
     Pickup:&lt;br /&gt;
         TNT1 A 0&lt;br /&gt;
         {&lt;br /&gt;
             bool res;&lt;br /&gt;
             Actor mobj;&lt;br /&gt;
             [res, mobj] = [[A_SpawnItemEx]](&amp;quot;{{Class|BaronOfHell}}&amp;quot;, 100);&lt;br /&gt;
 &lt;br /&gt;
             if (res &amp;amp;&amp;amp; mobj)&lt;br /&gt;
             {&lt;br /&gt;
                 // O chamador é o objeto baron of hell.&lt;br /&gt;
                 // Usar &amp;#039;&amp;#039;&amp;#039;ACS_NamedExecuteWithResult&amp;#039;&amp;#039;&amp;#039;, em vez disso, é inaceitável aqui.&lt;br /&gt;
                 mobj.&amp;#039;&amp;#039;&amp;#039;ACS_ScriptCall&amp;#039;&amp;#039;&amp;#039;(&amp;quot;SomeScript&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
                 // O chamador é o objeto &amp;#039;&amp;#039;self&amp;#039;&amp;#039; (o actor que pegou o item).&lt;br /&gt;
                 // Usar &amp;#039;&amp;#039;&amp;#039;ACS_NamedExecuteWithResult&amp;#039;&amp;#039;&amp;#039;, em vez disso, é aceitável aqui.&lt;br /&gt;
                 &amp;#039;&amp;#039;&amp;#039;ACS_ScriptCall&amp;#039;&amp;#039;&amp;#039;(&amp;quot;SomeOtherScript&amp;quot;);&lt;br /&gt;
             }&lt;br /&gt;
         }&lt;br /&gt;
         Stop;&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:ExecuteWithResult}}[[Category:ACS Script functions]][[Category:Decorate Script functions]]&lt;br /&gt;
&lt;br /&gt;
{{script functions}}&lt;/div&gt;</summary>
		<author><name>MegaManx3</name></author>
	</entry>
</feed>