Ability, CMObject, Contingent, Environmental, Expireable, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>Play_Accompaniment, Play_Background, Play_Ballad, Play_Battlehymn, Play_Blues, Play_Break, Play_Carol, Play_Charge, Play_Dirge, Play_Ditty, Play_Harmony, Play_Instrument, Play_LoveSong, Play_Lullabies, Play_March, Play_Melody, Play_Mystical, Play_Retreat, Play_Reveille, Play_Rhythm, Play_Solo, Play_Spiritual, Play_Symphony, Play_Tempo, Play_Tribalpublic class Play extends StdAbility
| Modifier and Type | Field | Description |
|---|---|---|
protected Pair<java.lang.Double,java.lang.Integer> |
bonusCache |
|
protected java.util.List<Room> |
commonRoomSet |
|
protected MusicalInstrument |
instrument |
|
protected Room |
originRoom |
|
protected int |
playDepth |
|
protected long |
timeOut |
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_LASTTIME, 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_COSMOLOGY, 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_ROPEUSE, DOMAIN_SEATRAVEL, DOMAIN_SHAPE_SHIFTING, DOMAIN_SHIELDUSE, DOMAIN_SINGING, DOMAIN_STEALING, DOMAIN_STEALTHY, DOMAIN_STREETSMARTS, DOMAIN_THEATRE, DOMAIN_TRANSMUTATION, DOMAIN_TRAPPING, DOMAIN_TRAVEL, 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_CHAOS, FLAG_CHARMING, FLAG_CLANMAGIC, FLAG_DESCS, FLAG_EARTHBASED, FLAG_ELECTRICBASED, FLAG_ENABLER, FLAG_FEARING, FLAG_FIREBASED, FLAG_HEALINGMAGIC, FLAG_HEATING, FLAG_HOLY, FLAG_IMMUNER, FLAG_INTOXICATING, FLAG_LAW, FLAG_MINDALTERING, FLAG_MODERATE, FLAG_MOVING, FLAG_NEUTRAL, FLAG_NODISENCHANT, FLAG_NONENCHANTMENT, FLAG_NOORDERING, FLAG_NOUNINVOKING, FLAG_PARALYZING, FLAG_POTENTIALLY_DEADLY, FLAG_RESISTER, FLAG_STEALING, FLAG_SUMMONING, FLAG_SUNSUMMONING, FLAG_TIDEALTERING, FLAG_TORTURING, FLAG_TRACKING, FLAG_TRANSPORTING, FLAG_UNCRAFTABLE, FLAG_UNHOLY, FLAG_WATERBASED, FLAG_WEATHERAFFECTING, FLAG_ZAPPER, POWER_COST_THRESHOLD, POWER_LEVEL_THRESHOLD, POWER_OVERRIDE_THRESHOLD, 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_COUNT, USAGEINDEX_HITPOINTS, USAGEINDEX_MANA, USAGEINDEX_MOVEMENT, USAGEINDEX_TIMELSW, USAGEINDEX_TOTALidConverteraffected, amDestroyed, canBeUninvoked, empty, invoker, isAnAutoEffect, lastCastHelp, miscText, proficiency, savable, tickDown, unInvokedSTATUS_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_BALLISTICK, TICKID_CLAN, TICKID_CLANITEM, TICKID_DEADBODY_DECAY, TICKID_ELECTRONICS, TICKID_EMAIL, TICKID_EVENT, 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_SHORTERMASK, TICKID_SOLITARYMASK, TICKID_SPECIALCOMBAT, TICKID_SPECIALMANEUVER, TICKID_SPELL_AFFECT, TICKID_SUPPORT, TICKID_TIMEAUCTION, TICKID_TRAP_DESTRUCTION, TICKID_TRAP_RESET| Constructor | Description |
|---|---|
Play() |
| Modifier and Type | Method | Description |
|---|---|---|
int |
adjustedLevel(MOB mob,
int asLevel) |
This method calculates the strength level of this skill for the
given mob, and taking into account the given override-level (asLevel).
|
void |
affectPhyStats(Physical affectedEnv,
PhyStats affectableStats) |
This method is called by the recoverPhyStats() method on other Environmental objects.
|
protected int |
avgStat() |
|
protected int |
calculateNewSongDepth(MOB invoker) |
|
protected int |
canAffectCode() |
Designates whether, when used as a property/effect, what sort of objects this
ability can affect.
|
protected int |
canTargetCode() |
Designates whether, when invoked as a skill, what sort of objects this
ability can effectively target.
|
int |
castingQuality(MOB mob,
Physical target) |
Serves a purpose similar to that of the Ability
abstractQuality() method, but it determines a more
exact quality based on a given invoker, target, and
assumes an imminent use of the skill.
|
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 host,
CMMsg msg) |
The general message event handler for the object.
|
protected Pair<java.lang.Double,java.lang.Integer> |
getBonuses() |
|
protected int |
getCorrectDirToOriginRoom(Room R,
int v) |
|
protected java.lang.String |
getCorrectMsgString(Room R,
java.lang.String str,
int v) |
|
static MusicalInstrument |
getInstrument(MOB mob,
MusicalInstrument.InstrumentType requiredInstrumentType,
boolean noisy) |
|
protected java.util.List<Room> |
getInvokerScopeRoomSet(int depth) |
|
protected boolean |
HAS_QUANTITATIVE_ASPECT() |
|
java.lang.String |
ID() |
The CoffeeMud Java Class ID shared by all instances of
this object.
|
protected int |
innerAvgStat() |
|
protected double |
innerStatBonusPct() |
|
protected void |
inpersistentAffect(MOB mob) |
|
java.lang.String |
instrumentName() |
|
boolean |
invoke(MOB mob,
java.util.List<java.lang.String> commands,
Physical givenTarget,
boolean auto,
int asLevel) |
This method is called when a player or the system invokes this skill,
casts this spell, etc.
|
int |
invokerLevel() |
|
protected boolean |
maliciousButNotAggressiveFlag() |
|
int |
maxRange() |
the modified maximum range of this object, if applicable.
|
protected boolean |
mindAttack() |
|
java.lang.String |
name() |
The nice displayable name of this instance of this object
|
protected boolean |
persistentSong() |
|
protected MusicalInstrument.InstrumentType |
requiredInstrumentType() |
|
java.util.Set<MOB> |
sendMsgAndGetTargets(MOB mob,
Room R,
CMMsg msg,
Environmental givenTarget,
boolean auto) |
|
void |
setAffectedOne(Physical P) |
Sets a reference to the room, item, mob, or exit
that is currently being affected by this skill.
|
void |
setInvoker(MOB mob) |
Sets or changes the mob that invoked or initated the
skill or effect.
|
protected boolean |
skipStandardSongInvoke() |
|
protected boolean |
skipStandardSongTick() |
|
protected java.lang.String |
songOf() |
|
protected double |
statBonusPct() |
|
boolean |
tick(Tickable ticking,
int tickID) |
this is the method which is called periodically by the threading engine.
|
java.lang.String[] |
triggerStrings() |
A set of the command strings the user types to access
this command when it is listed as a skill ability.
|
protected void |
unPlayAll(MOB mob,
MOB invoker,
boolean exceptThisOne,
boolean noEcho) |
|
protected boolean |
unPlayMe(MOB mob,
MOB invoker,
boolean noEcho) |
|
int |
usageType() |
Returns a bitmap made up of constants defined by
Ability.USAGE_*.
|
static boolean |
usingInstrument(MusicalInstrument I,
MOB mob) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitabilityCode, abstractQuality, accountForYourself, addedTickTime, adjustBeneficialTickdownTime, adjustedMaxInvokerRange, adjustMaliciousTickdownTime, affectCharState, affectCharStats, affecting, amDestroyed, aPossibleAbuserOfCasterLevel, appropriateToMyFactions, autoInvocation, beneficialAffect, beneficialSoundFizzle, beneficialVisualFizzle, beneficialWordsFizzle, bubbleAffect, buildCostArray, canAffect, canAffect, canBeLearnedBy, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingTime, checkComponents, checkedCastingCost, checkTargetRange, cloneFix, combatCastingTime, commonTell, commonTelL, commonTelL, compareTo, copyOf, description, destroy, disregardsArmorCheck, enchantQuality, evalTargetItem, expertise, expirationDate, externalFiles, failureTell, 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, getVisibleRoomTarget, getX1Level, getX2Level, getX3Level, getX4Level, getX5Level, getXLEVELLevel, getXLOWCOSTLevel, getXLOWFREECOSTLevel, getXMAXRANGELevel, getXPCOSTAdjustment, getXPCOSTLevel, getXTIMELevel, helpProficiency, I, ignoreCompounding, image, iniPracticesToPractice, initializeClass, invoke, invoker, isAutoInvoked, isGeneric, isNowAnAutoEffect, isSavable, isStat, L, makeLongLasting, makeNonUninvokable, maliciousAffect, maliciousFizzle, mayBeEnchanted, minCastWaitTime, minRange, miscTextFormat, modifyCastCode, Name, newInstance, okMessage, overrideMana, possibleContainer, practice, practicesToPractice, preInvoke, proficiency, proficiencyCheck, properTargetList, properTargets, putInCommandlist, rawImage, requirements, restoreCombatState, sameAs, saveCombatState, setAbilityCode, setDescription, setDisplayText, setExpirationDate, setImage, setMiscText, setName, setProficiency, setSavable, setStat, setTickDown, setTickDownRemaining, setTimeOfNextCast, setTimeOfNextCast, somaticCastCode, somaticCastMask, spreadImmunity, startTickDown, teach, testUsageCost, text, unInvoke, unlearn, usageCost, verbalCastCode, verbalCastMask, verbalSpeakCodeprotected MusicalInstrument instrument
protected long timeOut
protected java.util.List<Room> commonRoomSet
protected Room originRoom
protected volatile int playDepth
protected volatile Pair<java.lang.Double,java.lang.Integer> bonusCache
public java.lang.String ID()
CMObjectID in interface CMObjectID in class StdAbilitypublic java.lang.String name()
Tickablename in interface CMObjectname in interface Tickablename in class StdAbilityEnvironmental.Name()public java.lang.String displayText()
EnvironmentaldisplayText in interface EnvironmentaldisplayText in class StdAbilityprotected int canAffectCode()
StdAbilitycanAffectCode in class StdAbilityAbilityprotected int canTargetCode()
StdAbilitycanTargetCode in class StdAbilityAbilitypublic java.lang.String[] triggerStrings()
AbilitytriggerStrings in interface AbilitytriggerStrings in class StdAbilityAbility.putInCommandlist()public int classificationCode()
AbilityclassificationCode in interface AbilityclassificationCode in class StdAbilityAbilitypublic int usageType()
AbilityusageType in interface AbilityusageType in class StdAbilityAbilityprotected boolean maliciousButNotAggressiveFlag()
public void setAffectedOne(Physical P)
AbilitysetAffectedOne in interface AbilitysetAffectedOne in class StdAbilityP - the room, mob, or item being affectedAbility.affecting()public void setInvoker(MOB mob)
AbilitysetInvoker in interface AbilitysetInvoker in class StdAbilitymob - the invoker mobMOB,
Ability.invoker()protected Pair<java.lang.Double,java.lang.Integer> getBonuses()
protected double statBonusPct()
protected int avgStat()
protected double innerStatBonusPct()
protected int innerAvgStat()
public int maxRange()
EnvironmentalmaxRange in interface EnvironmentalmaxRange in class StdAbilityprotected MusicalInstrument.InstrumentType requiredInstrumentType()
protected boolean skipStandardSongInvoke()
protected boolean mindAttack()
protected boolean skipStandardSongTick()
protected boolean persistentSong()
protected java.lang.String songOf()
protected boolean HAS_QUANTITATIVE_ASPECT()
public java.lang.String instrumentName()
public int adjustedLevel(MOB mob, int asLevel)
AbilityadjustedLevel in interface AbilityadjustedLevel in class StdAbilitymob - the mob to evaluate the skill level ofasLevel - if greater than 0, this method always returns itpublic int invokerLevel()
protected void inpersistentAffect(MOB mob)
public static boolean usingInstrument(MusicalInstrument I, MOB mob)
public boolean tick(Tickable ticking, int tickID)
Tickabletick in interface Tickabletick in class StdAbilityticking - a reference to this Tickable objecttickID - the TICKID_ constant describing this periodic call, as defined in TickableTickable,
ServiceEngine,
TickableGrouppublic int castingQuality(MOB mob, Physical target)
AbilitycastingQuality in interface AbilitycastingQuality in class StdAbilitymob - the person to use the skilltarget - the potential target -- may be invokerAbility,
Ability.abstractQuality()public void affectPhyStats(Physical affectedEnv, PhyStats affectableStats)
StatsAffectingaffectPhyStats in interface StatsAffectingaffectPhyStats in class StdAbilityaffectedEnv - the host of the PhyStats object being affectedaffectableStats - the particular PhyStats object being affectedPhyStats,
Environmental,
Affectable.basePhyStats(),
Affectable.phyStats(),
Affectable.recoverPhyStats()public void executeMsg(Environmental host, CMMsg msg)
MsgListenerexecuteMsg in interface MsgListenerexecuteMsg in class StdAbilityhost - either the initiator of the event, or the host of this objectmsg - the CMMsg that needs to be executedCMMsgpublic static MusicalInstrument getInstrument(MOB mob, MusicalInstrument.InstrumentType requiredInstrumentType, boolean noisy)
protected int calculateNewSongDepth(MOB invoker)
protected java.util.List<Room> getInvokerScopeRoomSet(int depth)
protected int getCorrectDirToOriginRoom(Room R, int v)
protected java.lang.String getCorrectMsgString(Room R, java.lang.String str, int v)
public java.util.Set<MOB> sendMsgAndGetTargets(MOB mob, Room R, CMMsg msg, Environmental givenTarget, boolean auto)
public boolean invoke(MOB mob, java.util.List<java.lang.String> commands, Physical givenTarget, boolean auto, int asLevel)
Abilityinvoke in interface Abilityinvoke in class StdAbilitymob - the player or mob invoking the skillcommands - the parameters entered for the skill (minus trigger word)givenTarget - null, unless being auto-invoked. Represents an override target.auto - false if player enters command, true if system invokes the commandasLevel - -1, unless being auto-invoked, when it is the level to invoke it at.