com.planet_ink.coffee_mud.Abilities.Skills
Class Skill_Attack2
java.lang.Object
com.planet_ink.coffee_mud.Abilities.StdAbility
com.planet_ink.coffee_mud.Abilities.Skills.StdSkill
com.planet_ink.coffee_mud.Abilities.Skills.Skill_Attack2
- All Implemented Interfaces:
- Ability, CMObject, Contingent, Environmental, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
- Direct Known Subclasses:
- Skill_Attack3, Skill_AttackHalf
public class Skill_Attack2
- extends StdSkill
Fields inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility |
affected, amDestroyed, canBeUninvoked, empty, invoker, isAnAutoEffect, lastCastHelp, miscText, proficiency, savable, tickDown, unInvoked |
Fields inherited from interface com.planet_ink.coffee_mud.Abilities.interfaces.Ability |
ACODE_CHANT, ACODE_COMMON_SKILL, ACODE_DESCS, ACODE_DESCS_, ACODE_DISEASE, ACODE_LANGUAGE, ACODE_POISON, ACODE_PRAYER, ACODE_PROPERTY, ACODE_SKILL, ACODE_SONG, ACODE_SPELL, ACODE_SUPERPOWER, ACODE_TECH, ACODE_THIEF_SKILL, ACODE_TRAP, ALL_ACODES, ALL_DOMAINS, CACHEINDEX_CLASSLESS, CACHEINDEX_EXPERTISE, CACHEINDEX_NORMAL, CACHEINDEX_TOTAL, CAN_AREAS, CAN_DESCS, CAN_EXITS, CAN_ITEMS, CAN_MOBS, CAN_ROOMS, COST_ALL, COST_NORMAL, COST_PCT, DOMAIN_ABJURATION, DOMAIN_ACROBATIC, DOMAIN_ALERT, DOMAIN_ALTERATION, DOMAIN_ANATOMY, DOMAIN_ANIMALAFFINITY, DOMAIN_ARCANELORE, DOMAIN_ARCHON, DOMAIN_ARMORUSE, DOMAIN_ARTISTIC, DOMAIN_BINDING, DOMAIN_BLESSING, DOMAIN_BREEDING, DOMAIN_BUILDINGSKILL, DOMAIN_CALLIGRAPHY, DOMAIN_COMBATFLUIDITY, DOMAIN_COMBATLORE, DOMAIN_COMMUNING, DOMAIN_CONJURATION, DOMAIN_CORRUPTION, DOMAIN_CRAFTINGSKILL, DOMAIN_CREATION, DOMAIN_CRIMINAL, DOMAIN_CURSING, DOMAIN_DANCING, DOMAIN_DEATHLORE, DOMAIN_DECEPTIVE, DOMAIN_DEEPMAGIC, DOMAIN_DESCS, DOMAIN_DETRAP, DOMAIN_DIRTYFIGHTING, DOMAIN_DIVINATION, DOMAIN_EDUCATIONLORE, DOMAIN_ENCHANTMENT, DOMAIN_ENDURING, DOMAIN_EPICUREAN, DOMAIN_EVANGELISM, DOMAIN_EVASIVE, DOMAIN_EVOCATION, DOMAIN_FITNESS, DOMAIN_FOOLISHNESS, DOMAIN_GATHERINGSKILL, DOMAIN_GRAPPLING, DOMAIN_HEALING, DOMAIN_HOLYPROTECTION, DOMAIN_ILLUSION, DOMAIN_INFLUENTIAL, DOMAIN_KICKING, DOMAIN_LEGAL, DOMAIN_MARTIALLORE, DOMAIN_MOONALTERING, DOMAIN_MOONSUMMONING, DOMAIN_NATURELORE, DOMAIN_NEUTRALIZATION, DOMAIN_PLANTCONTROL, DOMAIN_PLANTGROWTH, DOMAIN_PLAYING, DOMAIN_POISONING, DOMAIN_PRESERVING, DOMAIN_PUNCHING, DOMAIN_RACIALABILITY, DOMAIN_RESTORATION, DOMAIN_ROCKCONTROL, DOMAIN_SEATRAVEL, DOMAIN_SHAPE_SHIFTING, DOMAIN_SHIELDUSE, DOMAIN_SINGING, DOMAIN_STEALING, DOMAIN_STEALTHY, DOMAIN_STREETSMARTS, DOMAIN_THEATRE, DOMAIN_TRANSMUTATION, DOMAIN_TRAPPING, DOMAIN_VERBS, DOMAIN_VEXING, DOMAIN_WARDING, DOMAIN_WATERCONTROL, DOMAIN_WATERLORE, DOMAIN_WEAPON_USE, DOMAIN_WEATHER_MASTERY, FLAG_ADJUSTER, FLAG_AGGROFYING, FLAG_AIRBASED, FLAG_BINDING, FLAG_CASTER, FLAG_CHARMING, FLAG_CLANMAGIC, FLAG_DESCS, FLAG_EARTHBASED, FLAG_ENABLER, FLAG_FIREBASED, FLAG_HEALINGMAGIC, FLAG_HEATING, FLAG_HOLY, FLAG_IMMUNER, FLAG_INTOXICATING, FLAG_MINDALTERING, FLAG_MOVING, FLAG_NEUTRAL, FLAG_NOORDERING, FLAG_NOUNINVOKING, FLAG_PARALYZING, FLAG_POTENTIALLY_DEADLY, FLAG_RESISTER, FLAG_SUMMONING, FLAG_SUNSUMMONING, FLAG_TIDEALTERING, FLAG_TORTURING, FLAG_TRACKING, FLAG_TRANSPORTING, FLAG_UNCRAFTABLE, FLAG_UNHOLY, FLAG_WATERBASED, FLAG_WEATHERAFFECTING, FLAG_ZAPPER, QUALITY_BENEFICIAL_OTHERS, QUALITY_BENEFICIAL_SELF, QUALITY_DESCS, QUALITY_INDIFFERENT, QUALITY_MALICIOUS, QUALITY_OK_OTHERS, QUALITY_OK_SELF, RANGE_CHOICES, TICKS_ALMOST_FOREVER, TICKS_FOREVER, USAGE_DESCS, USAGE_HITPOINTS, USAGE_MANA, USAGE_MOVEMENT, USAGE_NADA, USAGEINDEX_HITPOINTS, USAGEINDEX_MANA, USAGEINDEX_MOVEMENT |
Fields inherited from interface com.planet_ink.coffee_mud.core.interfaces.Tickable |
STATUS_AFFECT, STATUS_ALIVE, STATUS_BEHAVIOR, STATUS_CLASS, STATUS_DEAD, STATUS_END, STATUS_FIGHT, STATUS_MISC, STATUS_MISC2, STATUS_MISC3, STATUS_MISC4, STATUS_MISC5, STATUS_MISC6, STATUS_MISC7, STATUS_NOT, STATUS_OTHER, STATUS_RACE, STATUS_REBIRTH, STATUS_SCRIPT, STATUS_START, STATUS_WEATHER, TICKID_AREA, TICKID_BEAMWEAPON, TICKID_CLAN, TICKID_CLANITEM, TICKID_DEADBODY_DECAY, TICKID_ELECTRONICS, TICKID_EMAIL, TICKID_EXIT_BEHAVIOR, TICKID_EXIT_REOPEN, TICKID_ITEM_BEHAVIOR, TICKID_ITEM_BOUNCEBACK, TICKID_LIGHT_FLICKERS, TICKID_LIVEAUCTION, TICKID_LONGERMASK, TICKID_MISCELLANEOUS, TICKID_MOB, TICKID_PROPERTY_SPECIAL, TICKID_QUEST, TICKID_READYTOSTOP, TICKID_ROOM_BEHAVIOR, TICKID_ROOM_ITEM_REJUV, TICKID_SOLITARYMASK, TICKID_SPECIALCOMBAT, TICKID_SPECIALMANEUVER, TICKID_SPELL_AFFECT, TICKID_SUPPORT, TICKID_TIMEAUCTION, TICKID_TRAP_DESTRUCTION, TICKID_TRAP_RESET |
Method Summary |
int |
abstractQuality()
Returns a constant value notifying the system of
the general quality of the skill, whether it is
malicious, beneficial, indifferent, or qualifiably
beneficial (ok), as well as whether it is intended
to target the invoker (self) or others. |
void |
affectPhyStats(Physical affected,
PhyStats affectableStats)
This method is called by the recoverPhyStats() method on other Environmental objects. |
protected int |
attackToNerf()
|
protected int |
canAffectCode()
Designates whether, when used as a property/effect, what sort of objects this
ability can affect. |
boolean |
canBeUninvoked()
Whether this skill is allowed to be uninvoked. |
protected int |
canTargetCode()
Designates whether, when invoked as a skill, what sort of objects this
ability can effectively target. |
int |
classificationCode()
Returns a bitmap describing the general
classification of the skill (spell, skill,
chant, or property, etc) and its domain. |
java.lang.String |
displayText()
Gets the raw string used to show what this object looks like in the room. |
void |
executeMsg(Environmental myHost,
CMMsg msg)
The general message event handler for the object. |
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of
this object. |
boolean |
isAutoInvoked()
An autoinvocating ability is an ability which affects the
mob just by having learned the ability. |
java.lang.String |
name()
The nice displayable name of this instance of this object |
protected double |
nerfAmount()
|
protected double |
numberOfFullAttacks()
|
protected int |
roundToNerf()
|
boolean |
tick(Tickable ticking,
int tickID)
this is the method which is called periodically by the threading engine. |
Methods inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility |
abilityCode, accountForYourself, addedTickTime, adjustBeneficialTickdownTime, adjustedLevel, adjustedMaxInvokerRange, adjustMaliciousTickdownTime, affectCharState, affectCharStats, affecting, amDestroyed, appropriateToMyFactions, autoInvocation, beneficialAffect, beneficialVisualFizzle, beneficialWordsFizzle, bubbleAffect, buildCostArray, canAffect, canAffect, canBeLearnedBy, canBePracticedBy, canBeTaughtBy, canTarget, canTarget, castingQuality, castingQuality, castingTime, checkComponents, checkedCastingCost, cloneFix, combatCastingTime, compareTo, copyOf, description, destroy, disregardsArmorCheck, enchantQuality, evalTargetItem, experienceLevels, expertise, expirationDate, externalFiles, flags, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getBeneficialTickdownTime, getCodeNum, getHardOverrideManaCache, getInternalCodeNum, getMaliciousTickdownTime, getPersonalLevelAdjustments, getRawTrainingCost, getSaveStatIndex, getStat, getStatCodes, getTarget, getTarget, getTarget, getTarget, getTarget, getTarget, getTarget, getTargetItemFavorMOB, getTargetItemFavorMOB, getTargetItemFavorMOB, getTickDownRemaining, getTicksBetweenCasts, getTickStatus, getTimeOfNextCast, getTrainingCost, getX1Level, getX2Level, getX3Level, getX4Level, getX5Level, getXLEVELLevel, getXLOWCOSTLevel, getXLOWFREECOSTLevel, getXMAXRANGELevel, getXPCOSTAdjustment, getXPCOSTLevel, getXTIMELevel, helpProficiency, I, image, iniPracticesToPractice, initializeClass, invoke, invoke, invoker, isGeneric, isNowAnAutoEffect, isSavable, isStat, L, makeLongLasting, makeNonUninvokable, maliciousAffect, maliciousFizzle, maxRange, minCastWaitTime, minRange, miscTextFormat, Name, newInstance, okMessage, overrideMana, possibleContainer, practice, practicesToPractice, preInvoke, proficiency, proficiencyCheck, properTargetList, properTargets, putInCommandlist, rawImage, requirements, restoreCombatState, sameAs, saveCombatState, setAbilityCode, setAffectedOne, setDescription, setDisplayText, setExpirationDate, setImage, setInvoker, setMiscText, setName, setProficiency, setSavable, setStat, setTickDownRemaining, setTimeOfNextCast, setTimeOfNextCast, somanticCastCode, somanticCastMask, spreadImmunity, startTickDown, teach, text, triggerStrings, unInvoke, usageCost, usageType, verbalCastCode, verbalCastMask, verbalSpeakCode |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
attacksSinceNerfing
protected int attacksSinceNerfing
roundOfNerfing
protected int roundOfNerfing
freeToNerf
protected volatile boolean freeToNerf
Skill_Attack2
public Skill_Attack2()
ID
public java.lang.String ID()
- Description copied from interface:
CMObject
- The CoffeeMud Java Class ID shared by all instances of
this object. Unlike the Java Class name, this method
does not include package information. However, it must
return a String value unique to its class category in
the ClassLoader. Class categories include Libraries, Common,
Areas, Abilities, Behaviors, CharClasses, Commands, Exits
Locales, MOBS, Races, WebMacros, Basic Items, Armor,
Weapons, ClanItems, Tech. The name is typically identical
to the class name.
- Specified by:
ID
in interface CMObject
- Overrides:
ID
in class StdSkill
- Returns:
- the name of this class
name
public java.lang.String name()
- Description copied from interface:
Tickable
- The nice displayable name of this instance of this object
- Specified by:
name
in interface CMObject
- Specified by:
name
in interface Tickable
- Overrides:
name
in class StdSkill
- Returns:
- the displayable name of this object instance
- See Also:
Environmental.Name()
displayText
public java.lang.String displayText()
- Description copied from interface:
Environmental
- Gets the raw string used to show what this object looks like in the room.
May be used as a basis for other methods, such as the title of rooms, and
what an exit looks like when open. The value for Items may be null if the item
is not displayed when the room is seen.
- Specified by:
displayText
in interface Environmental
- Overrides:
displayText
in class StdAbility
- Returns:
- the string describing how this object looks in the room
canAffectCode
protected int canAffectCode()
- Description copied from class:
StdAbility
- Designates whether, when used as a property/effect, what sort of objects this
ability can affect. Uses the Ability.CAN_* constants.
- Overrides:
canAffectCode
in class StdSkill
- Returns:
- a mask showing the type of objects this ability can affect
- See Also:
Ability
canTargetCode
protected int canTargetCode()
- Description copied from class:
StdAbility
- Designates whether, when invoked as a skill, what sort of objects this
ability can effectively target. Uses the Ability.CAN_* constants.
- Overrides:
canTargetCode
in class StdSkill
- Returns:
- a mask showing the type of objects this ability can target
- See Also:
Ability
abstractQuality
public int abstractQuality()
- Description copied from interface:
Ability
- Returns a constant value notifying the system of
the general quality of the skill, whether it is
malicious, beneficial, indifferent, or qualifiably
beneficial (ok), as well as whether it is intended
to target the invoker (self) or others. These
constants are defined in the Ability interface and
called QUALITY_*
- Specified by:
abstractQuality
in interface Ability
- Overrides:
abstractQuality
in class StdAbility
- Returns:
- Ability.QUALITY_* constant classification
- See Also:
Ability
classificationCode
public int classificationCode()
- Description copied from interface:
Ability
- Returns a bitmap describing the general
classification of the skill (spell, skill,
chant, or property, etc) and its domain. It
is made up of the ACODE_* constants the Ability
interface, and optionally the DOMAIN_* constants
also defined in this interface.
- Specified by:
classificationCode
in interface Ability
- Overrides:
classificationCode
in class StdSkill
- Returns:
- ACODE_* constant classification
- See Also:
Ability
isAutoInvoked
public boolean isAutoInvoked()
- Description copied from interface:
Ability
- An autoinvocating ability is an ability which affects the
mob just by having learned the ability. Dodge is an example of this.
This method returns whether this skill is classified as one of
those kinds of abilities.
- Specified by:
isAutoInvoked
in interface Ability
- Overrides:
isAutoInvoked
in class StdAbility
- Returns:
- whether this is an autoinvoking skill
canBeUninvoked
public boolean canBeUninvoked()
- Description copied from interface:
Ability
- Whether this skill is allowed to be uninvoked. If it returns false,
then it behaves as a permanent property of the object it is affecting.
Not death, dispelling, or other negations will remove it.
- Specified by:
canBeUninvoked
in interface Ability
- Overrides:
canBeUninvoked
in class StdAbility
- Returns:
- whether this skill can be uninvoked.
- See Also:
Ability.makeNonUninvokable()
attackToNerf
protected int attackToNerf()
roundToNerf
protected int roundToNerf()
nerfAmount
protected double nerfAmount()
numberOfFullAttacks
protected double numberOfFullAttacks()
affectPhyStats
public void affectPhyStats(Physical affected,
PhyStats affectableStats)
- Description copied from interface:
StatsAffecting
- This method is called by the recoverPhyStats() method on other Environmental objects. It is used
to transform the Environmental basePhyStats() object into a finished phyStats() object, both of
which are objects implementing the PhyStats interface. See those methods for more information.
- Specified by:
affectPhyStats
in interface StatsAffecting
- Overrides:
affectPhyStats
in class StdAbility
- Parameters:
affected
- the host of the PhyStats object being affectedaffectableStats
- the particular PhyStats object being affected- See Also:
PhyStats
,
Environmental
,
Affectable.basePhyStats()
,
Affectable.phyStats()
,
Affectable.recoverPhyStats()
executeMsg
public void executeMsg(Environmental myHost,
CMMsg msg)
- Description copied from interface:
MsgListener
- The general message event handler for the object. Messages passed herein
may not necessarily be FOR this object, or from it, but will almost
always represent events happening in the same room. The messages
have already been through an approval process, so this method is
called only to affect the final execution of the meaning of the
message. Every game event goes through these methods.
- Specified by:
executeMsg
in interface MsgListener
- Overrides:
executeMsg
in class StdAbility
- Parameters:
myHost
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that needs to be executed- See Also:
CMMsg
tick
public boolean tick(Tickable ticking,
int tickID)
- Description copied from interface:
Tickable
- this is the method which is called periodically by the threading engine. How often it
is called depends on the parameters passed to the threadding engine when it is submitted
for thread access. Typically the period is once per TIME_TICK period, but that is
determined when the object is submitted to the thread engine.
- Specified by:
tick
in interface Tickable
- Overrides:
tick
in class StdAbility
- Parameters:
ticking
- a reference to this Tickable objecttickID
- the TICKID_ constant describing this periodic call, as defined in Tickable
- Returns:
- true always, unless this object no longer wishes to ever tick again, in which case false
- See Also:
Tickable
,
ServiceEngine
,
TickableGroup