or can just vanish without having to properly clean itself up.</p></div><dlclass="attributes block"><dt>Source</dt><dd><ahref="https://github.com/psforever/PSF-LoginServer/blob/master//home/runner/work/PSF-LoginServer/PSF-LoginServer/src/main/scala/net/psforever/services/teamwork/SquadSwitchboard.scala"target="_blank">SquadSwitchboard.scala</a></dd></dl><divclass="toggleContainer"><divclass="toggle block"><span>Linear Supertypes</span><divclass="superTypes hiddenContent"><spanname="akka.actor.Actor"class="extype">Actor</span>, <spanname="scala.AnyRef"class="extype">AnyRef</span>, <spanname="scala.Any"class="extype">Any</span></div></div></div></div><divid="mbrsel"><divclass="toggle"></div><divid="memberfilter"><iclass="material-icons arrow"></i><spanclass="input"><inputplaceholder="Filter all members"id="mbrsel-input"type="text"accesskey="/"/></span><iclass="clear material-icons"></i></div><divid="filterby"><divid="order"><spanclass="filtertype">Ordering</span><ol><liclass="alpha in"><span>Alphabetic</span></li><liclass="inherit out"><span>By Inheritance</span></li></ol></div><divclass="ancestors"><spanclass="filtertype">Inherited<br/></span><olid="linearization"><liclass="in"name="net.psforever.services.teamwork.SquadSwitchboard"><span>SquadSwitchboard</span></li><liclass="in"name="akka.actor.Actor"><span>Actor</span></li><liclass="in"name="scala.AnyRef"><span>AnyRef</span></li><liclass="in"name="scala.Any"><span>Any</span></li></ol></div><divclass="ancestors"><spanclass="filtertype"></span><ol><liclass="hideall out"><span>Hide All</span></li><liclass="showall in"><span>Show All</span></li></ol></div><divid="visbl"><spanclass="filtertype">Visibility</span><ol><liclass="public in"><span>Public</span></li><liclass="protected out"><span>Protected</span></li></ol></div></div></div><divid="template"><divid="allMembers"><divid="constructors"class="members"><h3>Instance Constructors</h3><ol><liclass="indented0 "name="net.psforever.services.teamwork.SquadSwitchboard#<init>"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="<init>(features:net.psforever.objects.teamwork.SquadFeatures,subscriptions:net.psforever.services.teamwork.SquadSubscriptionEntity):net.psforever.services.teamwork.SquadSwitchboard"class="anchorToMember"></a><aid="<init>:SquadSwitchboard"class="anchorToMember"></a><spanclass="permalink"><ahref="../../../../net/psforever/services/teamwork/SquadSwitchboard.html#<init>(features:net.psforever.objects.teamwork.SquadFeatures,subscriptions:net.psforever.services.teamwork.SquadSubscriptionEntity):net.psforever.services.teamwork.SquadSwitchboard"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">new</span></span><spanclass="symbol"><spanclass="name">SquadSwitchboard</span><spanclass="params">(<spanname="features">features: <ahref="../../objects/teamwork/SquadFeatures.html"name="net.psforever.objects.teamwork.SquadFeatures"id="net.psforever.objects.teamwork.SquadFeatures"class="extype">SquadFeatures</a></span>, <spanname="subscriptions">subscriptions: <ahref="SquadSubscriptionEntity.html"name="net.psforever.services.teamwork.SquadSubscriptionEntity"id="net.psforever.services.teamwork.SquadSubscriptionEntity"class="extype">SquadSubscriptionEntity</a></span>)</span></span><pclass="shortcomment cmt"></p><divclass="fullcomment"><divclass="comment cmt"></div><dlclass="paramcmts block"><dtclass="param">features</dt><ddclass="cmt"><p>squad and associated information about the squad</p></dd><dtclass="param">subscriptions</dt><ddclass="cmt"><p>individually-connected subscription service</p></dd></dl></div></li></ol></div><divid="types"class="types members"><h3>Type Members</h3><ol><liclass="indented0 "name="akka.actor.Actor.Receive"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="Receive=akka.actor.Actor.Receive"class="anchorToMember"></a><aid="Receive:Receive"class="anchor
This operation is fairly safe to call whenever a player is to be inducted into a squad.</p><divclass="fullcomment"><divclass="comment cmt"><p>Behaviors and exchanges necessary to complete the fulfilled recruitment process for the squad role.<br>
<br>
This operation is fairly safe to call whenever a player is to be inducted into a squad.
The aforementioned player must have a callback retained in <code>subs.UserEvents</code>
and conditions imposed by both the role and the player must be satisfied.</p></div><dlclass="paramcmts block"><dtclass="param">player</dt><ddclass="cmt"><p>the new squad member;
this player is NOT the squad leader</p></dd><dtclass="param">position</dt><ddclass="cmt"><p>the squad member role that the player will be filling</p></dd><dtclass="param">sendTo</dt><ddclass="cmt"><p>a specific client callback</p></dd></dl><dlclass="attributes block"><dt>See also</dt><dd><spanclass="cmt"><p><code>InitialAssociation</code></p></span><spanclass="cmt"><p><code>InitSquadDetail</code></p></span><spanclass="cmt"><p><code>InitWaypoints</code></p></span><spanclass="cmt"><p><code>Publish</code></p></span><spanclass="cmt"><p><code>CleanUpAllInvitesWithPlayer</code></p></span><spanclass="cmt"><p><code>SquadDetail</code></p></span><spanclass="cmt"><p><code>SquadInfo</code></p></span><spanclass="cmt"><p><code>SquadPositionDetail</code></p></span><spanclass="cmt"><p><code>SquadPositionEntry</code></p></span><spanclass="cmt"><p><code>SquadResponse.Join</code></p></span><spanclass="cmt"><p><code>StatConverter.Health</code></p></span><spanclass="cmt"><p><code>UpdateSquadListWhenListed</code></p></span></dd></dl></div></li><liclass="indented0 "name="net.psforever.services.teamwork.SquadSwitchboard#LeaveSquad"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="LeaveSquad(charId:Long):Boolean"class="anchorToMember"></a><aid="LeaveSquad(Long):Boolean"class="anchorToMember"></a><spanclass="permalink"><ahref="../../../../net/psforever/services/teamwork/SquadSwitchboard.html#LeaveSquad(charId:Long):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">LeaveSquad</span><spanclass="params">(<spanname="charId">charId: <spanname="scala.Long"class="extype">Long</span></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><pclass="shortcomment cmt">Behaviors and exchanges necessary to undo the recruitment process for the squad role.</p><divclass="fullcomment"><divclass="comment cmt"><p>Behaviors and exchanges necessary to undo the recruitment process for the squad role.</p></div><dlclass="paramcmts block"><dtclass="param">charId</dt><ddclass="cmt"><p>the player</p></dd><dt>returns</dt><ddclass="cmt"><p><code>true</code>, if the player, formerly a normal member of the squad, has been ejected from the squad;