Ability
, TriggeredAffect
, AbilityContainer
, CMObject
, Contingent
, Environmental
, Expireable
, Modifiable
, MsgListener
, StatsAffecting
, Tickable
, java.lang.Cloneable
, java.lang.Comparable<CMObject>
Prop_FightSpellCast
, Prop_HaveEnabler
, Prop_HaveSpellCast
, Prop_UseSpellCast
public class Prop_SpellAdder extends Property implements AbilityContainer, TriggeredAffect
Modifier and Type | Field | Description |
---|---|---|
protected short |
chanceToHappen |
|
protected MaskingLibrary.CompiledZMask |
compiledMask |
|
protected MOB |
invokerMOB |
|
protected Physical |
lastMOB |
|
protected short |
level |
|
protected short |
maxTicks |
|
protected boolean |
onClosed |
|
protected boolean |
processing |
|
protected PairList<Ability,java.lang.Integer> |
spellV |
|
protected boolean |
uninvocable |
|
protected java.util.List<Ability> |
unrevocableSpells |
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_TOTAL
idConverter
affected, amDestroyed, empty, miscText, savable
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_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
TRIGGER_ALWAYS, TRIGGER_BEING_HIT, TRIGGER_DESC, TRIGGER_DROP_PUTIN, TRIGGER_ENTER, TRIGGER_GET, TRIGGER_HITTING_WITH, TRIGGER_MOUNT, TRIGGER_PUT, TRIGGER_USE, TRIGGER_WEAR_WIELD
Constructor | Description |
---|---|
Prop_SpellAdder() |
Modifier and Type | Method | Description |
---|---|---|
java.util.Enumeration<Ability> |
abilities() |
Returns an enumerator of the Ability objects in this container.
|
java.lang.String |
accountForYourself() |
For use by the identify spell, this should return a
nice description of any properties incorporated
by this effect.
|
void |
addAbility(Ability to) |
Adds a new ability to this for use.
|
boolean |
addMeIfNeccessary(PhysicalAgent source,
Physical target,
boolean makeLongLasting,
int asLevel,
short maxTicks) |
|
void |
affectPhyStats(Physical host,
PhyStats affectableStats) |
This method is called by the recoverPhyStats() method on other Environmental objects.
|
java.util.Enumeration<Ability> |
allAbilities() |
Returns an enumerator of the Ability objects in this container.
|
protected int |
canAffectCode() |
Designates whether, when used as a property/effect, what sort of objects
this ability can affect.
|
java.util.List<Triad<Ability,java.util.List<java.lang.String>,java.lang.Integer>> |
convertToV2(PairList<Ability,java.lang.Integer> spellsV,
Physical target) |
|
void |
delAbility(Ability to) |
Removes the exact given ability object from here.
|
void |
delAllAbilities() |
Removes all owned abilities from this container.
|
boolean |
didHappen() |
|
void |
executeMsg(Environmental host,
CMMsg msg) |
The general message event handler for the object.
|
Ability |
fetchAbility(int index) |
Returns the Ability object at that index in this container.
|
Ability |
fetchAbility(java.lang.String ID) |
If contained herein, this will return the ability from this
container of the given ID.
|
Ability |
fetchRandomAbility() |
Returns a random ability from this container.
|
protected void |
finalize() |
|
long |
flags() |
Returns a bitmap giving some specific information about
the scope and purpose of the skill.
|
MOB |
getBestInvokerMOB(Environmental target) |
|
MOB |
getInvokerMOB(Environmental source,
Environmental target) |
|
java.lang.String |
getMaskString(java.lang.String newText) |
|
protected PairList<Ability,java.lang.Integer> |
getMySpellsV() |
|
java.lang.String |
getParmString(java.lang.String newText) |
|
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.util.Map<java.lang.String,java.lang.String> |
makeMySpellsH(java.util.Iterator<Ability> v) |
|
java.lang.String |
name() |
The nice displayable name of this instance of this object
|
int |
numAbilities() |
Returns the number of abilities contained herein this object.
|
int |
numAllAbilities() |
Returns the number of all abilities in this container.
|
void |
removeMyAffectsFrom(Physical P) |
|
void |
removeMyAffectsFromLastMOB() |
|
void |
setAffectedOne(Physical P) |
Sets a reference to the room, item, mob, or exit
that is currently being affected by this skill.
|
void |
setMiscText(java.lang.String newText) |
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.
|
protected boolean |
setOtherField(java.lang.String var) |
|
java.lang.String |
spellAccountingsWithMask(java.lang.String pre,
java.lang.String post) |
|
int |
triggerMask() |
This method returns a mask of TRIGGER_* constants denoting what triggers the properties
|
abilityCode, abstractQuality, adjustedLevel, affecting, appropriateToMyFactions, autoInvocation, bubbleAffect, canAffect, canAffect, canBeLearnedBy, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingTime, checkedCastingCost, classificationCode, combatCastingTime, enchantQuality, externalFiles, getTrainingCost, helpProficiency, invoke, invoker, isAutoInvoked, isNowAnAutoEffect, makeLongLasting, makeNonUninvokable, mayBeEnchanted, practice, preInvoke, proficiency, proficiencyCheck, putInCommandlist, requirements, setAbilityCode, setInvoker, setProficiency, startTickDown, teach, triggerStrings, unInvoke, unlearn, usageCost, usageType
copyOf, initializeClass, newInstance
amDestroyed, destroy, isSavable, setSavable
description, displayText, image, isGeneric, L, maxRange, minRange, miscTextFormat, Name, rawImage, sameAs, setDescription, setDisplayText, setImage, setName, text
expirationDate, setExpirationDate
getSaveStatIndex, getStat, getStatCodes, isStat, setStat
okMessage
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
canAffect, canAffect, canTarget, canTargetCode, classificationCode, copyOf, newInstance, sameAs, setDescription, setDisplayText
affectCharState, affectCharStats
abilityCode, abstractQuality, adjustedLevel, affectCharState, affectCharStats, affecting, amDestroyed, appropriateToMyFactions, autoInvocation, bubbleAffect, canBeLearnedBy, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, castingQuality, castingTime, checkedCastingCost, combatCastingTime, compareTo, description, destroy, displayText, enchantQuality, expirationDate, externalFiles, getCodeNum, getSaveStatIndex, getStat, getStatCodes, getTickStatus, getTrainingCost, helpProficiency, image, initializeClass, invoke, invoker, isAutoInvoked, isGeneric, isNowAnAutoEffect, isSavable, isStat, L, makeLongLasting, makeNonUninvokable, maxRange, mayBeEnchanted, minRange, miscTextFormat, Name, okMessage, practice, preInvoke, proficiency, proficiencyCheck, putInCommandlist, rawImage, requirements, setAbilityCode, setExpirationDate, setImage, setInvoker, setName, setProficiency, setSavable, setStat, startTickDown, teach, text, tick, triggerStrings, unInvoke, unlearn, usageCost, usageType
getTickStatus, tick
protected Physical lastMOB
protected MOB invokerMOB
protected boolean uninvocable
protected short level
protected short maxTicks
protected boolean onClosed
protected short chanceToHappen
protected MaskingLibrary.CompiledZMask compiledMask
protected volatile boolean processing
protected java.util.List<Ability> unrevocableSpells
public java.lang.String ID()
CMObject
public java.lang.String name()
Tickable
protected int canAffectCode()
Property
canAffectCode
in class Property
Ability
public long flags()
Ability
flags
in interface Ability
flags
in class ThinAbility
Ability
public int triggerMask()
TriggeredAffect
triggerMask
in interface TriggeredAffect
TriggeredAffect.TRIGGER_ALWAYS
protected void finalize()
finalize
in class java.lang.Object
public java.lang.String getMaskString(java.lang.String newText)
public java.lang.String getParmString(java.lang.String newText)
public void setMiscText(java.lang.String newText)
Environmental
setMiscText
in interface Environmental
setMiscText
in class ThinAbility
newText
- either an open internal text string, or XMLprotected boolean setOtherField(java.lang.String var)
public boolean didHappen()
public java.util.Map<java.lang.String,java.lang.String> makeMySpellsH(java.util.Iterator<Ability> v)
public MOB getBestInvokerMOB(Environmental target)
public MOB getInvokerMOB(Environmental source, Environmental target)
public java.util.List<Triad<Ability,java.util.List<java.lang.String>,java.lang.Integer>> convertToV2(PairList<Ability,java.lang.Integer> spellsV, Physical target)
public boolean addMeIfNeccessary(PhysicalAgent source, Physical target, boolean makeLongLasting, int asLevel, short maxTicks)
public java.lang.String accountForYourself()
Ability
accountForYourself
in interface Ability
accountForYourself
in class ThinAbility
public void removeMyAffectsFromLastMOB()
public void setAffectedOne(Physical P)
Ability
setAffectedOne
in interface Ability
setAffectedOne
in class ThinAbility
P
- the room, mob, or item being affectedAbility.affecting()
public void removeMyAffectsFrom(Physical P)
public void executeMsg(Environmental host, CMMsg msg)
MsgListener
executeMsg
in interface MsgListener
executeMsg
in class ThinAbility
host
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that needs to be executedCMMsg
public void affectPhyStats(Physical host, PhyStats affectableStats)
StatsAffecting
affectPhyStats
in interface StatsAffecting
affectPhyStats
in class ThinAbility
host
- the host of the PhyStats object being affectedaffectableStats
- the particular PhyStats object being affectedPhyStats
,
Environmental
,
Affectable.basePhyStats()
,
Affectable.phyStats()
,
Affectable.recoverPhyStats()
public java.lang.String spellAccountingsWithMask(java.lang.String pre, java.lang.String post)
public void addAbility(Ability to)
AbilityContainer
addAbility
in interface AbilityContainer
to
- the Ability to add.Ability
public void delAbility(Ability to)
AbilityContainer
delAbility
in interface AbilityContainer
to
- the exact Ability to removeAbility
public int numAbilities()
AbilityContainer
numAbilities
in interface AbilityContainer
Ability
public Ability fetchAbility(int index)
AbilityContainer
fetchAbility
in interface AbilityContainer
index
- the index of the Ability object to returnAbility
public Ability fetchAbility(java.lang.String ID)
AbilityContainer
fetchAbility
in interface AbilityContainer
ID
- the ID of the ability to return.Ability
public Ability fetchRandomAbility()
AbilityContainer
fetchRandomAbility
in interface AbilityContainer
Ability
public java.util.Enumeration<Ability> abilities()
AbilityContainer
abilities
in interface AbilityContainer
public void delAllAbilities()
AbilityContainer
delAllAbilities
in interface AbilityContainer
public int numAllAbilities()
AbilityContainer
numAllAbilities
in interface AbilityContainer
public java.util.Enumeration<Ability> allAbilities()
AbilityContainer
allAbilities
in interface AbilityContainer
public boolean invoke(MOB mob, java.util.List<java.lang.String> commands, Physical givenTarget, boolean auto, int asLevel)
Ability
invoke
in interface Ability
invoke
in class ThinAbility
mob
- 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.