or if the player has fulfilled the requirements of the exo-suit.</p><divclass="fullcomment"><divclass="comment cmt"><p>The player may don this exo-suit if the exo-suit has no requirements
or if the player has fulfilled the requirements of the exo-suit.
The "requirements" are certification purchases.</p></div><dlclass="paramcmts block"><dtclass="param">player</dt><ddclass="cmt"><p>the player</p></dd><dtclass="param">exosuit</dt><ddclass="cmt"><p>the exo-suit the player is trying to wear</p></dd><dtclass="param">subtype</dt><ddclass="cmt"><p>the variant of this exo-suit type;
matters for mechanized assault exo-suits, mainly</p></dd><dt>returns</dt><ddclass="cmt"><p><code>true</code>, if the player and the exo-suit are compatible;
<code>false</code>, otherwise</p></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#FinishRevivingPlayer"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="FinishRevivingPlayer(target:net.psforever.objects.Player,medic:String,item:net.psforever.objects.Tool)():Unit"></a><aid="FinishRevivingPlayer(Player,String,Tool)():Unit"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#FinishRevivingPlayer(target:net.psforever.objects.Player,medic:String,item:net.psforever.objects.Tool)():Unit"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">FinishRevivingPlayer</span><spanclass="params">(<spanname="target">target: <ahref="Player.html"name="net.psforever.objects.Player"id="net.psforever.objects.Player"class="extype">Player</a></span>, <spanname="medic">medic: <spanname="scala.Predef.String"class="extype">String</span></span>, <spanname="item">item: <ahref="Tool.html"name="net.psforever.objects.Tool"id="net.psforever.objects.Tool"class="extype">Tool</a></span>)</span><spanclass="params">()</span><spanclass="result">: <spanname="scala.Unit"class="extype">Unit</span></span></span><pclass="shortcomment cmt">na</p><divclass="fullcomment"><divclass="comment cmt"><p>na</p></div><dlclass="paramcmts block"><dtclass="param">target</dt><ddclass="cmt"><p>the player being revived</p></dd><dtclass="param">medic</dt><ddclass="cmt"><p>the name of the player doing the reviving</p></dd><dtclass="param">item</dt><ddclass="cmt"><p>the tool being used to revive the target player</p></dd></dl><dlclass="attributes block"><dt>See also</dt><dd><spanclass="cmt"><p><code>AvatarAction.Revive</code></p></span><spanclass="cmt"><p><code>AvatarResponse.Revive</code></p></span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#RevivingTickAction"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="RevivingTickAction(target:net.psforever.objects.Player,user:net.psforever.objects.Player,item:net.psforever.objects.Tool)(progress:Float):Boolean"></a><aid="RevivingTickAction(Player,Player,Tool)(Float):Boolean"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#RevivingTickAction(target:net.psforever.objects.Player,user:net.psforever.objects.Player,item:net.psforever.objects.Tool)(progress:Float):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">RevivingTickAction</span><spanclass="params">(<spanname="target">target: <ahref="Player.html"name="net.psforever.objects.Player"id="net.psforever.objects.Player"class="extype">Player</a></span>, <spanname="user">user: <ahref="Player.html"name="net.psforever.objects.Player"id="net.psforever.objects.Player"class="extype">Player</a></span>, <spanname="item">item: <ahref="Tool.html"name="net.psforever.objects.Tool"id="net.psforever.objects.Tool"class="extype">Tool</a></span>)</span><spanclass="params">(<spanname="progress">progress: <spanname="scala.Float"class="extype">Float</span></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><pclass="shortcomment cmt">Evaluate the progress of the user applying a tool to modify some other server object.</p><divclass="fullcomment"><divclass="comment cmt"><p>Evaluate the progress of the user applying a tool to modify some other server object.
This action is using the medical applicator to revive a fallen (dead but not released) ally.
</p></div><dlclass="paramcmts block"><dtclass="param">target</dt><ddclass="cmt"><p>the player being affected by the revive action</p></dd><dtclass="param">user</dt><ddclass="cmt"><p>the player performing the revive action</p></dd><dtclass="param">item</dt><ddclass="cmt"><p>the tool being used to revive the target player</p></dd><dtclass="param">progress</dt><ddclass="cmt"><p>the current progress value</p></dd><dt>returns</dt><ddclass="cmt"><p><code>true</code>, if the next cycle of progress should occur;
<code>false</code>, otherwise</p></dd></dl></div></li><liclass="indented0 "name="scala.Any#asInstanceOf"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="asInstanceOf[T0]:T0"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#asInstanceOf[T0]:T0"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier">final </span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">asInstanceOf</span><spanclass="tparams">[<spanname="T0">T0</span>]</span><spanclass="result">: <spanname="scala.Any.asInstanceOf.T0"class="extype">T0</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>Any</dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#buildCooldownReset"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="buildCooldownReset(zone:net.psforever.objects.zones.Zone,channel:String,obj:net.psforever.objects.ce.Deployable):Unit"></a><aid="buildCooldownReset(Zone,String,Deployable):Unit"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#buildCooldownReset(zone:net.psforever.objects.zones.Zone,channel:String,obj:net.psforever.objects.ce.Deployable):Unit"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">buildCooldownReset</span><spanclass="params">(<spanname="zone">zone: <ahref="zones/Zone.html"name="net.psforever.objects.zones.Zone"id="net.psforever.objects.zones.Zone"class="extype">Zone</a></span>, <spanname="channel">channel: <spanname="scala.Predef.String"class="extype">String</span></span>, <spanname="obj">obj: <ahref="ce/Deployable.html"name="net.psforever.objects.ce.Deployable"id="net.psforever.objects.ce.Deployable"class="extype">Deployable</a></span>)</span><spanclass="result">: <spanname="scala.Unit"class="extype">Unit</span></span></span><pclass="shortcomment cmt">Common actions related to constructing a new <code>Deployable</code> object in the game environment.</p><divclass="fullcomment"><divclass="comment cmt"><p>Common actions related to constructing a new <code>Deployable</code> object in the game environment.</p></div><dlclass="paramcmts block"><dtclass="param">zone</dt><ddclass="cmt"><p>in which zone these messages apply</p></dd><dtclass="param">channel</dt><ddclass="cmt"><p>to whom to send the messages</p></dd><dtclass="param">obj</dt><ddclass="cmt"><p>the <code>Deployable</code> object</p></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#clearHolsters"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="clearHolsters(iter:Iterator[net.psforever.objects.equipment.EquipmentSlot],index:Int,list:List[net.psforever.objects.inventory.InventoryItem]):List[net.psforever.objects.inventory.InventoryItem]"></a><aid="clearHolsters(Iterator[EquipmentSlot],Int,List[InventoryItem]):List[InventoryItem]"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#clearHolsters(iter:Iterator[net.psforever.objects.equipment.EquipmentSlot],index:Int,list:List[net.psforever.objects.inventory.InventoryItem]):List[net.psforever.objects.inventory.InventoryItem]"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">clearHolsters</span><spanclass="params">(<spanname="iter">iter: <spanname="scala.Iterator"class="extype">Iterator</span>[<ahref="equipment/EquipmentSlot.html"name="net.psforever.objects.equipment.EquipmentSlot"id="net.psforever.objects.equipment.EquipmentSlot"class="extype">EquipmentSlot</a>]</span>, <spanname="index">index: <spanname="scala.Int"class="extype">Int</span> = <spanclass="symbol">0</span></span>, <spanname="list">list: <spanname="scala.
Remove any encountered items and add them to an output <code>List</code>.</p></div><dlclass="paramcmts block"><dtclass="param">iter</dt><ddclass="cmt"><p>the <code>Iterator</code> of <code>EquipmentSlot</code>s</p></dd><dtclass="param">index</dt><ddclass="cmt"><p>a number that equals the "current" holster slot (<code>EquipmentSlot</code>)</p></dd><dtclass="param">list</dt><ddclass="cmt"><p>a persistent <code>List</code> of <code>Equipment</code> in the holster slots</p></dd><dt>returns</dt><ddclass="cmt"><p>a <code>List</code> of <code>Equipment</code> in the holster slots</p></dd></dl><dlclass="attributes block"><dt>Annotations</dt><dd><spanclass="name">@tailrec</span><spanclass="args">()</span></dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#clone"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="prt"><aid="clone():Object"></a><aid="clone():AnyRef"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#clone():Object"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">clone</span><spanclass="params">()</span><spanclass="result">: <spanname="scala.AnyRef"class="extype">AnyRef</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Attributes</dt><dd>protected[<spanname="java.lang"class="extype">lang</span>] </dd><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><spanclass="name">@throws</span><spanclass="args">(<span><spanclass="defval">classOf[java.lang.CloneNotSupportedException]</span></span>)</span><spanclass="name">@native</span><spanclass="args">()</span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#commonDestroyConstructionItem"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="commonDestroyConstructionItem(player:net.psforever.objects.Player,tool:net.psforever.objects.ConstructionItem,index:Int):Unit"></a><aid="commonDestroyConstructionItem(Player,ConstructionItem,Int):Unit"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#commonDestroyConstructionItem(player:net.psforever.objects.Player,tool:net.psforever.objects.ConstructionItem,index:Int):Unit"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">commonDestroyConstructionItem</span><spanclass="params">(<spanname="player">player: <ahref="Player.html"name="net.psforever.objects.Player"id="net.psforever.objects.Player"class="extype">Player</a></span>, <spanname="tool">tool: <ahref="ConstructionItem.html"name="net.psforever.objects.ConstructionItem"id="net.psforever.objects.ConstructionItem"class="extype">ConstructionItem</a></span>, <spanname="index">index: <spanname="scala.Int"class="extype">Int</span></span>)</span><spanclass="result">: <spanname="scala.Unit"class="extype">Unit</span></span></span><pclass="shortcomment cmt">Destroy a <code>ConstructionItem</code> object that can be found in the indexed slot.</p><divclass="fullcomment"><divclass="comment cmt"><p>Destroy a <code>ConstructionItem</code> object that can be found in the indexed slot.</p></div><dlclass="paramcmts block"><dtclass="param">tool</dt><ddclass="cmt"><p>the <code>ConstructionItem</code> object currently in the slot (checked)</p></dd><dtclass="param">index</dt><ddclass="cmt"><p>the slot index</p></dd></dl><dlclass="attributes block"><dt>See also</dt><dd><spanclass="cmt"><p><code>Player.Find</code></p></span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#deployableWithinBuildLimits"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="deployableWithinBuildLimits(player:net.psforever.objects.Player,obj:net.psforever.objects.ce.Deployable):Boolean"></a><aid="deployableWithinBuildLimits(Player,Deployable):Boolean"><
The test actually involves a number of checks against numerical limits for supporting the deployable
(the first of which is whether there is any limit at all).
Depending on the result against limits successfully, various status messages can be dispatched to the client
and the deployable will be considered permitted to be constructed.<br>
<br>
The first placement limit is the actual number of a specific type of deployable.
The second placement limit is the actual number of a specific group (category) of deployables.
Depending on which limit is encountered, an "oldest entry" is struck from the list to make space.
This generates the first message - "@*OldestDestroyed."
Another message is generated if the number of that specific type of deployable
or the number of deployables available in its category matches against the maximum count allowed.
This generates the second message - "@*LimitReached."
These messages are mutually exclusive, with "@*OldestDestroyed" taking priority over "@*LimitReached."<br>
<br>
Finally, the player needs to actually manage the deployable.
Once that responsibility is proven, all tests are considered passed.</p></div><dlclass="paramcmts block"><dtclass="param">player</dt><ddclass="cmt"><p>the player that would manage the deployable</p></dd><dtclass="param">obj</dt><ddclass="cmt"><p>the deployable</p></dd><dt>returns</dt><ddclass="cmt"><p><code>true</code>, if the deployable can be constructed under the control of and be supported by the player;
Add that item to the slot and remove it from the list.</p></div><dlclass="paramcmts block"><dtclass="param">iter</dt><ddclass="cmt"><p>the <code>Iterator</code> of <code>EquipmentSlot</code>s</p></dd><dtclass="param">list</dt><ddclass="cmt"><p>a <code>List</code> of all <code>Equipment</code> that is not yet assigned to a holster slot or an inventory slot</p></dd><dt>returns</dt><ddclass="cmt"><p>the <code>List</code> of all <code>Equipment</code> not yet assigned to a holster slot or an inventory slot</p></dd></dl><dlclass="attributes block"><dt>Annotations</dt><dd><spanclass="name">@tailrec</span><spanclass="args">()</span></dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#finalize"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="prt"><aid="finalize():Unit"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#finalize():Unit"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">finalize</span><spanclass="params">()</span><spanclass="result">: <spanname="scala.Unit"class="extype">Unit</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Attributes</dt><dd>protected[<spanname="java.lang"class="extype">lang</span>] </dd><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><spanclass="name">@throws</span><spanclass="args">(<span><spanclass="symbol">classOf[java.lang.Throwable]</span></span>)</span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#findReplacementConstructionItem"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="findReplacementConstructionItem(player:net.psforever.objects.Player,tool:net.psforever.objects.ConstructionItem,index:Int):Unit"></a><aid="findReplacementConstructionItem(Player,ConstructionItem,Int):Unit"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#findReplacementConstructionItem(player:net.psforever.objects.Player,tool:net.psforever.objects.ConstructionItem,index:Int):Unit"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">findReplacementConstructionItem</span><spanclass="params">(<spanname="player">player: <ahref="Player.html"name="net.psforever.objects.Player"id="net.psforever.objects.Player"class="extype">Player</a></span>, <spanname="tool">tool: <ahref="ConstructionItem.html"name="net.psforever.objects.ConstructionItem"id="net.psforever.objects.ConstructionItem"class="extype">ConstructionItem</a></span>, <spanname="index">index: <spanname="scala.Int"class="extype">Int</span></span>)</span><spanclass="result">: <spanname="scala.Unit"class="extype">Unit</span></span></span><pclass="shortcomment cmt">Find a <code>ConstructionItem</code> object in player's inventory
that is the same type as a target <code>ConstructionItem</code> object and
transfer it into the designated slot index, usually a holster.</p><divclass="fullcomment"><divclass="comment cmt"><p>Find a <code>ConstructionItem</code> object in player's inventory
that is the same type as a target <code>ConstructionItem</code> object and
transfer it into the designated slot index, usually a holster.
Draw that holster.
After being transferred, the replacement should be reconfigured to match the fire mode of the original.
The primary use of this operation is following the successful manifestation of a deployable in the game world.<br>
<br>
As this function should be used in response to some other action such as actually placing a deployable,
do not instigate bundling from within the function's scope.</p></div><dlclass="paramcmts block"><dtclass="param">tool</dt><ddclass="cmt"><p>the <code>ConstructionItem</code> object to match</p></dd><dtclass="param">index</dt><ddclass="cmt"><p>where to put the discovered replacement</p></dd></dl><dlclass="attributes block"><dt>See also</dt><dd><spanclass="cmt"><p><code>WorldSessionActor.FinalizeDeployable</code><br>
<code>FindEquipmentStock</code></p></span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#gainDeployableOwnership"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="gainDeployableOwnership(player:net.psforever.objects.Player,obj:net.psforever.objects.ce.Deployable,addFunc:net.psforever.objects.ce.Deployable=>Boolean):Boolean"></a><aid="gainDeployableOwnership(Player,Deployable,(Deployable)=>Boolean):Boolean"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#gainDeployableOwnership(player:net.psforever.objects.Player,obj:net.psforever.objects.ce.Deployable,addFunc:net.psforever.objects.ce.Deployable=>Boolean):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">gainDeployableOwnership</span><spanclass="params">(<spanname="player">player: <ahref="Player.html"name="net.psforever.objects.Player"id="net.psforever.objects.Player"class="extype">Player</a></span>, <spanname="obj">obj: <ahref="ce/Deployable.html"name="net.psforever.objects.ce.Deployable"id="net.psforever.objects.ce.Deployable"class="extype">Deployable</a></span>, <spanname="addFunc">addFunc: (<ahref="ce/Deployable.html"name="net.psforever.objects.ce.Deployable"id="net.psforever.objects.ce.Deployable"class="extype">Deployable</a>) =><spanname="scala.Boolean"class="extype">Boolean</span></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><pclass="shortcomment cmt">Grant ownership over a deployable to a player and calls for an update to the UI for that deployable.</p><divclass="fullcomment"><divclass="comment cmt"><p>Grant ownership over a deployable to a player and calls for an update to the UI for that deployable.
Although the formal the ownership change is delayed slightly by messaging protocol,
the outcome of this function is reliant more on the function parameter
used to append the deployable to the management system of the to-be-owning player.
The difference is between technical ownership and indirect knowledge of ownership
and how these ownership awareness states operate differently on management of the deployable.</p></div><dlclass="paramcmts block"><dtclass="param">player</dt><ddclass="cmt"><p>the player who would own the deployable</p></dd><dtclass="param">obj</dt><ddclass="cmt"><p>the deployable</p></dd><dtclass="param">addFunc</dt><ddclass="cmt"><p>the process for assigning management of the deployable to the player</p></dd><dt>returns</dt><ddclass="cmt"><p><code>true</code>, if the player was assignment management of the deployable;
the ability to place combat support utilities - combat engineering (ce) deployables - in the game world.</p></div><dlclass="paramcmts block"><dtclass="param">player</dt><ddclass="cmt"><p>the player whose certifications are to be tested</p></dd><dt>returns</dt><ddclass="cmt"><p>the engineering level</p></dd></dl><dlclass="attributes block"><dt>See also</dt><dd><spanclass="cmt"><p><code>Avatar.certifications</code></p></span><spanclass="cmt"><p><code>Certification</code></p></span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#safelyRemoveConstructionItemFromSlot"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="safelyRemoveConstructionItemFromSlot(player:net.psforever.objects.Player,tool:net.psforever.objects.ConstructionItem,index:Int,logDecorator:String):Boolean"></a><aid="safelyRemoveConstructionItemFromSlot(Player,ConstructionItem,Int,String):Boolean"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#safelyRemoveConstructionItemFromSlot(player:net.psforever.objects.Player,tool:net.psforever.objects.ConstructionItem,index:Int,logDecorator:String):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">safelyRemoveConstructionItemFromSlot</span><spanclass="params">(<spanname="player">player: <ahref="Player.html"name="net.psforever.objects.Player"id="net.psforever.objects.Player"class="extype">Player</a></span>, <spanname="tool">tool: <ahref="ConstructionItem.html"name="net.psforever.objects.ConstructionItem"id="net.psforever.objects.ConstructionItem"class="extype">ConstructionItem</a></span>, <spanname="index">index: <spanname="scala.Int"class="extype">Int</span></span>, <spanname="logDecorator">logDecorator: <spanname="scala.Predef.String"class="extype">String</span> = <spanclass="defval">"SafelyRemoveConstructionItemFromSlot"</span></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><pclass="shortcomment cmt">Find the target <code>ConstructionTool</code> object, either at the suggested slot or wherever it is on the <code>player</code>,
and remove it from the game world visually.<br>
<br>
Not finding the target object at its intended slot is an entirely recoverable situation
as long as the target object is discovered to be somewhere else in the player's holsters or inventory space.</p><divclass="fullcomment"><divclass="comment cmt"><p>Find the target <code>ConstructionTool</code> object, either at the suggested slot or wherever it is on the <code>player</code>,
and remove it from the game world visually.<br>
<br>
Not finding the target object at its intended slot is an entirely recoverable situation
as long as the target object is discovered to be somewhere else in the player's holsters or inventory space.
If found after a more thorough search, merely log the discrepancy as a warning.
If the discrepancy becomes common, the developer messed up the function call
or he should not be using this function.</p></div><dlclass="paramcmts block"><dtclass="param">tool</dt><ddclass="cmt"><p>the <code>ConstructionItem</code> object currently in the slot (checked)</p></dd><dtclass="param">index</dt><ddclass="cmt"><p>the slot index</p></dd><dtclass="param">logDecorator</dt><ddclass="cmt"><p>what kind of designation to give any log entires originating from this function;
defaults to its own function name</p></dd><dt>returns</dt><ddclass="cmt"><p><code>true</code>, if the target object was found and removed;
<code>false</code>, otherwise</p></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.Players#successfulBuildActivity"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="successfulBuildActivity(zone:net.psforever.objects.zones.Zone,channel:String,obj:net.psforever.objects.ce.Deployable):Unit"></a><aid="successfulBuildActivity(Zone,String,Deployable):Unit"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#successfulBuildActivity(zone:net.psforever.objects.zones.Zone,channel:String,obj:net.psforever.objects.ce.Deployable):Unit"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">successfulBuildActivity</span><spanclass="params">(<spanname="zone">zone: <ahref="zones/Zone.html"name="net.psforever.objects.zones.Zone"id="net.psforever.objects.zones.Zone"class="extype">Zone</a></span>, <spanname="channel">channel: <spanname="scala.Predef.String"class="extype">String</span></span>, <spanname="obj">obj: <ahref="ce/Deployable.html"name="net.psforever.objects.ce.Deployable"id="net.psforever.objects.ce.Deployable"class="extype">Deployable</a></span>)</span><spanclass="result">: <spanname="scala.Unit"class="extype">Unit</span></span></span><pclass="shortcomment cmt">Common actions related to constructing a new <code>Deployable</code> object in the game environment.</p><divclass="fullcomment"><divclass="comment cmt"><p>Common actions related to constructing a new <code>Deployable</code> object in the game environment.</p></div><dlclass="paramcmts block"><dtclass="param">zone</dt><ddclass="cmt"><p>in which zone these messages apply</p></dd><dtclass="param">channel</dt><ddclass="cmt"><p>to whom to send the messages</p></dd><dtclass="param">obj</dt><ddclass="cmt"><p>the <code>Deployable</code> object</p></dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#synchronized"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="synchronized[T0](x$1:=>T0):T0"></a><aid="synchronized[T0](=>T0):T0"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#synchronized[T0](x$1:=>T0):T0"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier">final </span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">synchronized</span><spanclass="tparams">[<spanname="T0">T0</span>]</span><spanclass="params">(<spanname="arg0">arg0: =><spanname="java.lang.AnyRef.synchronized.T0"class="extype">T0</span></span>)</span><spanclass="result">: <spanname="java.lang.AnyRef.synchronized.T0"class="extype">T0</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#toString"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="toString():String"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#toString():String"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">toString</span><spanclass="params">()</span><spanclass="result">: <ahref="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#java.lang.String"name="java.lang.String"id="java.lang.String"class="extype">String</a></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#wait"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="wait():Unit"></a><spanclass="permalink"><ahref="../../../net/psforever/objects/Players$.html#wait():Unit"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass