Ability, CMObject, Contingent, Environmental, Expireable, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>Song_Armor, Song_Babble, Song_Blasting, Song_Charm, Song_Clumsiness, Song_Comprehension, Song_Death, Song_Detection, Song_Dexterity, Song_Disgust, Song_Distraction, Song_EnchantInstrument, Song_Flight, Song_Flying, Song_Friendship, Song_Health, Song_Inebriation, Song_Knowledge, Song_Lethargy, Song_Lightness, Song_Lullibye, Song_Mana, Song_Mercy, Song_Mute, Song_Nothing, Song_Ode, Song_PirateShanty, Song_Protection, Song_Quickness, Song_Rage, Song_ReadMusic, Song_Rebirth, Song_RechargeInstrument, Song_RestoreMusic, Song_Revelation, Song_Saudade, Song_Seeing, Song_Serenity, Song_Silence, Song_SingleMindedness, Song_Strength, Song_Thanks, Song_Valorpublic class Song extends StdAbility
| Modifier and Type | Field | Description |
|---|---|---|
protected Pair<java.lang.Double,java.lang.Integer> |
bonusCache |
|
protected java.util.List<Room> |
commonRoomSet |
|
protected int |
lyricCtr |
|
protected int |
lyricPauseCtdn |
|
protected Room |
originRoom |
|
protected int |
songDepth |
|
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 |
|---|---|
Song() |
| 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) |
|
protected java.util.List<Room> |
getInvokerScopeRoomSet(int depth) |
|
protected java.util.List<java.lang.String> |
getLyrics() |
|
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() |
|
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.
|
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
|
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 |
skipSimpleStandardSongTickToo() |
|
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 |
unSingAll(MOB mob,
MOB invoker,
boolean exceptThisOne,
boolean noEcho) |
|
protected boolean |
unSingMe(MOB mob,
MOB invoker,
boolean noEcho) |
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, usageType, verbalCastCode, verbalCastMask, verbalSpeakCodeprotected volatile long timeOut
protected volatile java.util.List<Room> commonRoomSet
protected volatile Room originRoom
protected volatile int songDepth
protected volatile int lyricCtr
protected volatile int lyricPauseCtdn
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 maxRange()
EnvironmentalmaxRange in interface EnvironmentalmaxRange in class StdAbilityprotected boolean HAS_QUANTITATIVE_ASPECT()
protected boolean skipStandardSongInvoke()
protected boolean mindAttack()
protected boolean skipStandardSongTick()
protected boolean maliciousButNotAggressiveFlag()
protected boolean skipSimpleStandardSongTickToo()
protected java.lang.String songOf()
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 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 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 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()protected java.util.List<java.lang.String> getLyrics()
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,
TickableGroupprotected 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.