mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-02-19 22:53:41 +00:00
69 lines
66 KiB
HTML
69 lines
66 KiB
HTML
<!DOCTYPE html ><html><head><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport"/><title>PSF-LoginServer - master - net.psforever.services.CavernRotationService</title><meta content="PSF - LoginServer - master - net.psforever.services.CavernRotationService" name="description"/><meta content="PSF LoginServer master net.psforever.services.CavernRotationService" name="keywords"/><meta http-equiv="content-type" content="text/html; charset=UTF-8"/><link href="../../../lib/index.css" media="screen" type="text/css" rel="stylesheet"/><link href="../../../lib/template.css" media="screen" type="text/css" rel="stylesheet"/><link href="../../../lib/print.css" media="print" type="text/css" rel="stylesheet"/><link href="../../../lib/diagrams.css" media="screen" type="text/css" rel="stylesheet" id="diagrams-css"/><script type="text/javascript" src="../../../lib/jquery.min.js"></script><script type="text/javascript" src="../../../lib/index.js"></script><script type="text/javascript" src="../../../index.js"></script><script type="text/javascript" src="../../../lib/scheduler.js"></script><script type="text/javascript" src="../../../lib/template.js"></script><script type="text/javascript">/* this variable can be used by the JS to determine the path to the root document */
|
|
var toRoot = '../../../';</script></head><body><div id="search"><span id="doc-title">PSF-LoginServer - <span id="doc-version">master</span></span> <span class="close-results"><span class="left"><</span> Back</span><div id="textfilter"><span class="input"><input autocapitalize="none" placeholder="Search" id="index-input" type="text" accesskey="/"/><i class="clear material-icons"></i><i id="search-icon" class="material-icons"></i></span></div></div><div id="search-results"><div id="search-progress"><div id="progress-fill"></div></div><div id="results-content"><div id="entity-results"></div><div id="member-results"></div></div></div><div id="content-scroll-container" style="-webkit-overflow-scrolling: touch;"><div id="content-container" style="-webkit-overflow-scrolling: touch;"><div id="subpackage-spacer"><div id="packages"><h1>Packages</h1><ul><li class="indented0 " name="_root_.root" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="_root_"></a><a id="root:_root_"></a> <span class="permalink"><a href="../../../index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="../../../index.html" title=""><span class="name">root</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../../../index.html" name="_root_" id="_root_" class="extype">root</a></dd></dl></div></li><li class="indented1 " name="_root_.net" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="net"></a><a id="net:net"></a> <span class="permalink"><a href="../../../net/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="../../index.html" title=""><span class="name">net</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../../../index.html" name="_root_" id="_root_" class="extype">root</a></dd></dl></div></li><li class="indented2 " name="net.psforever" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="psforever"></a><a id="psforever:psforever"></a> <span class="permalink"><a href="../../../net/psforever/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="../index.html" title=""><span class="name">psforever</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../../index.html" name="net" id="net" class="extype">net</a></dd></dl></div></li><li class="indented3 " name="net.psforever.services" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="services"></a><a id="services:services"></a> <span class="permalink"><a href="../../../net/psforever/services/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="index.html" title=""><span class="name">services</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../index.html" name="net.psforever" id="net.psforever" class="extype">psforever</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.account" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="account"></a><a id="account:account"></a> <span class="permalink"><a href="../../../net/psforever/services/account/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="account/index.html" title=""><span class="name">account</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.avatar" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="avatar"></a><a id="avatar:avatar"></a> <span class="permalink"><a href="../../../net/psforever/services/avatar/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="avatar/index.html" title=""><span class="name">avatar</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.chat" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="chat"></a><a id="chat:chat"></a> <span class="permalink"><a href="../../../net/psforever/services/chat/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="chat/index.html" title=""><span class="name">chat</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.galaxy" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="galaxy"></a><a id="galaxy:galaxy"></a> <span class="permalink"><a href="../../../net/psforever/services/galaxy/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="galaxy/index.html" title=""><span class="name">galaxy</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.hart" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="hart"></a><a id="hart:hart"></a> <span class="permalink"><a href="../../../net/psforever/services/hart/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="hart/index.html" title=""><span class="name">hart</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.local" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="local"></a><a id="local:local"></a> <span class="permalink"><a href="../../../net/psforever/services/local/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="local/index.html" title=""><span class="name">local</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.properties" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="properties"></a><a id="properties:properties"></a> <span class="permalink"><a href="../../../net/psforever/services/properties/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="properties/index.html" title=""><span class="name">properties</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.support" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="support"></a><a id="support:support"></a> <span class="permalink"><a href="../../../net/psforever/services/support/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="support/index.html" title=""><span class="name">support</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.teamwork" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="teamwork"></a><a id="teamwork:teamwork"></a> <span class="permalink"><a href="../../../net/psforever/services/teamwork/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="teamwork/index.html" title=""><span class="name">teamwork</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.vehicle" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="vehicle"></a><a id="vehicle:vehicle"></a> <span class="permalink"><a href="../../../net/psforever/services/vehicle/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="vehicle/index.html" title=""><span class="name">vehicle</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></dd></dl></div></li><li class="current-entities indented3"><a href="CavernRotationService$.html" title="" class="object"></a> <a href="" title="A service that assists routine access to a series of game zones through the manipulation of connections between transmit point structures. The caverns were a group of game zones that were intended to be situated underground." class="class"></a><a href="" title="A service that assists routine access to a series of game zones through the manipulation of connections between transmit point structures. The caverns were a group of game zones that were intended to be situated underground.">CavernRotationService</a></li><li class="current-entities indented3"><span class="separator"></span> <a href="GenericEventBus.html" title="" class="class"></a><a href="GenericEventBus.html" title="">GenericEventBus</a></li><li class="current-entities indented3"><span class="separator"></span> <a href="GenericEventBusMsg.html" title="" class="trait"></a><a href="GenericEventBusMsg.html" title="">GenericEventBusMsg</a></li><li class="current-entities indented3"><a href="InterstellarClusterService$.html" title="" class="object"></a> <a href="InterstellarClusterService.html" title="" class="class"></a><a href="InterstellarClusterService.html" title="">InterstellarClusterService</a></li><li class="current-entities indented3"><a href="RemoverActor$.html" title="" class="object"></a> <a href="RemoverActor.html" title="The base class for a type of "destruction Actor" intended to be used for delaying object cleanup activity." class="class"></a><a href="RemoverActor.html" title="The base class for a type of "destruction Actor" intended to be used for delaying object cleanup activity.">RemoverActor</a></li><li class="current-entities indented3"><span class="separator"></span> <a href="Service$.html" title="" class="object"></a><a href="Service$.html" title="">Service</a></li><li class="current-entities indented3"><a href="ServiceManager$.html" title="" class="object"></a> <a href="ServiceManager.html" title="" class="class"></a><a href="ServiceManager.html" title="">ServiceManager</a></li></ul></div></div><div id="content"><body class="class type"><div id="definition"><a href="CavernRotationService$.html" title="See companion object"><div class="big-circle class-companion-object">c</div></a><p id="owner"><a href="../../index.html" name="net" id="net" class="extype">net</a>.<a href="../index.html" name="net.psforever" id="net.psforever" class="extype">psforever</a>.<a href="index.html" name="net.psforever.services" id="net.psforever.services" class="extype">services</a></p><h1><a href="CavernRotationService$.html" title="See companion object">CavernRotationService</a><span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html" title="Permalink"><i class="material-icons"></i></a></span></h1><h3><span class="morelinks"><div>Companion <a href="CavernRotationService$.html" title="See companion object">object CavernRotationService</a></div></span></h3></div><h4 id="signature" class="signature"><span class="modifier_kind"><span class="modifier"></span> <span class="kind">class</span></span> <span class="symbol"><span class="name">CavernRotationService</span><span class="result"> extends <span name="scala.AnyRef" class="extype">AnyRef</span></span></span></h4><div id="comment" class="fullcommenttop"><div class="comment cmt"><p>A service that assists routine access to a series of game zones
|
|
through the manipulation of connections between transmit point structures.<br>
|
|
<br>
|
|
The caverns were a group of game zones that were intended to be situated underground.
|
|
Access to the caverns was only sometimes possible
|
|
through the use of special above-ground warp gates called geowarps (geowarp gates)
|
|
and those geowarps were not always functional.
|
|
Usually, two caverns were available at a time and connections to these caverns were fixed
|
|
to specific active geowarp gates.
|
|
The changing availability of the caverns through the change of geowarp gate activity
|
|
was colloquially referred to as a "rotation" since it followed a predictable cycle.
|
|
The cycle was not just one of time but one of route
|
|
as one specific geowarp gates would open to the same destination cavern.<br>
|
|
<br>
|
|
The client controls warp gate destinations.
|
|
The server can only confirm those destinations.
|
|
The connectivity of a geowarp gate to a cavern warp gate had to have been determined
|
|
by opening the cavern with an appropriate packet
|
|
and checking the map description of the cavern gates.
|
|
The description text explains which of the geowarp gates in whichever zone has been connected; and,
|
|
where usually static and inanimate, that geowarp gate will bubble online and begin to rotate
|
|
and have a complementary destination map description.
|
|
Opening different combinations of caverns changes the destination these warp gate pairs will connect
|
|
and not always being connected at all.
|
|
The warp gate pairs for the cavern connections must be re-evaluated for each combination and with each rotation
|
|
and all relevant pairings must be defined in advance.</p></div><dl class="attributes block"><dt>Source</dt><dd><a href="https://github.com/psforever/PSF-LoginServer/blob/master//home/runner/work/PSF-LoginServer/PSF-LoginServer/src/main/scala/net/psforever/services/CavernRotationService.scala" target="_blank">CavernRotationService.scala</a></dd><dt>See also</dt><dd><span class="cmt"><p><code>ActorContext</code></p></span><span class="cmt"><p><code>Building</code></p></span><span class="cmt"><p><code>ChatMsg</code></p></span><span class="cmt"><p><code>Config.app.game.cavernRotation</code></p></span><span class="cmt"><p><code>GalaxyService</code></p></span><span class="cmt"><p><code>GalaxyAction.LockedZoneUpdate</code></p></span><span class="cmt"><p><code>GalaxyResponse.UnlockedZoneUpdate</code></p></span><span class="cmt"><p><code>InterstellarClusterService</code></p></span><span class="cmt"><p><code>org.log4s.getLogger</code></p></span><span class="cmt"><p><code>resources/zonemaps/lattice.json</code></p></span><span class="cmt"><p><code>SessionActor</code></p></span><span class="cmt"><p><code>SessionActor.SendResponse</code></p></span><span class="cmt"><p><code>StashBuffer</code></p></span><span class="cmt"><p><code>WarpGate</code></p></span><span class="cmt"><p><code>Zone</code></p></span><span class="cmt"><p><code>ZoneForcedCavernConnectionsMessage</code></p></span><span class="cmt"><p><code>ZoneInfoMessage</code></p></span></dd></dl><div class="toggleContainer"><div class="toggle block"><span>Linear Supertypes</span><div class="superTypes hiddenContent"><span name="scala.AnyRef" class="extype">AnyRef</span>, <span name="scala.Any" class="extype">Any</span></div></div></div></div><div id="mbrsel"><div class="toggle"></div><div id="memberfilter"><i class="material-icons arrow"></i><span class="input"><input placeholder="Filter all members" id="mbrsel-input" type="text" accesskey="/"/></span><i class="clear material-icons"></i></div><div id="filterby"><div id="order"><span class="filtertype">Ordering</span><ol><li class="alpha in"><span>Alphabetic</span></li><li class="inherit out"><span>By Inheritance</span></li></ol></div><div class="ancestors"><span class="filtertype">Inherited<br/></span><ol id="linearization"><li class="in" name="net.psforever.services.CavernRotationService"><span>CavernRotationService</span></li><li class="in" name="scala.AnyRef"><span>AnyRef</span></li><li class="in" name="scala.Any"><span>Any</span></li></ol></div><div class="ancestors"><span class="filtertype"></span><ol><li class="hideall out"><span>Hide All</span></li><li class="showall in"><span>Show All</span></li></ol></div><div id="visbl"><span class="filtertype">Visibility</span><ol><li class="public in"><span>Public</span></li><li class="protected out"><span>Protected</span></li></ol></div></div></div><div id="template"><div id="allMembers"><div id="constructors" class="members"><h3>Instance Constructors</h3><ol><li class="indented0 " name="net.psforever.services.CavernRotationService#<init>" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="<init>(context:akka.actor.typed.scaladsl.ActorContext[net.psforever.services.CavernRotationService.Command],buffer:akka.actor.typed.scaladsl.StashBuffer[net.psforever.services.CavernRotationService.Command]):net.psforever.services.CavernRotationService"></a><a id="<init>:CavernRotationService"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#<init>(context:akka.actor.typed.scaladsl.ActorContext[net.psforever.services.CavernRotationService.Command],buffer:akka.actor.typed.scaladsl.StashBuffer[net.psforever.services.CavernRotationService.Command]):net.psforever.services.CavernRotationService" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">new</span></span> <span class="symbol"><span class="name">CavernRotationService</span><span class="params">(<span name="context">context: <span name="akka.actor.typed.scaladsl.ActorContext" class="extype">ActorContext</span>[<a href="CavernRotationService$$Command.html" name="net.psforever.services.CavernRotationService.Command" id="net.psforever.services.CavernRotationService.Command" class="extype">Command</a>]</span>, <span name="buffer">buffer: <span name="akka.actor.typed.scaladsl.StashBuffer" class="extype">StashBuffer</span>[<a href="CavernRotationService$$Command.html" name="net.psforever.services.CavernRotationService.Command" id="net.psforever.services.CavernRotationService.Command" class="extype">Command</a>]</span>)</span></span></li></ol></div><div class="values members"><h3>Value Members</h3><ol><li class="indented0 " name="scala.AnyRef#!=" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="!=(x$1:Any):Boolean"></a><a id="!=(Any):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#!=(x$1:Any):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $bang$eq">!=</span><span class="params">(<span name="arg0">arg0: <span name="scala.Any" class="extype">Any</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef###" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="##:Int"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html###:Int" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $hash$hash">##</span><span class="result">: <span name="scala.Int" class="extype">Int</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef#==" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="==(x$1:Any):Boolean"></a><a id="==(Any):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#==(x$1:Any):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $eq$eq">==</span><span class="params">(<span name="arg0">arg0: <span name="scala.Any" class="extype">Any</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#active" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="active(galaxyService:akka.actor.ActorRef):akka.actor.typed.Behavior[net.psforever.services.CavernRotationService.Command]"></a><a id="active(ActorRef):Behavior[Command]"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#active(galaxyService:akka.actor.ActorRef):akka.actor.typed.Behavior[net.psforever.services.CavernRotationService.Command]" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">active</span><span class="params">(<span name="galaxyService">galaxyService: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>)</span><span class="result">: <span name="akka.actor.typed.Behavior" class="extype">Behavior</span>[<a href="CavernRotationService$$Command.html" name="net.psforever.services.CavernRotationService.Command" id="net.psforever.services.CavernRotationService.Command" class="extype">Command</a>]</span></span></li><li class="indented0 " name="scala.Any#asInstanceOf" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="asInstanceOf[T0]:T0"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#asInstanceOf[T0]:T0" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">asInstanceOf</span><span class="tparams">[<span name="T0">T0</span>]</span><span class="result">: <span name="scala.Any.asInstanceOf.T0" class="extype">T0</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef#clone" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="prt"><a id="clone():Object"></a><a id="clone():AnyRef"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#clone():Object" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">clone</span><span class="params">()</span><span class="result">: <span name="scala.AnyRef" class="extype">AnyRef</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Attributes</dt><dd>protected[<span name="java.lang" class="extype">lang</span>] </dd><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><span class="name">@throws</span><span class="args">(<span><span class="defval">classOf[java.lang.CloneNotSupportedException]</span></span>)</span> <span class="name">@native</span><span class="args">()</span> </dd></dl></div></li><li class="indented0 " name="scala.AnyRef#eq" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="eq(x$1:AnyRef):Boolean"></a><a id="eq(AnyRef):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#eq(x$1:AnyRef):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">eq</span><span class="params">(<span name="arg0">arg0: <span name="scala.AnyRef" class="extype">AnyRef</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd></dl></div></li><li class="indented0 " name="scala.AnyRef#equals" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="equals(x$1:Object):Boolean"></a><a id="equals(AnyRef):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#equals(x$1:Object):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">equals</span><span class="params">(<span name="arg0">arg0: <span name="scala.AnyRef" class="extype">AnyRef</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef#finalize" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="prt"><a id="finalize():Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#finalize():Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">finalize</span><span class="params">()</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Attributes</dt><dd>protected[<span name="java.lang" class="extype">lang</span>] </dd><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><span class="name">@throws</span><span class="args">(<span><span class="symbol">classOf[java.lang.Throwable]</span></span>)</span> </dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#firstClosingWarningAtMinutes" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="firstClosingWarningAtMinutes:Int"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#firstClosingWarningAtMinutes:Int" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">val</span></span> <span class="symbol"><span class="name">firstClosingWarningAtMinutes</span><span class="result">: <span name="scala.Int" class="extype">Int</span></span></span><p class="shortcomment cmt">how long before any given cavern closure that the first closing message is shown (minutes)</p></li><li class="indented0 " name="scala.AnyRef#getClass" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="getClass():Class[_]"></a><a id="getClass():Class[_<:AnyRef]"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#getClass():Class[_]" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">getClass</span><span class="params">()</span><span class="result">: <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html#java.lang.Class" name="java.lang.Class" id="java.lang.Class" class="extype">Class</a>[_ <: <span name="scala.AnyRef" class="extype">AnyRef</span>]</span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd><dt>Annotations</dt><dd><span class="name">@native</span><span class="args">()</span> </dd></dl></div></li><li class="indented0 " name="scala.AnyRef#hashCode" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="hashCode():Int"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#hashCode():Int" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">hashCode</span><span class="params">()</span><span class="result">: <span name="scala.Int" class="extype">Int</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd><dt>Annotations</dt><dd><span class="name">@native</span><span class="args">()</span> </dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#hurryNextRotation" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="hurryNextRotation(galaxyService:akka.actor.ActorRef,forcedRotationOverride:Boolean):Unit"></a><a id="hurryNextRotation(ActorRef,Boolean):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#hurryNextRotation(galaxyService:akka.actor.ActorRef,forcedRotationOverride:Boolean):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">hurryNextRotation</span><span class="params">(<span name="galaxyService">galaxyService: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>, <span name="forcedRotationOverride">forcedRotationOverride: <span name="scala.Boolean" class="extype">Boolean</span> = <span class="symbol">false</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Progress to the next significant cavern rotation event.<br>
|
|
<br>
|
|
If the time until the next rotation is greater than the time where the cavern closing warning would be displayed,
|
|
progress to that final cavern closing warning.</p><div class="fullcomment"><div class="comment cmt"><p>Progress to the next significant cavern rotation event.<br>
|
|
<br>
|
|
If the time until the next rotation is greater than the time where the cavern closing warning would be displayed,
|
|
progress to that final cavern closing warning.
|
|
Adjust the timing for that advancement.
|
|
If the final cavern closing warning was already displayed,
|
|
just perform the cavern rotation.</p></div><dl class="paramcmts block"><dt class="param">galaxyService</dt><dd class="cmt"><p>callback to update the server and clients;
|
|
should be the reference to <code>GalaxyService</code>, hence the literal name</p></dd><dt class="param">forcedRotationOverride</dt><dd class="cmt"><p>force a cavern rotation in a case where a closing warning would be displayed instead</p></dd></dl><dl class="attributes block"><dt>See also</dt><dd><span class="cmt"><p><code>GalaxyService</code></p></span></dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#hurryRotationToZoneLock" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="hurryRotationToZoneLock(zoneid:String,galaxyService:akka.actor.ActorRef):Boolean"></a><a id="hurryRotationToZoneLock(String,ActorRef):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#hurryRotationToZoneLock(zoneid:String,galaxyService:akka.actor.ActorRef):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">hurryRotationToZoneLock</span><span class="params">(<span name="zoneid">zoneid: <span name="scala.Predef.String" class="extype">String</span></span>, <span name="galaxyService">galaxyService: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><p class="shortcomment cmt">na</p><div class="fullcomment"><div class="comment cmt"><p>na</p></div><dl class="paramcmts block"><dt class="param">zoneid</dt><dd class="cmt"><p>zone to lock next</p></dd><dt class="param">galaxyService</dt><dd class="cmt"><p>callback to update the server and clients;
|
|
should be the reference to <code>GalaxyService</code>, hence the literal name</p></dd><dt>returns</dt><dd class="cmt"><p><code>true</code>, if the target zone is locked when complete;
|
|
<code>false</code>, otherwise</p></dd></dl><dl class="attributes block"><dt>See also</dt><dd><span class="cmt"><p><code>GalaxyService</code></p></span></dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#hurryRotationToZoneUnlock" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="hurryRotationToZoneUnlock(zoneid:String,galaxyService:akka.actor.ActorRef):Boolean"></a><a id="hurryRotationToZoneUnlock(String,ActorRef):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#hurryRotationToZoneUnlock(zoneid:String,galaxyService:akka.actor.ActorRef):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">hurryRotationToZoneUnlock</span><span class="params">(<span name="zoneid">zoneid: <span name="scala.Predef.String" class="extype">String</span></span>, <span name="galaxyService">galaxyService: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><p class="shortcomment cmt">na</p><div class="fullcomment"><div class="comment cmt"><p>na</p></div><dl class="paramcmts block"><dt class="param">zoneid</dt><dd class="cmt"><p>zone to unlock next</p></dd><dt class="param">galaxyService</dt><dd class="cmt"><p>callback to update the server and clients;
|
|
should be the reference to <code>GalaxyService</code>, hence the literal name</p></dd><dt>returns</dt><dd class="cmt"><p><code>true</code>, if the target zone is unlocked when complete;
|
|
<code>false</code>, otherwise</p></dd></dl><dl class="attributes block"><dt>See also</dt><dd><span class="cmt"><p><code>GalaxyService</code></p></span></dd></dl></div></li><li class="indented0 " name="scala.Any#isInstanceOf" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="isInstanceOf[T0]:Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#isInstanceOf[T0]:Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">isInstanceOf</span><span class="tparams">[<span name="T0">T0</span>]</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>Any</dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#lockTimer" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="lockTimer:akka.actor.Cancellable"></a><a id="lockTimer:Cancellable"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#lockTimer:akka.actor.Cancellable" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">var</span></span> <span class="symbol"><span class="name">lockTimer</span><span class="result">: <span name="akka.actor.Cancellable" class="extype">Cancellable</span></span></span><p class="shortcomment cmt">timer for cavern rotation - the cavern closing warning</p></li><li class="indented0 " name="net.psforever.services.CavernRotationService#lockTimerToDisplayWarning" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="lockTimerToDisplayWarning(duration:scala.concurrent.duration.FiniteDuration,counter:Int):Unit"></a><a id="lockTimerToDisplayWarning(FiniteDuration,Int):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#lockTimerToDisplayWarning(duration:scala.concurrent.duration.FiniteDuration,counter:Int):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">lockTimerToDisplayWarning</span><span class="params">(<span name="duration">duration: <span name="scala.concurrent.duration.FiniteDuration" class="extype">FiniteDuration</span></span>, <span name="counter">counter: <span name="scala.Int" class="extype">Int</span> = <span class="symbol"><span class="name"><a href="#firstClosingWarningAtMinutes:Int">firstClosingWarningAtMinutes</a></span></span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Update the timer for the cavern closing message.</p><div class="fullcomment"><div class="comment cmt"><p>Update the timer for the cavern closing message.</p></div><dl class="paramcmts block"><dt class="param">duration</dt><dd class="cmt"><p>new time until message display</p></dd><dt class="param">counter</dt><dd class="cmt"><p>the counter that indicates the next message to display</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#manageCaverns" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="manageCaverns(zones:Seq[net.psforever.objects.zones.Zone]):Boolean"></a><a id="manageCaverns(Seq[Zone]):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#manageCaverns(zones:Seq[net.psforever.objects.zones.Zone]):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">manageCaverns</span><span class="params">(<span name="zones">zones: <span name="scala.Seq" class="extype">Seq</span>[<a href="../objects/zones/Zone.html" name="net.psforever.objects.zones.Zone" id="net.psforever.objects.zones.Zone" class="extype">Zone</a>]</span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><p class="shortcomment cmt">na</p><div class="fullcomment"><div class="comment cmt"><p>na</p></div><dl class="paramcmts block"><dt class="param">zones</dt><dd class="cmt"><p>the zones for submission</p></dd><dt>returns</dt><dd class="cmt"><p><code>true</code>, if the setup has been completed;
|
|
<code>false</code>, otherwise</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#managedZones" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="managedZones:List[net.psforever.services.CavernRotationService.ZoneMonitor]"></a><a id="managedZones:List[ZoneMonitor]"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#managedZones:List[net.psforever.services.CavernRotationService.ZoneMonitor]" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">var</span></span> <span class="symbol"><span class="name">managedZones</span><span class="result">: <span name="scala.List" class="extype">List</span>[<a href="CavernRotationService$$ZoneMonitor.html" name="net.psforever.services.CavernRotationService.ZoneMonitor" id="net.psforever.services.CavernRotationService.ZoneMonitor" class="extype">ZoneMonitor</a>]</span></span><p class="shortcomment cmt">monitors for the cavern zones</p></li><li class="indented0 " name="scala.AnyRef#ne" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="ne(x$1:AnyRef):Boolean"></a><a id="ne(AnyRef):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#ne(x$1:AnyRef):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">ne</span><span class="params">(<span name="arg0">arg0: <span name="scala.AnyRef" class="extype">AnyRef</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#nextToLock" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="nextToLock:Int"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#nextToLock:Int" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">var</span></span> <span class="symbol"><span class="name">nextToLock</span><span class="result">: <span name="scala.Int" class="extype">Int</span></span></span><p class="shortcomment cmt">index of the next cavern that will lock</p></li><li class="indented0 " name="net.psforever.services.CavernRotationService#nextToUnlock" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="nextToUnlock:Int"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#nextToUnlock:Int" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">var</span></span> <span class="symbol"><span class="name">nextToUnlock</span><span class="result">: <span name="scala.Int" class="extype">Int</span></span></span><p class="shortcomment cmt">index of the next cavern that will unlock</p></li><li class="indented0 " name="scala.AnyRef#notify" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="notify():Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#notify():Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">notify</span><span class="params">()</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><span class="name">@native</span><span class="args">()</span> </dd></dl></div></li><li class="indented0 " name="scala.AnyRef#notifyAll" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="notifyAll():Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#notifyAll():Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">notifyAll</span><span class="params">()</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><span class="name">@native</span><span class="args">()</span> </dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#reportRotationOrder" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="reportRotationOrder(sendToSession:akka.actor.ActorRef):Unit"></a><a id="reportRotationOrder(ActorRef):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#reportRotationOrder(sendToSession:akka.actor.ActorRef):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">reportRotationOrder</span><span class="params">(<span name="sendToSession">sendToSession: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">na</p><div class="fullcomment"><div class="comment cmt"><p>na</p></div><dl class="paramcmts block"><dt class="param">sendToSession</dt><dd class="cmt"><p>callback reference</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#retimeZonesUponForcedAdvancement" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="retimeZonesUponForcedAdvancement(advanceTimeBy:scala.concurrent.duration.FiniteDuration,galaxyService:akka.actor.ActorRef):Unit"></a><a id="retimeZonesUponForcedAdvancement(FiniteDuration,ActorRef):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#retimeZonesUponForcedAdvancement(advanceTimeBy:scala.concurrent.duration.FiniteDuration,galaxyService:akka.actor.ActorRef):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">retimeZonesUponForcedAdvancement</span><span class="params">(<span name="advanceTimeBy">advanceTimeBy: <span name="scala.concurrent.duration.FiniteDuration" class="extype">FiniteDuration</span></span>, <span name="galaxyService">galaxyService: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">If the natural process of switching between caverns is hurried,
|
|
advance the previous start time of each zone monitor to give the impression of the hastened rotation.</p><div class="fullcomment"><div class="comment cmt"><p>If the natural process of switching between caverns is hurried,
|
|
advance the previous start time of each zone monitor to give the impression of the hastened rotation.
|
|
This does not actually affect the functional timers
|
|
nor is it in response to an actual zone rotation event.
|
|
It only affects the backup parameters of the timers that are maintained by the zone monitors.</p></div><dl class="paramcmts block"><dt class="param">advanceTimeBy</dt><dd class="cmt"><p>amount of time advancement</p></dd><dt class="param">galaxyService</dt><dd class="cmt"><p>callback to update the zone timers;
|
|
should be the reference to <code>GalaxyService</code>, hence the literal name</p></dd></dl><dl class="attributes block"><dt>See also</dt><dd><span class="cmt"><p><code>GalaxyService</code></p></span></dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#retimeZonesUponForcedRotation" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="retimeZonesUponForcedRotation(galaxyService:akka.actor.ActorRef):Unit"></a><a id="retimeZonesUponForcedRotation(ActorRef):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#retimeZonesUponForcedRotation(galaxyService:akka.actor.ActorRef):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">retimeZonesUponForcedRotation</span><span class="params">(<span name="galaxyService">galaxyService: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">If the zones are forced to rotate before the timer would normally complete,
|
|
correct all of the zone monitors to give the impression of the rotation that occurred.</p><div class="fullcomment"><div class="comment cmt"><p>If the zones are forced to rotate before the timer would normally complete,
|
|
correct all of the zone monitors to give the impression of the rotation that occurred.
|
|
Only affect the backup parameters of the timers that are maintained by the zone monitors.
|
|
Do not actually affect the functional timers.</p></div><dl class="paramcmts block"><dt class="param">galaxyService</dt><dd class="cmt"><p>callback to update the zone timers;
|
|
should be the reference to <code>GalaxyService</code>, hence the literal name</p></dd></dl><dl class="attributes block"><dt>See also</dt><dd><span class="cmt"><p><code>GalaxyService</code></p></span></dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#sendCavernRotationUpdates" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="sendCavernRotationUpdates(sendToSession:akka.actor.ActorRef):Unit"></a><a id="sendCavernRotationUpdates(ActorRef):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#sendCavernRotationUpdates(sendToSession:akka.actor.ActorRef):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">sendCavernRotationUpdates</span><span class="params">(<span name="sendToSession">sendToSession: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt"></p><div class="fullcomment"><div class="comment cmt"></div><dl class="paramcmts block"><dt class="param">sendToSession</dt><dd class="cmt"><p>callback reference</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#simultaneousUnlockedZones" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="simultaneousUnlockedZones:Int"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#simultaneousUnlockedZones:Int" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">var</span></span> <span class="symbol"><span class="name">simultaneousUnlockedZones</span><span class="result">: <span name="scala.Int" class="extype">Int</span></span></span></li><li class="indented0 " name="net.psforever.services.CavernRotationService#start" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="start():akka.actor.typed.Behavior[net.psforever.services.CavernRotationService.Command]"></a><a id="start():Behavior[Command]"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#start():akka.actor.typed.Behavior[net.psforever.services.CavernRotationService.Command]" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">start</span><span class="params">()</span><span class="result">: <span name="akka.actor.typed.Behavior" class="extype">Behavior</span>[<a href="CavernRotationService$$Command.html" name="net.psforever.services.CavernRotationService.Command" id="net.psforever.services.CavernRotationService.Command" class="extype">Command</a>]</span></span></li><li class="indented0 " name="scala.AnyRef#synchronized" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="synchronized[T0](x$1:=>T0):T0"></a><a id="synchronized[T0](=>T0):T0"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#synchronized[T0](x$1:=>T0):T0" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">synchronized</span><span class="tparams">[<span name="T0">T0</span>]</span><span class="params">(<span name="arg0">arg0: => <span name="java.lang.AnyRef.synchronized.T0" class="extype">T0</span></span>)</span><span class="result">: <span name="java.lang.AnyRef.synchronized.T0" class="extype">T0</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#timeBetweenRotationsHours" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="timeBetweenRotationsHours:Float"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#timeBetweenRotationsHours:Float" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">val</span></span> <span class="symbol"><span class="name">timeBetweenRotationsHours</span><span class="result">: <span name="scala.Float" class="extype">Float</span></span></span><p class="shortcomment cmt">time between individual cavern rotation events (hours)</p></li><li class="indented0 " name="net.psforever.services.CavernRotationService#timeToCompleteAllRotationsHours" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="timeToCompleteAllRotationsHours:Float"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#timeToCompleteAllRotationsHours:Float" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">var</span></span> <span class="symbol"><span class="name">timeToCompleteAllRotationsHours</span><span class="result">: <span name="scala.Float" class="extype">Float</span></span></span><p class="shortcomment cmt">period of all caverns having rotated (hours)</p></li><li class="indented0 " name="scala.AnyRef#toString" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="toString():String"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#toString():String" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">toString</span><span class="params">()</span><span class="result">: <a href="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><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#unlockTimer" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="unlockTimer:akka.actor.Cancellable"></a><a id="unlockTimer:Cancellable"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#unlockTimer:akka.actor.Cancellable" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">var</span></span> <span class="symbol"><span class="name">unlockTimer</span><span class="result">: <span name="akka.actor.Cancellable" class="extype">Cancellable</span></span></span><p class="shortcomment cmt">timer for cavern rotation - the actual opening and closing functionality</p></li><li class="indented0 " name="net.psforever.services.CavernRotationService#unlockTimerToSwitchZone" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="unlockTimerToSwitchZone(duration:scala.concurrent.duration.FiniteDuration):Unit"></a><a id="unlockTimerToSwitchZone(FiniteDuration):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#unlockTimerToSwitchZone(duration:scala.concurrent.duration.FiniteDuration):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">unlockTimerToSwitchZone</span><span class="params">(<span name="duration">duration: <span name="scala.concurrent.duration.FiniteDuration" class="extype">FiniteDuration</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Update the timer for the zone switching process.</p><div class="fullcomment"><div class="comment cmt"><p>Update the timer for the zone switching process.</p></div><dl class="paramcmts block"><dt class="param">duration</dt><dd class="cmt"><p>new time until switching</p></dd></dl></div></li><li class="indented0 " name="scala.AnyRef#wait" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="wait():Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#wait():Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">wait</span><span class="params">()</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><span class="name">@throws</span><span class="args">(<span><span class="defval">classOf[java.lang.InterruptedException]</span></span>)</span> </dd></dl></div></li><li class="indented0 " name="scala.AnyRef#wait" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="wait(x$1:Long,x$2:Int):Unit"></a><a id="wait(Long,Int):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#wait(x$1:Long,x$2:Int):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">wait</span><span class="params">(<span name="arg0">arg0: <span name="scala.Long" class="extype">Long</span></span>, <span name="arg1">arg1: <span name="scala.Int" class="extype">Int</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><span class="name">@throws</span><span class="args">(<span><span class="defval">classOf[java.lang.InterruptedException]</span></span>)</span> </dd></dl></div></li><li class="indented0 " name="scala.AnyRef#wait" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="wait(x$1:Long):Unit"></a><a id="wait(Long):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#wait(x$1:Long):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">wait</span><span class="params">(<span name="arg0">arg0: <span name="scala.Long" class="extype">Long</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><span class="name">@throws</span><span class="args">(<span><span class="defval">classOf[java.lang.InterruptedException]</span></span>)</span> <span class="name">@native</span><span class="args">()</span> </dd></dl></div></li><li class="indented0 " name="net.psforever.services.CavernRotationService#zoneRotationFunc" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="zoneRotationFunc(galaxyService:akka.actor.ActorRef):Unit"></a><a id="zoneRotationFunc(ActorRef):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/CavernRotationService.html#zoneRotationFunc(galaxyService:akka.actor.ActorRef):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">zoneRotationFunc</span><span class="params">(<span name="galaxyService">galaxyService: <span name="akka.actor.ActorRef" class="extype">ActorRef</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Actually perform zone rotation as determined by the managed zone monitors and the timers.<br>
|
|
<br>
|
|
The process of zone rotation occurs by having a zone that is determined to be closing
|
|
and a zone that is determied to be opening
|
|
and a potential series of zones "in between" the two that are also open.</p><div class="fullcomment"><div class="comment cmt"><p>Actually perform zone rotation as determined by the managed zone monitors and the timers.<br>
|
|
<br>
|
|
The process of zone rotation occurs by having a zone that is determined to be closing
|
|
and a zone that is determied to be opening
|
|
and a potential series of zones "in between" the two that are also open.
|
|
All of the currently opened zones are locked and the zone to be permanently closed is forgotten.
|
|
The zone that should be opening is added to the aforementioned sequence of zones
|
|
and then the zones in that sequence are opened.
|
|
The zones that would otherwise be unaffected by a single zone opening and a single cone closing must be affected
|
|
because the cavern gates will not connect to the same geowarp gates with the change in the sequence.
|
|
After the rotation, the indices to the next closing zone and next opening zone are updated.
|
|
Modifying the zone monitor timekeeping and the actual timers and the indices are the easy parts.</p></div><dl class="paramcmts block"><dt class="param">galaxyService</dt><dd class="cmt"><p>callback to update the server and clients;
|
|
should be the reference to <code>GalaxyService</code>, hence the literal name</p></dd></dl><dl class="attributes block"><dt>See also</dt><dd><span class="cmt"><p><code>GalaxyService</code></p></span></dd></dl></div></li></ol></div></div><div id="inheritedMembers"><div name="scala.AnyRef" class="parent"><h3>Inherited from <span name="scala.AnyRef" class="extype">AnyRef</span></h3></div><div name="scala.Any" class="parent"><h3>Inherited from <span name="scala.Any" class="extype">Any</span></h3></div></div><div id="groupedMembers"><div name="Ungrouped" class="group"><h3>Ungrouped</h3></div></div></div><div id="tooltip"></div><div id="footer"></div></body></div></div></div></body></html>
|