# PSF-LoginServer - master - net.psforever.objects.Tool.FireModeSlot
PSF - LoginServer - master - net.psforever.objects.Tool.FireModeSlot
Keywords: PSF LoginServer master net.psforever.objects.Tool.FireModeSlot

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
-  object Tool
  Definition Classes
    objects
- FireModeSlot

c

net.psforever.objects.Tool

# FireModeSlot

###

#### class FireModeSlot extends AnyRef

The `FireModeSlot` can be called the "magazine feed," an abstracted "ammunition slot." Most weapons will have only one ammunition slot and swap different ammunition into it as needed. In general to swap ammunition means to unload the onld ammunition and load the new ammunition. Many weapons also have one ammunition slot and multiple fire modes using the same list of ammunition This slot manages either of two ammunitions where one does not need to unload to be swapped to the other; however, the fire mod has most likely been changed. The Punisher - six ammunition types in total, two uniquely different types without unloading, two exclusive groups of ammunition divided into 2 cycled types and 4 cycled types - is an example of a weapon that benefits from this implementation.

Source
  Tool.scala

Linear Supertypes
AnyRef, Any

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. FireModeSlot
2. AnyRef
3. Any

1. Hide All
2. Show All

Visibility

1. Public
2. Protected

### Instance Constructors

1.  new FireModeSlot(tdef: ToolDefinition, fdef: FireModeDefinition)

### 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 AllAmmoTypes: List[equipment.Ammo.Value]
5.  def AmmoType: equipment.Ammo.Value

   This is a reference to the `Ammo.Value` whose `AmmoBoxDefinition` should be loaded into `box`.

   This is a reference to the `Ammo.Value` whose `AmmoBoxDefinition` should be loaded into `box`. It may not be the correct `Ammo.Value` whose `AmmoBoxDefinition` is loaded into `box` such as is the case during ammunition swaps. Generally, convert from this index, to the index in the fire mode's ammunition list, to the index in the `ToolDefinition`'s ammunition list.

   returns

     the `Ammo` type that should be loaded into the magazine right now

6.  def AmmoTypeIndex: Int
7.  def AmmoTypeIndex_=(index: Int): Int
8.  def Box: AmmoBox
9.  def Box_=(toBox: AmmoBox): Option[AmmoBox]
10.  def Chamber: Int
11.  def Chamber_=(chmbr: Int): Int
12.  def Definition: FireModeDefinition
13.  def Magazine: Int
14.  def Magazine_=(mag: Int): Int
15.  def Tool: ToolDefinition
16.  final def asInstanceOf[T0]: T0
    Definition Classes
      Any
17.  def clone(): AnyRef
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.CloneNotSupportedException]) @native()
18.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
19.  def equals(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef → Any
20.  def finalize(): Unit
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.Throwable])
21.  final def getClass(): Class[_ <: AnyRef]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
22.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
23.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
24.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
25.  final def notify(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
26.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
27.  final def synchronized[T0](arg0: => T0): T0
    Definition Classes
      AnyRef
28.  def toString(): String
    Definition Classes
      AnyRef → Any
29.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
30.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
31.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException]) @native()

### Inherited from AnyRef

### Inherited from Any

### Ungrouped