jurpe.characters
Class Monster

java.lang.Object
  extended by jurpe.characters.BasicPC
      extended by jurpe.characters.PC
          extended by jurpe.characters.Monster
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable
Direct Known Subclasses:
DungeonMonster

public class Monster
extends PC
implements java.io.Serializable

Type class for monster (Monster). Monster is a PC (Playing Character)

Author:
Alessio Saltarin
See Also:
Serialized Form

Field Summary
static int MONSTERFIELDS
          It serves for datagrids to display monster fields, such as ST, DX, MVMT and others.
 
Constructor Summary
Monster(CharacterAttributes ca, int armr)
          Creates new monster.
 
Method Summary
static Monster createRandom(java.lang.String nm, int points)
          Creates a Non Playing Character (monster), with given points points.
 AllOutAttackType getAllOutAttackType()
          Get AllOutAttack Type.
 int getArmor()
          Get Monster armor
 int getBareHandsSkill()
          Get current skill in unarmed combat.
 int getCurrentHP()
          Get character current hit points
 Shield getCurrentShield()
          Monster shield.
 int getCurrentShieldLevel()
          Monster shield level.
 Weapon getCurrentWeapon()
          Monster weapon.
 int getCurrentWeaponLevel()
          Monster weapon SKILL level.
 Shield getCurShield()
          Monster current shield
 int getCurShieldLevel()
          Monster current shield level
 Weapon getCurWeapon()
          Monster current weapon
 int getCurWeaponLevel()
          Monster current weapon level
 int getDamageRoll()
          A Monster bite depends on its ST.
 java.lang.String getHTHP()
          If a character is a beast, he will have HT in the form HT/current HP
 java.lang.String getInfo(java.lang.String separator)
          Get verbose info
 int getMaxDamage()
          Get Max Damage
 int getMvmt()
          Get Monster MVMT
 int getMvmtBonus()
          Monster movement bonus
 java.lang.String getShortDescription()
          Get monster short description following this pattern: Name: ST,DX,IQ,HT/HTmax
 java.lang.String getStats(java.lang.String separator)
          Get info about monster statistics
 float getTotalActiveDefenses()
          Taken from GURPSLite: Dodge is the only active defense for a beast without a shield.
 float getTotalPassiveDefenses()
          Monster total passive defenses.
 boolean isAlive()
          A monster is alive if:
Has HT>0
 boolean isReady()
          If character is ready to make an attack this turn.
 void restoreHT()
          Restore current hit points.
 void setArmor(int i)
          Set monster armor level
 void setCurShield(Shield shield)
          Set monster current shield
 void setCurShieldLevel(int i)
          Set monster current shield skill level
 void setCurWeapon(Weapon weapon)
          Set monster current weapon
 void setCurWeaponLevel(int i)
          Set monster weapon skill level
 void setMonsterShield(Shield shield, int level)
          Set monster's shield and level
 void setMonsterWeapon(Weapon weapon, int level)
          Set monster's weapon and level.
 void setMvmtBonus(int i)
          Set monster movement bonus
 java.lang.String toString()
          Description of this Monster
 java.lang.String[] toStrings()
          Get properties of monster as an array of Strings
 
Methods inherited from class jurpe.characters.PC
addToCurrentHP, clone, getActiveDefense, getActiveDefenses, getActiveDefensesAvailable, getFormattedVel, getName, isArmed, isShielded, isUnconscious, receiveDamage, restoreHP, rollForLife, setActiveDefense, setActiveDefenseAvailability, setActiveDefenses, setAlive, setUnconscious
 
Methods inherited from class jurpe.characters.BasicPC
compareTo, getCharacterAttributes, getDamageResistance, getHT, getPassiveDefense, getPrimaryStats, isAI, setAI, setCharacterAttributes, setDamageResistance, setPassiveDefense
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Field Detail

MONSTERFIELDS

public static final int MONSTERFIELDS
It serves for datagrids to display monster fields, such as ST, DX, MVMT and others. It says how many properties a monster have.

See Also:
Constant Field Values
Constructor Detail

Monster

public Monster(CharacterAttributes ca,
               int armr)
Creates new monster.

Parameters:
ca - Monster Attributes
armr - Monster Natural armor Points
Method Detail

restoreHT

public void restoreHT()
Restore current hit points. Overrides PC.restoreHT()


getArmor

public int getArmor()
Get Monster armor

Returns:
Monster Armor points

getCurrentHP

public int getCurrentHP()
Description copied from class: BasicPC
Get character current hit points

Overrides:
getCurrentHP in class BasicPC
Returns:
character current hit points

getMvmt

public int getMvmt()
Get Monster MVMT

Specified by:
getMvmt in class PC
Returns:
Returns Monster Movement Rate

toStrings

public java.lang.String[] toStrings()
Get properties of monster as an array of Strings

Returns:
Array of Strings for monster

isReady

public boolean isReady()
Description copied from class: PC
If character is ready to make an attack this turn.

Specified by:
isReady in class PC
Returns:
True when monster is ready to hit.

isAlive

public boolean isAlive()
A monster is alive if:

Specified by:
isAlive in class PC
Returns:
false if character is dead

setMonsterShield

public void setMonsterShield(Shield shield,
                             int level)
Set monster's shield and level

Parameters:
shield - Shield owned by monster
level - Level of skill in using that weapon

getCurrentShield

public Shield getCurrentShield()
Monster shield.

Returns:
Weapon owned by monster

getCurrentShieldLevel

public int getCurrentShieldLevel()
Monster shield level.

Specified by:
getCurrentShieldLevel in class PC
Returns:
Monster shield skill level

setMonsterWeapon

public void setMonsterWeapon(Weapon weapon,
                             int level)
Set monster's weapon and level.

Parameters:
weapon - Weapon owned by monster
level - Monster weapon skill level

getCurrentWeapon

public Weapon getCurrentWeapon()
Monster weapon.

Specified by:
getCurrentWeapon in class PC
Returns:
Monster Weapon. null if monster has no weapon
See Also:
Weapon

getCurrentWeaponLevel

public int getCurrentWeaponLevel()
Monster weapon SKILL level. Since Monsters make attack roll against their DX, their weapon skill is DX. If they have a weapon, this is the monster skill with that weapon.

Specified by:
getCurrentWeaponLevel in class PC
Returns:
Monster weapon Level

getTotalPassiveDefenses

public float getTotalPassiveDefenses()
Monster total passive defenses. Equal to armor if monster has no shield. Else, Armor + Shield Passive Defence

Specified by:
getTotalPassiveDefenses in class PC
Returns:
Monster Passive Defense

getTotalActiveDefenses

public float getTotalActiveDefenses()
Taken from GURPSLite: Dodge is the only active defense for a beast without a shield. It is equal to half DX or half move, whichever is better up to a maximum of 10. If beast has a shield, she always tries to block with active shield.

Specified by:
getTotalActiveDefenses in class PC
Returns:
Monster Total Active Defenses.

getShortDescription

public java.lang.String getShortDescription()
Get monster short description following this pattern: Name: ST,DX,IQ,HT/HTmax

Overrides:
getShortDescription in class BasicPC
Returns:
short character description

getDamageRoll

public int getDamageRoll()
A Monster bite depends on its ST. The following table is taken from CORPS.

Specified by:
getDamageRoll in class PC
Returns:
Monster Damage Roll (without a weapon - byte)

getMaxDamage

public int getMaxDamage()
Description copied from class: PC
Get Max Damage

Specified by:
getMaxDamage in class PC
Returns:
maximum damage

createRandom

public static Monster createRandom(java.lang.String nm,
                                   int points)
Creates a Non Playing Character (monster), with given points points.

Parameters:
nm - PCharacter's name
points - Monster overall value
Returns:
Monster object
See Also:
Monster, JurpeUtils

getBareHandsSkill

public int getBareHandsSkill()
Get current skill in unarmed combat.

Specified by:
getBareHandsSkill in class PC
Returns:
Monster Skill Level in unarmed combat.

getAllOutAttackType

public AllOutAttackType getAllOutAttackType()
Get AllOutAttack Type. AI can choose any type of AOA, except the TWO attack when it wears an unbalanced weapon.

Specified by:
getAllOutAttackType in class PC
Returns:
Current All Out Attack Mode for this character.

getHTHP

public java.lang.String getHTHP()
If a character is a beast, he will have HT in the form HT/current HP

Returns:
String describing HT/HP

getInfo

public java.lang.String getInfo(java.lang.String separator)
Get verbose info

Overrides:
getInfo in class PC
Parameters:
separator - Character or string to separate (ie:\n)
Returns:
character summary

getStats

public java.lang.String getStats(java.lang.String separator)
Get info about monster statistics

Parameters:
separator - Field separator
Returns:
info about monster statistics

getCurShield

public Shield getCurShield()
Monster current shield

Returns:
Current shield

getCurShieldLevel

public int getCurShieldLevel()
Monster current shield level

Returns:
Current shield level

getCurWeapon

public Weapon getCurWeapon()
Monster current weapon

Returns:
Current weapon

getCurWeaponLevel

public int getCurWeaponLevel()
Monster current weapon level

Returns:
Current weapon level

getMvmtBonus

public int getMvmtBonus()
Monster movement bonus

Returns:
Monster movement bonus

setMvmtBonus

public void setMvmtBonus(int i)
Set monster movement bonus

Parameters:
i - Monster movement bonus

setArmor

public void setArmor(int i)
Set monster armor level

Parameters:
i - Monster armor leve

setCurShield

public void setCurShield(Shield shield)
Set monster current shield

Parameters:
shield - Shield to wear

setCurShieldLevel

public void setCurShieldLevel(int i)
Set monster current shield skill level

Parameters:
i - Current shield skill level

setCurWeapon

public void setCurWeapon(Weapon weapon)
Set monster current weapon

Parameters:
weapon - Weapon to wear

setCurWeaponLevel

public void setCurWeaponLevel(int i)
Set monster weapon skill level

Parameters:
i - Weapon skill level

toString

public java.lang.String toString()
Description of this Monster

Overrides:
toString in class PC
Returns:
description

Jurpe - Java Universal Role Playing Engine - http://jurpe.sourceforge.net