apply further checks to the combination of the target, the equipment, and tis user.</p><divclass="fullcomment"><divclass="comment cmt"><p>Catch the expected repair message and
apply further checks to the combination of the target, the equipment, and tis user.
If the checks pass, perform the repair.
</p></div><dlclass="paramcmts block"><dtclass="param">player</dt><ddclass="cmt"><p>the user of the nano dispenser tool</p></dd><dtclass="param">item</dt><ddclass="cmt"><p>the nano dispenser tool</p></dd></dl><dlclass="attributes block"><dt>Definition Classes</dt><dd><ahref="RepairableEntity.html"name="net.psforever.objects.serverobject.repair.RepairableEntity"id="net.psforever.objects.serverobject.repair.RepairableEntity"class="extype">RepairableEntity</a> → <ahref="Repairable.html"name="net.psforever.objects.serverobject.repair.Repairable"id="net.psforever.objects.serverobject.repair.Repairable"class="extype">Repairable</a></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.serverobject.repair.RepairableEntity#CanPerformRepairs"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="prt"><aid="CanPerformRepairs(target:net.psforever.objects.serverobject.repair.Repairable.Target,player:net.psforever.objects.Player,item:net.psforever.objects.Tool):Boolean"></a><aid="CanPerformRepairs(Target,Player,Tool):Boolean"></a><spanclass="permalink"><ahref="../../../../../net/psforever/objects/serverobject/repair/RepairableVehicle.html#CanPerformRepairs(target:net.psforever.objects.serverobject.repair.Repairable.Target,player:net.psforever.objects.Player,item:net.psforever.objects.Tool):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">CanPerformRepairs</span><spanclass="params">(<spanname="target">target: <ahref="Repairable$.html#Target=net.psforever.objects.serverobject.PlanetSideServerObjectwithnet.psforever.objects.vital.Vitality"name="net.psforever.objects.serverobject.repair.Repairable.Target"id="net.psforever.objects.serverobject.repair.Repairable.Target"class="extmbr">Target</a></span>, <spanname="player">player: <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="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><pclass="shortcomment cmt">Test the combination of target entity, equipment user, and the equipment
to determine if the repair process attempt would be permitted.</p><divclass="fullcomment"><divclass="comment cmt"><p>Test the combination of target entity, equipment user, and the equipment
to determine if the repair process attempt would be permitted.
It is not necessary to check that the tool and its ammunition are correct types;
that test was already performed.<br>
<br>
The target entity must be repairable and have less than full health
and, if it is destroyed, must have an object attribute that permits it to be repaired after being destroyed.<br>
The user must have the same faction affinity as the target entity or be neutral.<br>
The equipment must have some ammunition.<br>
The user must be alive and be within a certain distance of the target entity.</p></div><dlclass="paramcmts block"><dtclass="param">target</dt><ddclass="cmt"><p>the entity being repaired</p></dd><dtclass="param">player</dt><ddclass="cmt"><p>the user of the nano dispenser tool</p></dd><dtclass="param">item</dt><ddclass="cmt"><p>the nano dispenser tool</p></dd><dt>returns</dt><ddclass="cmt"><p><code>true</code>, if the target entity can be repaired;
<code>false</code>, otherwise</p></dd></dl><dlclass="attributes block"><dt>Attributes</dt><dd>protected </dd><dt>Definition Classes</dt><dd><ahref="RepairableEntity.html"name="net.psforever.objects.serverobject.repair.RepairableEntity"id="net.psforever.objects.serverobject.repair.RepairableEntity"class="extype">RepairableEntity</a></dd><dt>See also</dt><dd><spanclass="cmt"><p><code>org.log4s.getLogger</code></p></span><spanclass="cmt"><p><code>PlanetSideEmpire</code></p></span><spanclass="cmt"><p><code>Vector3.Distance</code></p></span><spanclass="cmt"><p><code>VitalityDefinition</code></p></span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.serverobject.repair.RepairableEntity#PerformRepairs"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="prt"><aid="PerformRepairs(target:net.psforever.objects.serverobject.repair.Repairable.Target,amount:Int):Int"></a><aid="PerformRepairs(Target,Int):Int"></a><spanclass="permalink"><ahref="../../../../../net/psforever/objects/serverobject/repair/RepairableVehicle.html#PerformRepairs(target:net.psforever.objects.serverobject.repair.Repairable.Target,amount:Int):Int"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">PerformRepairs</span><spanclass="params">(<spanname="target">target: <ahref="Repairable$.html#Target=net.psforever.objects.serverobject.PlanetSideServerObjectwithnet.psforever.objects.vital.Vitality"name="net.psforever.objects.serverobject.repair.Repairable.Target"id="net.psforever.objects.serverobject.repair.Repairable.Target"class="extmbr">Target</a></span>, <spanname="amount">amount: <spanname="scala.Int"class="extype">Int</span></span>)</span><spanclass="result">: <spanname="scala.Int"class="extype">Int</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Attributes</dt><dd>protected </dd><dt>Definition Classes</dt><dd><ahref="RepairableEntity.html"name="net.psforever.objects.serverobject.repair.RepairableEntity"id="net.psforever.objects.serverobject.repair.RepairableEntity"class="extype">RepairableEntity</a></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.serverobject.repair.RepairableEntity#PerformRepairs"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="prt"><aid="PerformRepairs(target:net.psforever.objects.serverobject.repair.Repairable.Target,player:net.psforever.objects.Player,item:net.psforever.objects.Tool):Unit"></a><aid="PerformRepairs(Target,Player,Tool):Unit"></a><spanclass="permalink"><ahref="../../../../../net/psforever/objects/serverobject/repair/RepairableVehicle.html#PerformRepairs(target:net.psforever.objects.serverobject.repair.Repairable.Target,player:net.psforever.objects.Player,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">PerformRepairs</span><spanclass="params">(<spanname="target">target: <ahref="Repairable$.html#Target=net.psforever.objects.serverobject.PlanetSideServerObjectwithnet.psforever.objects.vital.Vitality"name="net.psforever.objects.serverobject.repair.Repairable.Target"id="net.psforever.objects.serverobject.repair.Repairable.Target"class="extmbr">Target</a></span>, <spanname="player">player: <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="result">: <spanname="scala.Unit"class="extype">Unit</span></span></span><pclass="shortcomment cmt">Calculate the health points change and enact that repair action if the targets are stationary.</p><divclass="fullcomment"><divclass="comment cmt"><p>Calculate the health p
Always show the repair progress bar window by using the appropriate packet.</p></div><dlclass="paramcmts block"><dtclass="param">target</dt><ddclass="cmt"><p>the entity being repaired</p></dd><dtclass="param">player</dt><ddclass="cmt"><p>the user of the nano dispenser tool</p></dd><dtclass="param">item</dt><ddclass="cmt"><p>the nano dispenser tool</p></dd></dl><dlclass="attributes block"><dt>Attributes</dt><dd>protected </dd><dt>Definition Classes</dt><dd><ahref="RepairableEntity.html"name="net.psforever.objects.serverobject.repair.RepairableEntity"id="net.psforever.objects.serverobject.repair.RepairableEntity"class="extype">RepairableEntity</a></dd><dt>See also</dt><dd><spanclass="cmt"><p><code>AvatarAction.PlanetsideAttributeToAll</code></p></span><spanclass="cmt"><p><code>AvatarAction.SendResponse</code></p></span><spanclass="cmt"><p><code>AvatarService</code></p></span><spanclass="cmt"><p><code>InventoryStateMessage</code></p></span><spanclass="cmt"><p><code>PlanetSideGameObject.isMoving</code></p></span><spanclass="cmt"><p><code>RepairMessage</code></p></span><spanclass="cmt"><p><code>Service.defaultPlayerGUID</code></p></span><spanclass="cmt"><p><code>Tool.Discharge</code></p></span><spanclass="cmt"><p><code>Zone.AvatarEvents</code></p></span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.serverobject.repair.RepairableVehicle#RepairToolValue"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="RepairToolValue(item:net.psforever.objects.Tool):Float"></a><aid="RepairToolValue(Tool):Float"></a><spanclass="permalink"><ahref="../../../../../net/psforever/objects/serverobject/repair/RepairableVehicle.html#RepairToolValue(item:net.psforever.objects.Tool):Float"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">RepairToolValue</span><spanclass="params">(<spanname="item">item: <ahref="../../Tool.html"name="net.psforever.objects.Tool"id="net.psforever.objects.Tool"class="extype">Tool</a></span>)</span><spanclass="result">: <spanname="scala.Float"class="extype">Float</span></span></span><pclass="shortcomment cmt">The amount of repair that any specific tool provides.</p><divclass="fullcomment"><divclass="comment cmt"><p>The amount of repair that any specific tool provides.</p></div><dlclass="paramcmts block"><dtclass="param">item</dt><ddclass="cmt"><p>the tool in question</p></dd><dt>returns</dt><ddclass="cmt"><p>an amount to add to the repair attempt progress</p></dd></dl><dlclass="attributes block"><dt>Definition Classes</dt><dd><ahref=""name="net.psforever.objects.serverobject.repair.RepairableVehicle"id="net.psforever.objects.serverobject.repair.RepairableVehicle"class="extype">RepairableVehicle</a> → <ahref="Repairable.html"name="net.psforever.objects.serverobject.repair.Repairable"id="net.psforever.objects.serverobject.repair.Repairable"class="extype">Repairable</a></dd><dt>See also</dt><dd><spanclass="cmt"><p><code>Repairable.Quality</code></p></span></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.serverobject.repair.RepairableVehicle#Restoration"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="Restoration(obj:net.psforever.objects.serverobject.repair.Repairable.Target):Unit"></a><aid="Restoration(Target):Unit"></a><spanclass="permalink"><ahref="../../../../../net/psforever/objects/serverobject/repair/RepairableVehicle.html#Restoration(obj:net.psforever.objects.serverobject.repair.Repairable.Target):Unit"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">Restoration</span><spanclass="params">(<spanname="obj">obj: <ahref="Repairable$.html#Target=net.psforever.objects.serverobject.PlanetSideServerObjectwithnet.psforever.objects.vital.Vitality"name="net.psforever.objects.ser
catch the expected repair message and apply initial checks to the item</p><divclass="fullcomment"><divclass="comment cmt"><p>The official mixin hook; <code>orElse</code> onto the "control" <code>Actor</code><code>receive</code>;
catch the expected repair message and apply initial checks to the item</p></div><dlclass="attributes block"><dt>Definition Classes</dt><dd><ahref="Repairable.html"name="net.psforever.objects.serverobject.repair.Repairable"id="net.psforever.objects.serverobject.repair.Repairable"class="extype">Repairable</a></dd><dt>See also</dt><dd><spanclass="cmt"><p><code>Ammo</code></p></span><spanclass="cmt"><p><code>CanBeRepairedByNanoDispenser</code></p></span><spanclass="cmt"><p><code>CommonMessages.Use</code></p></span><spanclass="cmt"><p><code>GlobalDefinitions</code></p></span><spanclass="cmt"><p><code>Tool.AmmoType</code></p></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/serverobject/repair/RepairableVehicle.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="scala.AnyRef#eq"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="eq(x$1:AnyRef):Boolean"></a><aid="eq(AnyRef):Boolean"></a><spanclass="permalink"><ahref="../../../../../net/psforever/objects/serverobject/repair/RepairableVehicle.html#eq(x$1:AnyRef):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier">final </span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">eq</span><spanclass="params">(<spanname="arg0">arg0: <spanname="scala.AnyRef"class="extype">AnyRef</span></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#equals"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="equals(x$1:Object):Boolean"></a><aid="equals(AnyRef):Boolean"></a><spanclass="permalink"><ahref="../../../../../net/psforever/objects/serverobject/repair/RepairableVehicle.html#equals(x$1:Object):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">equals</span><spanclass="params">(<spanname="arg0">arg0: <spanname="scala.AnyRef"class="extype">AnyRef</span></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</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/serverobject/repair/RepairableVehicle.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">