Ability, CMObject, Contingent, Environmental, Expireable, Modifiable, MsgListener, StatsAffecting, Tickable, Wand.WandUsage, java.lang.Cloneable, java.lang.Comparable<CMObject>public class PlayInstrument extends CommonSkill implements Wand.WandUsage
| Modifier and Type | Field | Description | 
|---|---|---|
| protected MusicalInstrument | instrument | |
| protected java.lang.String | lastInstrType | |
| protected java.util.Map<java.lang.String,int[]> | proficiencies | 
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_TOTALidConverteraborted, activityRoom, bonusYield, bundling, displayText, fakeFire, helping, helpingAbility, lastBaseDuration, playSound, resourcesMap, tickUp, uninvokeEmpties, verbaffected, 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_RESETWAND_OPTIONS| Constructor | Description | 
|---|---|
| PlayInstrument() | 
| Modifier and Type | Method | Description | 
|---|---|---|
| void | affectPhyStats(Physical affected,
              PhyStats affectableStats) | This method is called by the recoverPhyStats() method on other Environmental objects. | 
| protected boolean | canBeDoneSittingDown() | |
| int | classificationCode() | Returns a bitmap describing the general
 classification of the skill (spell, skill,
 chant, or property, etc) and its domain. | 
| protected java.lang.String | getAlmostDoneMessage() | |
| int | getEnchantType() | Returns the type of magic that can use on wands. | 
| protected MusicalInstrument | getInstrumentPlayed(MOB mob) | |
| protected java.lang.String | getOthersContinueMessage() | |
| protected java.lang.String | getYouContinueMessage() | |
| java.lang.String | ID() | The CoffeeMud Java Class ID shared by all instances of
 this object. | 
| 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. | 
| java.lang.String | name() | The nice displayable name of this instance of this object | 
| int | proficiency() | Returns a number from 0-100 representing the percent of proficiency
 the mob or player who has this instance in their Abilities list has in
 this skill. | 
| void | setMiscText(java.lang.String text) | For objects which have false for their isGeneric method, this is used to set any internally
 coded strings to change the nature or behavior of the object. | 
| java.lang.String | supportedResourceString() | |
| java.lang.String | text() | For objects which have false for their isGeneric method, this is used to set any internally
 coded strings to change the nature or behavior of the object. | 
| 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. | 
| void | unInvoke() | If this skill is uninvokable, this method will uninvoke it, remove it
 as an effect on the target, and shut it down. | 
| static boolean | usingInstrument(MusicalInstrument I,
               MOB mob) | 
abilityCode, abstractQuality, accountForYourself, adjustedLevel, affecting, appropriateToMyFactions, autoInvocation, bubbleAffect, canAffect, canAffect, canBeLearnedBy, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingTime, checkedCastingCost, combatCastingTime, enchantQuality, externalFiles, flags, getTrainingCost, helpProficiency, invoke, invoker, isAutoInvoked, isNowAnAutoEffect, makeLongLasting, makeNonUninvokable, mayBeEnchanted, practice, preInvoke, proficiencyCheck, putInCommandlist, requirements, setAbilityCode, setAffectedOne, setInvoker, setProficiency, startTickDown, teach, unlearn, usageCost, usageTypecopyOf, initializeClass, newInstanceabilityCode, abstractQuality, addedTickTime, allowedInTheDark, allowedWhileMounted, baseYield, bumpTickDown, canAffectCode, canBeLearnedBy, canTargetCode, checkStop, commonEmote, confirmPossibleMaterialLocation, displayText, dropAWinner, dropAWinner, getActivityMessageType, getBrand, getBrand, getCompletedActivityMessageType, getDuration, getMyCodeNum, getRawTrainingCost, getRequiredFire, getStat, getStatCodes, getUninvokeException, iniPracticesToPractice, isMadeOfSupportedResource, loadList, loadRecipes, lookingForMat, lookingForMat, lookingForRsc, lookingForRsc, okMessage, setAbilityCode, setBrand, setStat, setTickUp, startTickDown, supportedResourcesMap, teach, usageCost, usageType, xlevelamDestroyed, destroy, isSavable, setSavabledescription, displayText, image, isGeneric, L, maxRange, minRange, miscTextFormat, Name, rawImage, sameAs, setDescription, setDisplayText, setImage, setNameexpirationDate, setExpirationDategetSaveStatIndex, getStat, getStatCodes, isStat, setStatexecuteMsg, okMessageclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaffectCharState, affectCharStatsaccountForYourself, adjustBeneficialTickdownTime, adjustedLevel, adjustedMaxInvokerRange, adjustMaliciousTickdownTime, affectCharState, affectCharStats, affecting, amDestroyed, aPossibleAbuserOfCasterLevel, appropriateToMyFactions, autoInvocation, beneficialAffect, beneficialSoundFizzle, beneficialVisualFizzle, beneficialWordsFizzle, bubbleAffect, buildCostArray, canAffect, canAffect, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingQuality, castingTime, checkComponents, checkedCastingCost, checkTargetRange, cloneFix, combatCastingTime, commonTell, commonTelL, commonTelL, compareTo, copyOf, description, destroy, disregardsArmorCheck, enchantQuality, evalTargetItem, executeMsg, expertise, expirationDate, externalFiles, failureTell, flags, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getBeneficialTickdownTime, getCodeNum, getHardOverrideManaCache, getInternalCodeNum, getMaliciousTickdownTime, getPersonalLevelAdjustments, getSaveStatIndex, 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, initializeClass, invoke, invoker, isAutoInvoked, isGeneric, isNowAnAutoEffect, isSavable, isStat, L, makeLongLasting, makeNonUninvokable, maliciousAffect, maliciousFizzle, maxRange, mayBeEnchanted, minCastWaitTime, minRange, miscTextFormat, modifyCastCode, Name, newInstance, overrideMana, possibleContainer, practice, practicesToPractice, preInvoke, proficiencyCheck, properTargetList, properTargets, putInCommandlist, rawImage, requirements, restoreCombatState, sameAs, saveCombatState, setAffectedOne, setDescription, setDisplayText, setExpirationDate, setImage, setInvoker, setName, setProficiency, setSavable, setTickDown, setTickDownRemaining, setTimeOfNextCast, setTimeOfNextCast, somaticCastCode, somaticCastMask, spreadImmunity, testUsageCost, unlearn, verbalCastCode, verbalCastMask, verbalSpeakCodegetTickStatusprotected volatile java.lang.String lastInstrType
protected volatile MusicalInstrument instrument
protected java.util.Map<java.lang.String,int[]> proficiencies
public java.lang.String ID()
CMObjectID in interface CMObjectID in class CommonSkillpublic java.lang.String name()
Tickablename in interface CMObjectname in interface Tickablename in class CommonSkillEnvironmental.Name()public java.lang.String supportedResourceString()
supportedResourceString in class CommonSkillpublic java.lang.String[] triggerStrings()
AbilitytriggerStrings in interface AbilitytriggerStrings in class CommonSkillAbility.putInCommandlist()public int classificationCode()
AbilityclassificationCode in interface AbilityclassificationCode in class CommonSkillAbilityprotected boolean canBeDoneSittingDown()
canBeDoneSittingDown in class CommonSkillpublic int getEnchantType()
Wand.WandUsagegetEnchantType in interface Wand.WandUsageAbility.ACODE_CHANTpublic void unInvoke()
AbilityunInvoke in interface AbilityunInvoke in class CommonSkillAbility.canBeUninvoked()protected java.lang.String getAlmostDoneMessage()
getAlmostDoneMessage in class CommonSkillprotected java.lang.String getYouContinueMessage()
getYouContinueMessage in class CommonSkillprotected java.lang.String getOthersContinueMessage()
getOthersContinueMessage in class CommonSkillpublic void setMiscText(java.lang.String text)
EnvironmentalsetMiscText in interface EnvironmentalsetMiscText in class CommonSkilltext - either an open internal text string, or XMLpublic java.lang.String text()
Environmentaltext in interface Environmentaltext in class StdAbilitypublic int proficiency()
Abilityproficiency in interface Abilityproficiency in class StdAbilityAbilityContainer.addAbility(Ability), 
Ability.setProficiency(int)public void affectPhyStats(Physical affected, PhyStats affectableStats)
StatsAffectingaffectPhyStats in interface StatsAffectingaffectPhyStats in class StdAbilityaffected - the host of the PhyStats object being affectedaffectableStats - the particular PhyStats object being affectedPhyStats, 
Environmental, 
Affectable.basePhyStats(), 
Affectable.phyStats(), 
Affectable.recoverPhyStats()public static boolean usingInstrument(MusicalInstrument I, MOB mob)
public boolean tick(Tickable ticking, int tickID)
Tickabletick in interface Tickabletick in class CommonSkillticking - a reference to this Tickable objecttickID - the TICKID_ constant describing this periodic call, as defined in TickableTickable, 
ServiceEngine, 
TickableGroupprotected MusicalInstrument getInstrumentPlayed(MOB mob)
public boolean invoke(MOB mob, java.util.List<java.lang.String> commands, Physical givenTarget, boolean auto, int asLevel)
Abilityinvoke in interface Abilityinvoke in class CommonSkillmob - 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.