# PSF-LoginServer - master - net.psforever.objects.serverobject.containable.ContainableBehavior
PSF - LoginServer - master - net.psforever.objects.serverobject.containable.ContainableBehavior
Keywords: PSF LoginServer master net.psforever.objects.serverobject.containable.ContainableBehavior

PSF-LoginServer - master < Back


# Packages

-  package root
  Definition Classes
    root
-  package net
  Definition Classes
    root
-  package psforever
  Definition Classes
    net
-  package objects
  Definition Classes
    psforever
-  package serverobject
  Definition Classes
    objects
-  package containable
  Definition Classes
    serverobject
- Containable
- ContainableBehavior
- ContainableMsg
- DeferrableMsg

o

net.psforever.objects.serverobject.containable

# ContainableBehavior 

###
Companion trait ContainableBehavior

#### object ContainableBehavior

Source
  ContainableBehavior.scala

Linear Supertypes
AnyRef, Any

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. ContainableBehavior
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 DropPredicate(tplayer: Player): (InventoryItem) => Boolean

   A predicate used to determine if an `InventoryItem` object contains `Equipment` that should be dropped.

   A predicate used to determine if an `InventoryItem` object contains `Equipment` that should be dropped. Used to filter through lists of object data before it is placed into a player's inventory. Drop the item if:
   - the item is cavern equipment
   - the item is a `BoomerTrigger` type object
   - the item is a `router_telepad` type object
   - the item is another faction's exclusive equipment

   tplayer

     the player

   returns

     true if the item is to be dropped; false, otherwise

5.  def PermitEquipmentStow(destination: PlanetSideServerObject with Container, equipment: Equipment): Boolean

   Apply incontestable, arbitrary limitations whereby certain items are denied insertion into certain containers for vaguely documented but assuredly fantastic excuses on the part of the developer.

   Apply incontestable, arbitrary limitations whereby certain items are denied insertion into certain containers for vaguely documented but assuredly fantastic excuses on the part of the developer.

   destination

     the container

   equipment

     the item to be inserted

   returns

     `true`, if the object is allowed to contain the type of equipment object; `false`, otherwise

6.  def TestPutItemInSlot(destination: PlanetSideServerObject with Container, item: Equipment, dest: Int): Option[List[InventoryItem]]

   Are the conditions for an item insertion acceptable? If another item occupies the expected region of insertion (collision of bounding regions), the insertion can still be permitted with the assumption that the displaced item ("swap item") will have to be put somewhere else.

   Are the conditions for an item insertion acceptable? If another item occupies the expected region of insertion (collision of bounding regions), the insertion can still be permitted with the assumption that the displaced item ("swap item") will have to be put somewhere else.

   destination

     the container

   item

     the item to be tested for insertion

   dest

     the upper left corner of the insertion position

   returns

     the results of the insertion test, if an insertion can be permitted; `None`, otherwise, and the insertion is not permitted

   See also

     `ContainableBehavior.PermitEquipmentStow`

     `Container.Collisions`

     `InventoryTile`

7.  def TryPutItemAway(destination: PlanetSideServerObject with Container, item: Equipment): Option[Int]

   Put an item in a container in the whatever position it cleanly fits.

   Put an item in a container in the whatever position it cleanly fits. The inserted item will not swap places with another item in this case.

   destination

     the container

   item

     the item to be inserted

   returns

     the slot index of the insertion point; `None`, if a clean insertion is not possible

8.  def TryPutItemInSlot(destination: PlanetSideServerObject with Container, item: Equipment, dest: Int): (Boolean, Option[Equipment])

   Put an item in a container at the given position.

   Put an item in a container at the given position. The inserted item may swap places with another item. If the new item can not be inserted, the swap item is kept in its original position.

   destination

     the container

   item

     the item to be inserted

   dest

     in which slot the insertion is expected to occur (upper left corner of item)

   returns

     a `Tuple` of two values; the first is `true` if the insertion occurred; and, `false`, otherwise the second is an optional item that was removed from a coincidental position in the container ("swap item")

9.  def TryPutItemInSlotOnly(destination: PlanetSideServerObject with Container, item: Equipment, dest: Int): Boolean

   Put an item in a container at the given position.

   Put an item in a container at the given position. The inserted item is not permitted to swap places with another item in this case.

   destination

     the container

   item

     the item to be inserted

   dest

     in which slot the insertion is expected to occur (upper left corner of item)

   returns

     `true` if the insertion occurred; `false`, otherwise

10.  def TryPutItemInSlotOnlyOrAway(destination: PlanetSideServerObject with Container, item: Equipment, dest: Option[Int]): (Option[Int], Option[Equipment])

    Attempt to put an item in a container at the given position.

    Attempt to put an item in a container at the given position. The inserted item may not swap places with another item at this time. If the targeted insertion at this position fails, attempt to put the item in the container in the whatever position it cleanly fits.

    destination

      the container

    item

      the item to be inserted

    dest

      in which specific slot the insertion is first tested (upper left corner of item)

    returns

      na

11.  def TryPutItemInSlotOrAway(destination: PlanetSideServerObject with Container, item: Equipment, dest: Option[Int]): (Option[Int], Option[Equipment])

    Attempt to put an item in a container at the given position.

    Attempt to put an item in a container at the given position. The inserted item may swap places with another item at this time. If the targeted insertion at this position fails, attempt to put the item in the container in the whatever position it cleanly fits.

    destination

      the container

    item

      the item to be inserted

    dest

      in which specific slot the insertion is first tested (upper left corner of item)

    returns

      na

12.  def TryRemoveItemFromSlot(source: PlanetSideServerObject with Container, slot: Int): (Option[Int], Option[Equipment])

    If the target slot of a container contains an item, remove that item from the container fromthe upper left corner position of the item as found in the container.

    If the target slot of a container contains an item, remove that item from the container fromthe upper left corner position of the item as found in the container. This process can fail if no item can be found or if it can not be removed for some reason.

    source

      the container in which the `slot` is to be searched

    slot

      where the container will be searched

    returns

      a `Tuple` of two values; the first is from what `slot` in the container an `item` was removed, if any item removed; the second is the item, if it has been removed; will use `(None, None)` to report failure

    See also

      `Container.Find`

      `EquipmentSlot.Equipment`

13.  def TryRemoveItemFromSlot(source: PlanetSideServerObject with Container, item: Equipment): (Option[Int], Option[Equipment])

    If the target item can be found in a container, remove the item from the container.

    If the target item can be found in a container, remove the item from the container. This process can fail if the item can not be found or if it can not be removed for some reason.

    source

      the container in which the `item` is currently located

    item

      the item to be removed

    returns

      a `Tuple` of two optional values; the first is from what index in the container the `item` was removed, if it was removed; the second is the item again, if it has been removed; will use `(None, None)` to report failure

    See also

      `Container.Find`

      `EquipmentSlot.Equipment`

14.  final def asInstanceOf[T0]: T0
    Definition Classes
      Any
15.  def clone(): AnyRef
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.CloneNotSupportedException]) @native()
16.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
17.  def equals(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef → Any
18.  def finalize(): Unit
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.Throwable])
19.  final def getClass(): Class[_ <: AnyRef]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
20.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
21.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
22.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
23.  final def notify(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
24.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
25.  final def synchronized[T0](arg0: => T0): T0
    Definition Classes
      AnyRef
26.  def toString(): String
    Definition Classes
      AnyRef → Any
27.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
28.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
29.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException]) @native()

### Inherited from AnyRef

### Inherited from Any

### Ungrouped