class Zone extends AnyRef

A server object representing the one-landmass planets as well as the individual subterranean caverns.

The concept of a "zone" is synonymous to the common vernacular "continent," commonly referred by names such as Hossin or Ishundar and internally identified as c2 and c7, respectively. A Zone is composed of the abstracted concept of all the information pertinent for the simulation of the environment. That is, "everything about the continent." Physically, server objects and dynamic game objects are maintained through a local unique identifier system. Static server objects originate from the ZoneMap. Dynamic game objects originate from player characters. (Write more later.)

Source
Zone.scala
See also

ZoneMap
LoadMapMessage
LivePlayerList

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Zone
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Zone(id: String, map: ZoneMap, zoneNumber: Int)

    id

    the privileged name that can be used as the second parameter in the packet LoadMapMessage

    map

    the map of server objects upon which this Zone is based

    zoneNumber

    the numerical index of the Zone as it is recognized in a variety of packets; also used by LivePlayerList to indicate a specific Zone

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def Activity: ActorRef
  5. def Activity_=(bus: ActorRef): ActorRef
  6. def AddPool(name: String, pool: Seq[Int]): Boolean

    Wraps around the globally unique identifier system to insert a new number pool.

    Wraps around the globally unique identifier system to insert a new number pool. Throws exceptions for specific reasons if the pool can not be populated before the system has been started.

    name

    the name of the pool

    pool

    the numbers that will belong to the pool

    returns

    true, if the new pool is created; false, if the new pool can not be created because the system has already been started

    See also

    NumberPoolHub.AddPool

  7. def AvatarEvents: ActorRef
  8. def AvatarEvents_=(bus: ActorRef): ActorRef
  9. def Building(name: String): Option[Building]
  10. def Building(id: Int): Option[Building]
  11. def BuildingByMapId(map_id: Int): Option[Building]
  12. def Buildings: Map[Int, Building]
  13. def ClientInitialization(): Zone

    Provide bulk correspondence on all map entities that can be composed into packet messages and reported to a client.

    Provide bulk correspondence on all map entities that can be composed into packet messages and reported to a client. These messages are sent in this fashion at the time of joining the server:
    - BuildingInfoUpdateMessage
    - DensityLevelUpdateMessage
    - BroadcastWarpgateUpdateMessage
    - CaptureFlagUpdateMessage
    - ContinentalLockUpdateMessage
    - ModuleLimitsMessage
    - VanuModuleUpdateMessage
    - ZoneForcedCavernConnectionMessage
    - ZoneInfoMessage
    - ZoneLockInfoMessage
    - ZonePopulationUpdateMessage

    returns

    the Zone object

  14. def Corpses: List[Player]
  15. def CreateTaskResolvers(context: ActorContext, numberCreated: Int = 20): ActorRef
    Attributes
    protected
  16. def DeployableList: List[PlanetSideGameObject with Deployable]
  17. def Deployables: ActorRef
  18. def EquipmentOnGround: List[Equipment]

    The List of items (Equipment) dropped by players on the ground and can be collected again.

    The List of items (Equipment) dropped by players on the ground and can be collected again.

    returns

    the List of Equipment

  19. def GUID(object_guid: Int): Option[PlanetSideGameObject]

    Recover an object from the globally unique identifier system by the number that was assigned previously.

    Recover an object from the globally unique identifier system by the number that was assigned previously. The object must be upcast into due to the differtence between the storage type and the return type.

    object_guid

    the globally unique identifier requested

    returns

    the associated object, if it exists

    See also

    NumberPoolHub(Int)

  20. def GUID(object_guid: PlanetSideGUID): Option[PlanetSideGameObject]

    Recover an object from the globally unique identifier system by the number that was assigned previously.

    Recover an object from the globally unique identifier system by the number that was assigned previously.

    object_guid

    the globally unique identifier requested

    returns

    the associated object, if it exists

    See also

    GUID(Int)

  21. def GUID(object_guid: Option[PlanetSideGUID]): Option[PlanetSideGameObject]

    Recover an object from the globally unique identifier system by the number that was assigned previously.

    Recover an object from the globally unique identifier system by the number that was assigned previously.

    object_guid

    the globally unique identifier requested

    returns

    the associated object, if it exists

    See also

    GUID(Int)

  22. def GUID(hub: NumberPoolHub): Boolean

    Replace the current globally unique identifier system with a new one.

    Replace the current globally unique identifier system with a new one. The replacement will not occur if the current system is populated or if its synchronized reference has been created. The primary use of this function should be testing. A warning will be issued.

    returns

    synchronized reference to the globally unique identifier system

  23. def GUID: ActorRef

    The globally unique identifier system is synchronized via an Actor to ensure that concurrent requests do not clash.

    The globally unique identifier system is synchronized via an Actor to ensure that concurrent requests do not clash. A clash is merely when the same number is produced more than once by the same system due to concurrent requests.

    returns

    synchronized reference to the globally unique identifier system

  24. def Ground: ActorRef

    Coordinate Equipment that has been dropped on the ground or to-be-dropped on the ground.

    Coordinate Equipment that has been dropped on the ground or to-be-dropped on the ground.

    returns

    synchronized reference to the ground

    See also

    ZoneGroundActor
    Zone.DropItemOnGround
    Zone.GetItemOnGround
    Zone.ItemFromGround

  25. def HotSpotCoordinateFunction: (Vector3) => Vector3
  26. def HotSpotCoordinateFunction_=(func: (Vector3) => Vector3): (Vector3) => Vector3
  27. def HotSpotData: List[HotSpotInfo]
  28. def HotSpotTimeFunction: (SourceEntry, SourceEntry) => FiniteDuration
  29. def HotSpotTimeFunction_=(func: (SourceEntry, SourceEntry) => FiniteDuration): (SourceEntry, SourceEntry) => FiniteDuration
  30. def HotSpots: List[HotSpotInfo]
  31. def Lattice: Graph[Building, UnDiEdge]
  32. def LivePlayers: List[Player]
  33. def LocalEvents: ActorRef
  34. def LocalEvents_=(bus: ActorRef): ActorRef
  35. def Number: Int

    The numerical index of the Zone as it is recognized in a variety of packets.

    The numerical index of the Zone as it is recognized in a variety of packets.

    returns

    the abstract index position of this Zone

  36. def Players: List[Avatar]
  37. def Population: ActorRef
  38. def RemovePool(name: String): Boolean

    Wraps around the globally unique identifier system to remove an existing number pool.

    Wraps around the globally unique identifier system to remove an existing number pool. Throws exceptions for specific reasons if the pool can not be removed before the system has been started.

    name

    the name of the pool

    returns

    true, if the new pool is un-made; false, if the new pool can not be removed because the system has already been started

    See also

    NumberPoolHub.RemovePool

  39. def SetupNumberPools(): Unit
  40. def SpawnGroups(spawns: (Building, List[SpawnPoint])): Map[Building, List[SpawnPoint]]
  41. def SpawnGroups(buildingId: Int): List[SpawnPoint]
  42. def SpawnGroups(building: Building): List[SpawnPoint]
  43. def SpawnGroups(): Map[Building, List[SpawnPoint]]
  44. def StartPlayerManagementSystems(): Unit
  45. def StopPlayerManagementSystems(): Unit
  46. def Transport: ActorRef
  47. def VehicleEvents: ActorRef
  48. def VehicleEvents_=(bus: ActorRef): ActorRef
  49. def Vehicles: List[Vehicle]
  50. var actor: ActorRef[Command]

    Governs general synchronized external requests.

  51. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  52. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  53. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  54. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  55. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  56. def findNearestSpawnPoints(faction: types.PlanetSideEmpire.Value, location: Vector3, spawnGroups: Seq[SpawnGroup]): Option[List[SpawnPoint]]
  57. def findSpawns(faction: types.PlanetSideEmpire.Value, spawnGroups: Seq[SpawnGroup]): List[(AmenityOwner, Iterable[SpawnPoint])]
  58. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  59. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  60. val id: String
  61. def init(implicit context: ActorContext): Unit

    Establish the basic accessible conditions necessary for a functional Zone.

    Called from the Actor that governs this Zone when it is passed a constructor reference to the Zone.

    Establish the basic accessible conditions necessary for a functional Zone.

    Called from the Actor that governs this Zone when it is passed a constructor reference to the Zone. Specifically, the order of calling follows: InterstellarCluster.preStart -> ZoneActor.receive(Zone.Init()) -> Zone.Init. The basic method performs three main operations. First, the Actor-driven aspect of the globally unique identifier system for this Zone is finalized. Second, all supporting Actor agents are created, e.g., ground. Third, the ZoneMap server objects are loaded and constructed within that aforementioned system. To avoid being called more than once, there is a test whether the accessor for the globally unique identifier system has been changed.

    Execution of this operation should be fail-safe. The chances of failure should be mitigated or skipped. A testing routine should be run after the fact on the results of the process.

    context

    a reference to an ActorContext necessary for Props

    See also

    ZoneActor.ZoneSetupCheck

  62. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  63. val map: ZoneMap
  64. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  65. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  66. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  67. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  68. def tasks: ActorRef
  69. def toString(): String
    Definition Classes
    AnyRef → Any
  70. def validate(): Unit
  71. def validateObject(objectGuid: Int, test: (PlanetSideGameObject) => Boolean, description: String)(implicit log: Logger): Boolean

    Recover an object from a collection and perform any number of validating tests upon it.

    Recover an object from a collection and perform any number of validating tests upon it. If the object fails any tests, log an error.

    objectGuid

    the unique indentifier being checked against the guid access point

    test

    a test for the discovered object; expects at least Type checking

    description

    an explanation of how the object, if not discovered, should be identified

    returns

    true if the object was discovered and validates correctly; false if the object failed any tests

  72. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  73. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  74. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  75. def zipLinePaths: List[ZipLinePath]

Inherited from AnyRef

Inherited from Any

Ungrouped