com.planet_ink.coffee_mud.Abilities.interfaces
Interface Trap

All Superinterfaces:
Ability, java.lang.Cloneable, CMObject, java.lang.Comparable<CMObject>, Contingent, Environmental, Modifiable, MsgListener, StatsAffecting, Tickable
All Known Implementing Classes:
Bomb_AcidBurst, Bomb_Explosive, Bomb_FlameBurst, Bomb_Noxious, Bomb_Pepper, Bomb_Poison, Bomb_Smoke, Bomb_Spores, Bomb_Water, Chant_PlantTrap, Chant_WhisperWard, Prayer_Bloatbomb, Spell_WardArea, StdBomb, StdTrap, Thief_Caltrops, Thief_DazzlingCaltrops, Thief_DeathTrap, Thief_DisablingCaltrops, Thief_ImprovedCaltrops, Thief_Lure, Thief_SetAlarm, Thief_SetDecoys, Thief_SlickCaltrops, Trap_AcidPit, Trap_AcidSpray, Trap_AcidThruPit, Trap_Avalanche, Trap_BearTrap, Trap_Boomerang, Trap_Boulders, Trap_CaveIn, Trap_CrushingRoom, Trap_Darkfall, Trap_DeepPit, Trap_DeepThruPit, Trap_ElectricShock, Trap_Enter, Trap_EnterBlade, Trap_EnterGas, Trap_EnterNeedle, Trap_EnterPit, Trap_EnterSpell, Trap_ExitPit, Trap_ExitRoom, Trap_FloodRoom, Trap_Get, Trap_GetBlade, Trap_GetGas, Trap_GetNeedle, Trap_GetSpell, Trap_Gluey, Trap_Greasy, Trap_Ignition, Trap_Infected, Trap_Launcher, Trap_MonsterCage, Trap_Needle, Trap_NeedlePrick, Trap_Noise, Trap_Open, Trap_OpenBlade, Trap_OpenGas, Trap_OpenNeedle, Trap_OpenSpell, Trap_PoisonGas, Trap_Popper, Trap_RatPit, Trap_RatThruPit, Trap_RoomPit, Trap_RoomThruPit, Trap_SleepGas, Trap_SnakePit, Trap_SnakeThruPit, Trap_Snare, Trap_Spark, Trap_SpellBlast, Trap_SpikePit, Trap_SpikeThruPit, Trap_SporeTrap, Trap_Trap, Trap_Tripline, Trap_Unlock, Trap_UnlockBlade, Trap_UnlockGas, Trap_UnlockNeedle, Trap_UnlockSpell, Trap_Vanishing, Trap_WeaponSwing

public interface Trap
extends Ability

A trap is a kind of ability that behaves mostly like a property, in that it is not typically invoked as a skill, although there are skills that generate or make use of Trap abilities.


Field Summary
static int TRAP_GAS
          deprecated gas trap-type constant for deprecated traps.
static int TRAP_NEEDLE
          deprecated needle trap-type constant for deprecated traps.
static int TRAP_PIT_BLADE
          deprecated pit or blade trap-type constant for deprecated traps.
static int TRAP_SPELL
          deprecated spell trap-type constant for deprecated traps.
 
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
 void activateBomb()
          When called, this will cause the bomb to begin its countdown to going off, which can differ from bomb-to-bomb.
 boolean canReSetTrap(MOB mob)
          Returns whether the given mob, at the given level, is allowed to re-set this trap.
 boolean canSetTrapOn(MOB mob, Physical P)
          Returns whether the given trapper is currently in a position to set this trap on the specified object.
 void disable()
          Causes the trap to become disabled and inert.
 boolean disabled()
          Whether this trap has been disabled, as by a thief
 int getReset()
          Return the number of ticks after a trap has been sprung before it will automatically reset itself for another victim.
 java.util.List<Item> getTrapComponents()
          Returns a sample set of the components used to make this trap.
 boolean isABomb()
          Returns whether this trap is a bomb, with delayed effect.
 boolean maySetTrap(MOB mob, int asLevel)
          Returns whether the given mob, at the given level, is allowed to set this trap.
 java.lang.String requiresToSet()
          A simple display string describing the conditions necesssary to get the canSetTrapOn method to return true.
 void resetTrap(MOB mob)
          Causes the trap to become reset and unsprung.
 void setReset(int reset)
          Sets the number of ticks to wait after a trap has been sprung, before it will automatically reset for another victim.
 Trap setTrap(MOB mob, Physical P, int trapBonus, int qualifyingClassLevel, boolean permanent)
          Completed the task of setting a trap on a given object.
 void spring(MOB target)
          This method causes this trap to take affect against the given target.
 boolean sprung()
          Returns whether this trap has already been sprung (and is not yet reset)
 
Methods inherited from interface com.planet_ink.coffee_mud.Abilities.interfaces.Ability
abilityCode, abstractQuality, accountForYourself, adjustedLevel, affecting, appropriateToMyFactions, autoInvocation, bubbleAffect, canAffect, canAffect, canBeLearnedBy, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingTime, checkedCastingCost, classificationCode, combatCastingTime, enchantQuality, externalFiles, flags, getTrainingCost, helpProficiency, invoke, invoke, invoker, isAutoInvoked, isNowAnAutoEffect, makeLongLasting, makeNonUninvokable, practice, preInvoke, proficiency, proficiencyCheck, putInCommandlist, requirements, setAbilityCode, setAffectedOne, setInvoker, setProficiency, startTickDown, teach, triggerStrings, unInvoke, usageCost, usageType
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Environmental
description, displayText, expirationDate, image, isGeneric, L, maxRange, minRange, miscTextFormat, Name, rawImage, sameAs, setDescription, setDisplayText, setExpirationDate, setImage, setMiscText, setName, text
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Tickable
getTickStatus, name, tick
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.StatsAffecting
affectCharState, affectCharStats, affectPhyStats
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.MsgListener
executeMsg, okMessage
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Contingent
amDestroyed, destroy, isSavable, setSavable
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.CMObject
copyOf, ID, initializeClass, newInstance
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.Modifiable
getSaveStatIndex, getStat, getStatCodes, isStat, setStat
 

Field Detail

TRAP_NEEDLE

static final int TRAP_NEEDLE
deprecated needle trap-type constant for deprecated traps. Returned by internal trapType() methods.

See Also:
Constant Field Values

TRAP_PIT_BLADE

static final int TRAP_PIT_BLADE
deprecated pit or blade trap-type constant for deprecated traps. Returned by internal trapType() methods.

See Also:
Constant Field Values

TRAP_GAS

static final int TRAP_GAS
deprecated gas trap-type constant for deprecated traps. Returned by internal trapType() methods.

See Also:
Constant Field Values

TRAP_SPELL

static final int TRAP_SPELL
deprecated spell trap-type constant for deprecated traps. Returned by internal trapType() methods.

See Also:
Constant Field Values
Method Detail

isABomb

boolean isABomb()
Returns whether this trap is a bomb, with delayed effect.

Returns:
true if its a bomb, false otherwise

activateBomb

void activateBomb()
When called, this will cause the bomb to begin its countdown to going off, which can differ from bomb-to-bomb.


disabled

boolean disabled()
Whether this trap has been disabled, as by a thief

Returns:
true if disabled, false otherwise
See Also:
disable()

disable

void disable()
Causes the trap to become disabled and inert. Called usually by thief type skills.

See Also:
disabled()

spring

void spring(MOB target)
This method causes this trap to take affect against the given target. The type of effect can differ from trap to trap.

Parameters:
target - the target of the effect
See Also:
sprung()

sprung

boolean sprung()
Returns whether this trap has already been sprung (and is not yet reset)

Returns:
true if it has been sprung, false otherwise.
See Also:
spring(MOB)

resetTrap

void resetTrap(MOB mob)
Causes the trap to become reset and unsprung. Called usually by thief type skills.

Parameters:
mob - the person resetting the trap
See Also:
canReSetTrap(MOB)

canReSetTrap

boolean canReSetTrap(MOB mob)
Returns whether the given mob, at the given level, is allowed to re-set this trap. This is where level restrictions are enforced, though no messages should be given.

Parameters:
mob - the trap setter to check
Returns:
true if the given trapper is allowed to reset this trap, false otherwise
See Also:
canSetTrapOn(MOB, Physical), resetTrap(MOB)

setReset

void setReset(int reset)
Sets the number of ticks to wait after a trap has been sprung, before it will automatically reset for another victim. A reset value of 0 means the trap is only useful once.

Parameters:
reset - the number of ticks between uses
See Also:
getReset()

getReset

int getReset()
Return the number of ticks after a trap has been sprung before it will automatically reset itself for another victim. A value of 0 means the trap is only useful once.

Returns:
the number of ticks between resets
See Also:
setReset(int)

maySetTrap

boolean maySetTrap(MOB mob,
                   int asLevel)
Returns whether the given mob, at the given level, is allowed to set this trap. This is where level restrictions are enforced, though no messages should be given.

Parameters:
mob - the trap setter to check
asLevel - the level of the trapper, compared to this traps internal level
Returns:
true if the given trapper is allowed to set this trap, false otherwise
See Also:
canSetTrapOn(MOB, Physical), setTrap(MOB, Physical, int, int, boolean)

getTrapComponents

java.util.List<Item> getTrapComponents()
Returns a sample set of the components used to make this trap.

Returns:
a vector of item objects

canSetTrapOn

boolean canSetTrapOn(MOB mob,
                     Physical P)
Returns whether the given trapper is currently in a position to set this trap on the specified object. Error messages should be delivered to the trapper if any internal checks aren't made. Required materials or conditions are checked here

Parameters:
mob - the trapper
P - the object this trap will be set upon
Returns:
true if the trapper has everything he needs to proceed, false otherwise
See Also:
maySetTrap(MOB, int), setTrap(MOB, Physical, int, int, boolean)

setTrap

Trap setTrap(MOB mob,
             Physical P,
             int trapBonus,
             int qualifyingClassLevel,
             boolean permanent)
Completed the task of setting a trap on a given object. If any materials are required, this method will consume them. If it is a bomb, it will still require activation, however. This wil also set the reset time based on the given classlevel and qualifyingClassLevel of the trapper.

Parameters:
mob - the trapper
P - the object to set the trap on
trapBonus - any bonus to the traps effectiveness (0 is normal)
qualifyingClassLevel - the class-level at which the trapper qualified for this trap
permanent - true to make the trap reset after being triggered or disarmed, false to destroy
Returns:
the Trap object denoting the trap just added to the target object

requiresToSet

java.lang.String requiresToSet()
A simple display string describing the conditions necesssary to get the canSetTrapOn method to return true.

Returns:
a descriptive text for this trap.
See Also:
canSetTrapOn(MOB, Physical)