OGS Java API Spec

ogs.feats
Class SingleWeapon

java.lang.Object
  |
  +--ogs.support.Object
        |
        +--ogs.core.Feature
              |
              +--ogs.core.Feat
                    |
                    +--ogs.feats.WeaponProficiency
                          |
                          +--ogs.feats.SingleWeapon
All Implemented Interfaces:
EventListener

public class SingleWeapon
extends WeaponProficiency

A weapon proficiency for a single weapon. Some classes are automatically proficient only with specific types of weapons, some of which are simple weapons. Single weapon proficiency feats for martial weapons and exotic weapons can also be taken optionally.


Field Summary
 
Fields inherited from class ogs.core.Feat
COMBAT, CUMULATIVE, EXCLUSIVE, GENERAL, MAGIC, REPEATABLE, SPECIAL
 
Fields inherited from class ogs.support.Object
listeners
 
Constructor Summary
SingleWeapon(Class weaponClass)
          Create a new Weapon Proficiency feat for a single weapon.
 
Method Summary
 int getCompatibility()
          Determine the compatability of this feat.
 int getProficiency()
          Determine proficiency of weapon that this feat applies to.
 boolean isProficient(Weapon weapon)
          Determine if a weapon is a proficient weapon.
 
Methods inherited from class ogs.feats.WeaponProficiency
getGroup
 
Methods inherited from class ogs.core.Feat
canAttach, findFeat, getSlots, getSlotsLevel
 
Methods inherited from class ogs.core.Feature
attachObject, canDetach, detachObject, getObject
 
Methods inherited from class ogs.support.Object
addListener, handleEvent, notifyListeners, removeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SingleWeapon

public SingleWeapon(Class weaponClass)
Create a new Weapon Proficiency feat for a single weapon.

Parameters:
weaponClass - A class of weapon.
Throws:
ClassCastException - If class is not a weapon class.
Method Detail

getCompatibility

public int getCompatibility()
Determine the compatability of this feat. Single weapon proficiency feats are repeatable feats. Each time a single weapon feat is taken, it applies to a new weapon.

Specified by:
getCompatibility in class Feat
Returns:
Feat.EXCLUSIVE

getProficiency

public int getProficiency()
Determine proficiency of weapon that this feat applies to.

Specified by:
getProficiency in class WeaponProficiency
Returns:
Proficiency of weapon: SIMPLE, MARTIAL, or EXOTIC.

isProficient

public boolean isProficient(Weapon weapon)
Determine if a weapon is a proficient weapon. A proficient weapon is a weapon that a creature with this feat is proficient with. If this feat is not attached to a creature, the weapon is not a proficient weapon.

Specified by:
isProficient in class WeaponProficiency
Returns:
True if weapon is a proficient weapon.

OGS Java API Spec