Packages

o

net.psforever.login

WorldSession

object WorldSession

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

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 BuyNewEquipmentPutInInventory(obj: PlanetSideServerObject with Container, player: Player, term: PlanetSideGUID)(item: Equipment): GiveTask

    Used for purchasing new equipment from a terminal and placing it somewhere in a player's loadout.

    Used for purchasing new equipment from a terminal and placing it somewhere in a player's loadout. Two levels of query are performed here based on the behavior expected of the item. First, an attempt is made to place the item anywhere in the target container as long as it does not cause swap items to be generated. Second, if it fails admission to the target container, an attempt is made to place it into the target player's free hand. If the container and the suggested player are the same, it will skip the second attempt. As a terminal operation, the player must receive a report regarding whether the transaction was successful.

    obj

    the container

    player

    na

    term

    na

    item

    the item being manipulated

    returns

    a TaskResolver object

    See also

    ask

    Containable.CanNotPutItemInSlot

    Containable.PutItemInSlotOnly

    GUIDTask.RegisterEquipment

    GUIDTask.UnregisterEquipment

    Future.onComplete

    PutEquipmentInInventorySlot

    TerminalMessageOnTimeout

  5. def ContainableMoveItem(toChannel: String, source: PlanetSideServerObject with Container, destination: PlanetSideServerObject with Container, item: Equipment, dest: Int): Unit

    Move an item from one container to another.

    Move an item from one container to another. If the source or if the destination is a kind of container called a LockerContainer, then a special procedure for the movement of the item must be respected. If the source and the destination are both LockerContainer objects, however, the normal operations for moving an item may be executed.

    toChannel

    broadcast channel name for a manual packet callback

    source

    the container in which the item is to be removed

    destination

    the container into which the item is to be placed

    item

    the item

    dest

    where in the destination container the item is being placed

    See also

    ActorRef

    Containable.MoveItem

    Container

    Equipment

    LockerContainer

    RemoveEquipmentFromLockerContainer

    StowEquipmentInLockerContainer

    TaskResolver

  6. def CountAmmunition(e: Equipment): Int

    The counting function for an item of AmmoBox.

    The counting function for an item of AmmoBox. Counts the Capacity of the ammunition.

    e

    the Equipment object

    returns

    the quantity

  7. def CountGrenades(e: Equipment): Int

    The counting function for an item of Tool where the item is also a grenade.

    The counting function for an item of Tool where the item is also a grenade. Counts the number of grenades.

    e

    the Equipment object

    returns

    the quantity

    See also

    GlobalDefinitions.isGrenade

  8. def DefaultCount(e: Equipment): Int

    The default counting function for an item.

    The default counting function for an item. Counts the number of item(s).

    e

    the Equipment object

    returns

    the quantity; always one

  9. def DropEquipmentFromInventory(obj: PlanetSideServerObject with Container)(item: Equipment, pos: Option[Vector3] = None): Future[Any]

    Remove an item from a container and drop it on the ground.

    Remove an item from a container and drop it on the ground.

    obj

    the container to search

    item

    the item to find and remove from the container

    pos

    an optional position where to drop the item on the ground; expected override from original container's position

    returns

    a Future that anticipates the resolution to this manipulation

    See also

    ask

    AvatarAction.ObjectDelete

    Containable.ItemFromSlot

    Containable.RemoveItemFromSlot

    Future.onComplete

    Future.recover

    tell

    Zone.AvatarEvents

    Zone.Ground.DropItem

  10. def DropLeftovers(container: PlanetSideServerObject with Container)(drops: List[InventoryItem]): Unit

    Drop some items on the ground is a given location.

    Drop some items on the ground is a given location. The location corresponds to the previous container for those items.

    container

    the original object that contained the items

    drops

    the items to be dropped on the ground

    See also

    Zone.Ground.DropItem

  11. def FindAmmoBoxThatUses(ammo: objects.equipment.Ammo.Value)(e: Equipment): Boolean

    Flag an AmmoBox object that matches for the given ammunition type.

    Flag an AmmoBox object that matches for the given ammunition type.

    ammo

    the type of Ammo to check

    e

    the Equipment object

    returns

    true, if the object is an AmmoBox of the correct ammunition type; false, otherwise

  12. def FindEquipmentStock(obj: Container, filterTest: (Equipment) => Boolean, desiredAmount: Int, counting: (Equipment) => Int = DefaultCount): List[InventoryItem]

    Within a specified Container, find the smallest number of Equipment objects of a certain qualifying type whose sum count is greater than, or equal to, a desiredAmount based on an accumulator method.

    In an occupied List of returned Inventory entries, all but the last entry is typically considered "emptied." For objects with contained quantities, the last entry may require having that quantity be set to a non-zero number.

    Within a specified Container, find the smallest number of Equipment objects of a certain qualifying type whose sum count is greater than, or equal to, a desiredAmount based on an accumulator method.

    In an occupied List of returned Inventory entries, all but the last entry is typically considered "emptied." For objects with contained quantities, the last entry may require having that quantity be set to a non-zero number.

    obj

    the Container to search

    filterTest

    test used to determine inclusivity of Equipment collection

    desiredAmount

    how much is requested

    counting

    test used to determine value of found Equipment; defaults to one per entry

    returns

    a List of all discovered entries totaling approximately the amount requested

  13. def FindToolThatUses(ammo: objects.equipment.Ammo.Value)(e: Equipment): Boolean

    Flag a Tool object that matches for loading the given ammunition type.

    Flag a Tool object that matches for loading the given ammunition type.

    ammo

    the type of Ammo to check

    e

    the Equipment object

    returns

    true, if the object is a Tool that loads the correct ammunition type; false, otherwise

  14. def HoldNewEquipmentUp(player: Player)(item: Equipment, slot: Int): GiveTask

    The primary use is to register new mechanized assault exo-suit armaments, place the newly registered weapon in hand, and then raise that hand (draw that slot) so that the weapon is active.

    The primary use is to register new mechanized assault exo-suit armaments, place the newly registered weapon in hand, and then raise that hand (draw that slot) so that the weapon is active. (Players in MAX suits can not manipulate their drawn slot manually.) In general, this can be used for any equipment that is to be equipped to a player's hand then immediately drawn. Do not allow the item to be (mis)placed in any available slot. Item swapping during the placement is not allowed and the possibility should be proactively avoided.

    player

    the player whose visible slot will be equipped and drawn

    item

    the item to equip

    slot

    the slot in which the item will be equipped

    returns

    a TaskResolver object

    Exceptions thrown

    `RuntimeException` if slot is not a player visible slot (holsters)

    See also

    ask

    AvatarAction.ObjectDelete

    AvatarAction.SendResponse

    Containable.CanNotPutItemInSlot

    Containable.PutItemInSlotOnly

    GUIDTask.RegisterEquipment

    GUIDTask.UnregisterEquipment

    Future.onComplete

    ObjectHeldMessage

    Player.DrawnSlot

    Player.LastDrawnSlot

    Service.defaultPlayerGUID

    TaskResolver.GiveTask

    Zone.AvatarEvents

  15. def PickUpEquipmentFromGround(obj: PlanetSideServerObject with Container)(item: Equipment): Future[Any]

    Get an item from the ground and put it into the given container.

    Get an item from the ground and put it into the given container. The zone in which the item is found is expected to be the same in which the container object is located. If the object can not be placed into the container, it is put back on the ground. The item that was collected off the ground, if it is placed back on the ground, will be positioned with respect to the container object rather than its original location.

    obj

    the container into which the item will be placed

    item

    the item being collected from off the ground of the container's zone

    returns

    a Future that anticipates the resolution to this manipulation

    See also

    ask

    AvatarAction.ObjectDelete

    Future.onComplete

    Zone.AvatarEvents

    Zone.Ground.CanNotPickUpItem

    Zone.Ground.ItemInHand

    Zone.Ground.PickUpItem

    PutEquipmentInInventoryOrDrop

  16. def PutEquipmentInInventoryOrDrop(obj: PlanetSideServerObject with Container)(item: Equipment): Future[Any]

    Use this for placing equipment that has yet to be registered into a container, such as in support of changing ammunition types in Tool objects (weapons).

    Use this for placing equipment that has yet to be registered into a container, such as in support of changing ammunition types in Tool objects (weapons). If the object can not be placed into the container, it will be dropped onto the ground. It will also be dropped if it takes too long to be placed. Item swapping during the placement is not allowed.

    obj

    the container

    item

    the item being manipulated

    returns

    a Future that anticipates the resolution to this manipulation

    See also

    ask

    ChangeAmmoMessage

    Containable.CanNotPutItemInSlot

    Containable.PutItemAway

    Future.onComplete

    Future.recover

    tell

    Zone.Ground.DropItem

  17. def PutEquipmentInInventorySlot(obj: PlanetSideServerObject with Container)(item: Equipment, slot: Int): Future[Any]

    Use this for obtaining new equipment from a loadout specification.

    Use this for obtaining new equipment from a loadout specification. The loadout specification contains a specific slot position for placing the item. This request will (probably) be coincidental with a number of other such requests based on that loadout so items must be rigidly placed else cascade into a chaostic order. Item swapping during the placement is not allowed.

    obj

    the container

    item

    the item being manipulated

    slot

    na

    returns

    a Future that anticipates the resolution to this manipulation

    See also

    ask

    AvatarAction.ObjectDelete

    ChangeAmmoMessage

    Containable.CanNotPutItemInSlot

    Containable.PutItemAway

    Future.onComplete

    Future.recover

    GUIDTask.UnregisterEquipment

    tell

    Zone.AvatarEvents

  18. def PutLoadoutEquipmentInInventory(obj: PlanetSideServerObject with Container)(item: Equipment, slot: Int): GiveTask

    Use this for obtaining new equipment from a loadout specification.

    Use this for obtaining new equipment from a loadout specification. The loadout specification contains a specific slot position for placing the item. This request will (probably) be coincidental with a number of other such requests based on that loadout so items must be rigidly placed else cascade into a chaostic order. Item swapping during the placement is not allowed.

    obj

    the container

    item

    the item being manipulated

    slot

    where the item will be placed in the container

    returns

    a TaskResolver object

    See also

    GUIDTask.RegisterEquipment

    PutEquipmentInInventorySlot

    Task

    TaskResolver.GiveTask

  19. def PutNewEquipmentInInventoryOrDrop(obj: PlanetSideServerObject with Container)(item: Equipment): GiveTask

    Use this for placing equipment that has yet to be registered into a container, such as in support of changing ammunition types in Tool objects (weapons).

    Use this for placing equipment that has yet to be registered into a container, such as in support of changing ammunition types in Tool objects (weapons). Equipment will go wherever it fits in containing object, or be dropped if it fits nowhere. Item swapping during the placement is not allowed.

    obj

    the container

    item

    the item being manipulated

    returns

    a TaskResolver object

    See also

    ChangeAmmoMessage

    GUIDTask.RegisterEquipment

    PutEquipmentInInventoryOrDrop

    Task

    TaskResolver.GiveTask

  20. def RemoveEquipmentFromLockerContainer(toChannel: String, source: PlanetSideServerObject with Container, destination: PlanetSideServerObject with Container, item: Equipment, dest: Int): Unit

    Remove an item from a player's locker inventory.

    Remove an item from a player's locker inventory. Failure of this process is not supported and may lead to irregular behavior.

    toChannel

    broadcast channel name for a manual packet callback

    source

    the container in which the item is to be removed

    destination

    the container into which the item is to be placed

    item

    the item

    dest

    where in the destination container the item is being placed

    See also

    ActorRef

    AvatarAction.ObjectDelete

    AvatarServiceMessage

    Containable.MoveItem

    Container

    Equipment

    GridInventory.CheckCollisionsVar

    GUIDTask.RegisterEquipment

    GUIDTask.UnregisterEquipment

    IdentifiableEntity.Invalidate

    LockerContainer

    Service

    Task

    TaskResolver

    TaskResolver.GiveTask

    Zone.AvatarEvents

  21. def RemoveOldEquipmentFromInventory(obj: PlanetSideServerObject with Container)(item: Equipment): Future[Any]

    Remove an item from a container and delete it.

    Remove an item from a container and delete it.

    obj

    the container to search

    item

    the item to find and remove from the container

    returns

    a Future that anticipates the resolution to this manipulation

    See also

    ask

    AvatarAction.ObjectDelete

    Containable.ItemFromSlot

    Containable.RemoveItemFromSlot

    Future.onComplete

    Future.recover

    GUIDTask.UnregisterEquipment

    Zone.AvatarEvents

  22. def SellEquipmentFromInventory(obj: PlanetSideServerObject with Container, player: Player, term: PlanetSideGUID)(slot: Int): Future[Any]

    Primarily, remove an item from a container and delete it.

    Primarily, remove an item from a container and delete it. As a terminal operation, the player must receive a report regarding whether the transaction was successful. At the end of a successful transaction, and only a successful transaction, the item that was removed is no longer considered a valid game object. Contrasting RemoveOldEquipmentFromInventory which identifies the actual item to be eliminated, this function uses the slot where the item is (should be) located.

    obj

    the container to search

    player

    the player who used the terminal

    term

    the unique identifier number of the terminal

    slot

    from which slot the equipment is to be removed

    returns

    a Future that anticipates the resolution to this manipulation

    See also

    ask

    Containable.ItemFromSlot

    Containable.RemoveItemFromSlot

    Future.onComplete

    Future.recover

    GUIDTask.UnregisterEquipment

    RemoveOldEquipmentFromInventory

    TerminalMessageOnTimeout

    TerminalResult

  23. def StowEquipmentInLockerContainer(toChannel: String, source: PlanetSideServerObject with Container, destination: PlanetSideServerObject with Container, item: Equipment, dest: Int): Unit

    Move an item into a player's locker inventory.

    Move an item into a player's locker inventory. Handle any swap item that might become involved in the transfer. Failure of this process is not supported and may lead to irregular behavior.

    toChannel

    broadcast channel name for a manual packet callback

    source

    the container in which the item is to be removed

    destination

    the container into which the item is to be placed

    item

    the item

    dest

    where in the destination container the item is being placed

    See also

    ActorRef

    AvatarAction.ObjectDelete

    AvatarServiceMessage

    Containable.MoveItem

    Container

    Equipment

    GridInventory.CheckCollisionsVar

    GUIDTask.RegisterEquipment

    GUIDTask.UnregisterEquipment

    IdentifiableEntity.Invalidate

    LockerContainer

    Service

    Task

    TaskResolver

    TaskResolver.GiveTask

    Zone.AvatarEvents

  24. def TerminalMessageOnTimeout(future: Future[Any], terminalMessage: (Boolean) => Unit): Future[Any]

    If a timeout occurs on the manipulation, declare a terminal transaction failure.

    If a timeout occurs on the manipulation, declare a terminal transaction failure.

    future

    the item manipulation's Future object

    terminalMessage

    how to call the terminal message

    returns

    a Future that anticipates the resolution to this manipulation

    See also

    AskTimeoutException

    recover

  25. def TerminalResult(guid: PlanetSideGUID, player: Player, transaction: types.TransactionType.Value)(result: Boolean): Unit

    Announced the result of this player's terminal use, to the player that used the terminal.

    Announced the result of this player's terminal use, to the player that used the terminal. This is a necessary step for regaining terminal use which is naturally blocked by the client after a transaction request.

    guid

    the terminal's unique identifier

    player

    the player who used the terminal

    transaction

    what kind of transaction was involved in terminal use

    result

    the result of that transaction

    See also

    AvatarAction.TerminalOrderResult

    ItemTransactionResultMessage

    TransactionType

  26. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  27. implicit def boolToInt(b: Boolean): Int

    Convert a boolean value into an integer value.

    Convert a boolean value into an integer value. Use: true:Int or false:Int

    b

    true or false (or null)

    returns

    1 for true; 0 for false

  28. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  29. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  30. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  31. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  32. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  33. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  34. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  35. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  36. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  37. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  38. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  39. def toString(): String
    Definition Classes
    AnyRef → Any
  40. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  41. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  42. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped