com.planet_ink.coffee_mud.Abilities.Common
Class Carpentry
java.lang.Object
com.planet_ink.coffee_mud.Abilities.StdAbility
com.planet_ink.coffee_mud.Abilities.Common.CommonSkill
com.planet_ink.coffee_mud.Abilities.Common.GatheringSkill
com.planet_ink.coffee_mud.Abilities.Common.CraftingSkill
com.planet_ink.coffee_mud.Abilities.Common.EnhancedCraftingSkill
com.planet_ink.coffee_mud.Abilities.Common.Carpentry
- All Implemented Interfaces:
- Ability, CraftorAbility, ItemCraftor, CMObject, Contingent, Environmental, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
public class Carpentry
- extends EnhancedCraftingSkill
- implements ItemCraftor
Fields inherited from class com.planet_ink.coffee_mud.Abilities.Common.CraftingSkill |
activity, buildingI, CF_AMOUNT, CF_HARDNESS, CF_MATERIAL, CF_TOTAL, fireRequired, FOUND_AMT, FOUND_CODE, last25items, messedUp, RCP_FINALNAME, RCP_LEVEL, RCP_TICKS, recipeHolder |
Fields inherited from class com.planet_ink.coffee_mud.Abilities.Common.CommonSkill |
aborted, activityRoom, bonusYield, bundling, displayText, fakeFire, helping, helpingAbility, lastBaseDuration, playSound, resourcesMap, tickUp, uninvokeEmpties, verb |
Fields inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility |
affected, amDestroyed, canBeUninvoked, empty, invoker, isAnAutoEffect, lastCastHelp, miscText, proficiency, savable, tickDown, unInvoked |
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 |
protected boolean |
autoGenInvoke(MOB mob,
java.util.List<java.lang.String> commands,
Physical givenTarget,
boolean auto,
int asLevel,
int autoGenerate,
boolean forceLevels,
java.util.List<Item> crafted)
This method is called when a player or the system invokes this skill,
especially when they intend to use the skill to auto-generate an item
instead of following the more friendly user-crafting. |
protected boolean |
canMend(MOB mob,
Environmental E,
boolean quiet)
|
java.lang.String |
getDecodedComponentsDescription(MOB mob,
java.util.List<java.lang.String> recipe)
Given a raw recipe, returns a description of the required components to build it. |
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. |
protected java.util.List<java.util.List<java.lang.String>> |
loadRecipes()
|
boolean |
mayICraft(Item I)
Returns whether the given item could have been crafted by this skill. |
java.lang.String |
name()
The nice displayable name of this instance of this object |
java.lang.String |
parametersFile()
A String naming the file where the recipes are found |
java.lang.String |
parametersFormat()
A String containing the format of each entry in the parameter file
in a recipe. |
java.lang.String |
supportedResourceString()
|
boolean |
supportsMending(Physical I)
|
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. |
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.EnhancedCraftingSkill |
addSpellAdjustment, addStatAdjustment, applyName, applyName, cleanBuildingNameForXP, enhancedTypes, enhanceItem, enhanceList, fetchFoundResourceData, fetchMyRecipes, fixDataForComponents, getAllThisSkillsDefinitions, getLocalExpCode, getThisSkillsExpertises, loadList, parametersFields, supportsArmors, supportsDeconstruction, supportsWeapons |
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.CraftingSkill |
accountForYourself, addRecipes, addSpells, adjustWoodRequired, checkInfo, classificationCode, craftAllItemSets, craftAllItemSets, craftAnyItem, craftItem, craftItem, craftItem, deconstructRecipeInto, determineFinalName, doLearnRecipe, dropAWinner, fetchRecipes, getAbilityComponents, getAllMendable, getBuildingMaterial, getComponentDescription, getContainerType, getDecodedItemNameAndLevel, getItemWeightMultiplier, getNonStandardComponentRequirements, getPercentChanceToDeconstruct, getStandardWeight, isANativeItem, matchingRecipeNames, matchingRecipeNames, mayBeCrafted, mayICraft, mayILearnToCraft, messedUpCrafting, publicScan, randomRecipeFix, replacePercent, setMsgXPValue, setRideBasis, setWeaponTypeClass, setWeaponTypeClass, setWeaponTypeClass, setWearLocation |
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.CommonSkill |
abilityCode, abstractQuality, addedTickTime, allowedInTheDark, allowedWhileMounted, baseYield, bumpTickDown, canAffectCode, canBeDoneSittingDown, canBeLearnedBy, canTargetCode, checkStop, commonEmote, commonTell, commonTell, confirmPossibleMaterialLocation, displayText, dropAWinner, getActivityMessageType, getAlmostDoneMessage, getBrand, getBrand, getCodeNum, getCompletedActivityMessageType, getDuration, getOthersContinueMessage, getRawTrainingCost, getRequiredFire, getStat, getStatCodes, getUninvokeException, getYouContinueMessage, iniPracticesToPractice, isMadeOfSupportedResource, loadRecipes, lookingForMat, lookingForMat, lookingForRsc, lookingForRsc, okMessage, setAbilityCode, setBrand, setMiscText, setStat, startTickDown, supportedResourcesMap, teach, usageCost, usageType, xlevel |
Methods inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility |
adjustBeneficialTickdownTime, adjustedLevel, adjustedMaxInvokerRange, adjustMaliciousTickdownTime, affectCharState, affectCharStats, affecting, amDestroyed, appropriateToMyFactions, autoInvocation, beneficialAffect, beneficialVisualFizzle, beneficialWordsFizzle, bubbleAffect, buildCostArray, canAffect, canAffect, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingQuality, castingTime, checkComponents, checkedCastingCost, cloneFix, combatCastingTime, compareTo, copyOf, description, destroy, disregardsArmorCheck, enchantQuality, evalTargetItem, executeMsg, experienceLevels, expertise, expirationDate, externalFiles, flags, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getBeneficialTickdownTime, getHardOverrideManaCache, getInternalCodeNum, getMaliciousTickdownTime, getPersonalLevelAdjustments, getSaveStatIndex, getTarget, getTarget, getTarget, getTarget, getTarget, getTarget, getTarget, getTargetItemFavorMOB, getTargetItemFavorMOB, getTargetItemFavorMOB, getTickDownRemaining, getTicksBetweenCasts, getTickStatus, getTimeOfNextCast, getTrainingCost, getX1Level, getX2Level, getX3Level, getX4Level, getX5Level, getXLEVELLevel, getXLOWCOSTLevel, getXLOWFREECOSTLevel, getXMAXRANGELevel, getXPCOSTAdjustment, getXPCOSTLevel, getXTIMELevel, helpProficiency, I, image, initializeClass, invoke, invoker, isAutoInvoked, isGeneric, isNowAnAutoEffect, isSavable, isStat, L, makeLongLasting, makeNonUninvokable, maliciousAffect, maliciousFizzle, maxRange, minCastWaitTime, minRange, miscTextFormat, Name, newInstance, overrideMana, possibleContainer, practice, practicesToPractice, preInvoke, proficiency, proficiencyCheck, properTargetList, properTargets, putInCommandlist, rawImage, requirements, restoreCombatState, sameAs, saveCombatState, setAffectedOne, setDescription, setDisplayText, setExpirationDate, setImage, setInvoker, setName, setProficiency, setSavable, setTickDownRemaining, setTimeOfNextCast, setTimeOfNextCast, somanticCastCode, somanticCastMask, spreadImmunity, text, verbalCastCode, verbalCastMask, verbalSpeakCode |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
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, invoker, isAutoInvoked, isNowAnAutoEffect, makeLongLasting, makeNonUninvokable, practice, preInvoke, proficiency, proficiencyCheck, putInCommandlist, requirements, setAbilityCode, setAffectedOne, setInvoker, setProficiency, startTickDown, teach, 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 java.lang.Comparable |
compareTo |
RCP_WOOD
protected static final int RCP_WOOD
- See Also:
- Constant Field Values
RCP_VALUE
protected static final int RCP_VALUE
- See Also:
- Constant Field Values
RCP_CLASSTYPE
protected static final int RCP_CLASSTYPE
- See Also:
- Constant Field Values
RCP_MISCTYPE
protected static final int RCP_MISCTYPE
- See Also:
- Constant Field Values
RCP_CAPACITY
protected static final int RCP_CAPACITY
- See Also:
- Constant Field Values
RCP_ARMORDMG
protected static final int RCP_ARMORDMG
- See Also:
- Constant Field Values
RCP_CONTAINMASK
protected static final int RCP_CONTAINMASK
- See Also:
- Constant Field Values
RCP_SPELL
protected static final int RCP_SPELL
- See Also:
- Constant Field Values
key
protected DoorKey key
Carpentry
public Carpentry()
ID
public java.lang.String ID()
- Description copied from interface:
CMObject
- The CoffeeMud Java Class ID shared by all instances of
this object. Unlike the Java Class name, this method
does not include package information. However, it must
return a String value unique to its class category in
the ClassLoader. Class categories include Libraries, Common,
Areas, Abilities, Behaviors, CharClasses, Commands, Exits
Locales, MOBS, Races, WebMacros, Basic Items, Armor,
Weapons, ClanItems, Tech. The name is typically identical
to the class name.
- Specified by:
ID
in interface CMObject
- Overrides:
ID
in class EnhancedCraftingSkill
- Returns:
- the name of this class
name
public java.lang.String name()
- Description copied from interface:
Tickable
- The nice displayable name of this instance of this object
- Specified by:
name
in interface CMObject
- Specified by:
name
in interface Tickable
- Overrides:
name
in class EnhancedCraftingSkill
- Returns:
- the displayable name of this object instance
- See Also:
Environmental.Name()
triggerStrings
public java.lang.String[] triggerStrings()
- Description copied from interface:
Ability
- A set of the command strings the user types to access
this command when it is listed as a skill ability.
- Specified by:
triggerStrings
in interface Ability
- Overrides:
triggerStrings
in class GatheringSkill
- Returns:
- an array of command invoking string words
- See Also:
Ability.putInCommandlist()
supportedResourceString
public java.lang.String supportedResourceString()
- Overrides:
supportedResourceString
in class GatheringSkill
parametersFormat
public java.lang.String parametersFormat()
- Description copied from interface:
CraftorAbility
- A String containing the format of each entry in the parameter file
in a recipe.
- Specified by:
parametersFormat
in interface CraftorAbility
- Overrides:
parametersFormat
in class EnhancedCraftingSkill
- Returns:
- a String showing the format of each entry in the parameter file
tick
public boolean tick(Tickable ticking,
int tickID)
- Description copied from interface:
Tickable
- this is the method which is called periodically by the threading engine. How often it
is called depends on the parameters passed to the threadding engine when it is submitted
for thread access. Typically the period is once per TIME_TICK period, but that is
determined when the object is submitted to the thread engine.
- Specified by:
tick
in interface Tickable
- Overrides:
tick
in class CommonSkill
- Parameters:
ticking
- a reference to this Tickable objecttickID
- the TICKID_ constant describing this periodic call, as defined in Tickable
- Returns:
- true always, unless this object no longer wishes to ever tick again, in which case false
- See Also:
Tickable
,
ServiceEngine
,
TickableGroup
parametersFile
public java.lang.String parametersFile()
- Description copied from interface:
CraftorAbility
- A String naming the file where the recipes are found
- Specified by:
parametersFile
in interface CraftorAbility
- Overrides:
parametersFile
in class CraftingSkill
- Returns:
- a String naming the file where the recipes are found
loadRecipes
protected java.util.List<java.util.List<java.lang.String>> loadRecipes()
- Overrides:
loadRecipes
in class CraftingSkill
unInvoke
public void unInvoke()
- Description copied from interface:
Ability
- If this skill is uninvokable, this method will uninvoke it, remove it
as an effect on the target, and shut it down.
- Specified by:
unInvoke
in interface Ability
- Overrides:
unInvoke
in class CommonSkill
- See Also:
Ability.canBeUninvoked()
mayICraft
public boolean mayICraft(Item I)
- Description copied from interface:
ItemCraftor
- Returns whether the given item could have been crafted by this skill.
- Specified by:
mayICraft
in interface ItemCraftor
- Overrides:
mayICraft
in class CraftingSkill
- Parameters:
I
- the item to examine
- Returns:
- true if the item is consistent with this crafting, or false otherwise
supportsMending
public boolean supportsMending(Physical I)
canMend
protected boolean canMend(MOB mob,
Environmental E,
boolean quiet)
- Overrides:
canMend
in class CraftingSkill
getDecodedComponentsDescription
public java.lang.String getDecodedComponentsDescription(MOB mob,
java.util.List<java.lang.String> recipe)
- Description copied from interface:
CraftorAbility
- Given a raw recipe, returns a description of the required components to build it.
- Specified by:
getDecodedComponentsDescription
in interface CraftorAbility
- Overrides:
getDecodedComponentsDescription
in class EnhancedCraftingSkill
- Parameters:
mob
- the potential builderrecipe
- the raw recipe description
- Returns:
- a descriptive string
invoke
public boolean invoke(MOB mob,
java.util.List<java.lang.String> commands,
Physical givenTarget,
boolean auto,
int asLevel)
- Description copied from interface:
Ability
- This method is called when a player or the system invokes this skill,
casts this spell, etc.
Calls the more complete invoke method without an empty command strings vector
unless target is non-null, in which case the vector will contain the name
of the target.
- Specified by:
invoke
in interface Ability
- Overrides:
invoke
in class CommonSkill
- Parameters:
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.
- Returns:
- whether the skill successfully invoked.
autoGenInvoke
protected boolean autoGenInvoke(MOB mob,
java.util.List<java.lang.String> commands,
Physical givenTarget,
boolean auto,
int asLevel,
int autoGenerate,
boolean forceLevels,
java.util.List<Item> crafted)
- Description copied from class:
CraftingSkill
- This method is called when a player or the system invokes this skill,
especially when they intend to use the skill to auto-generate an item
instead of following the more friendly user-crafting.
Calls the more complete invoke method without an empty command strings vector
unless target is non-null, in which case the vector will contain the name
of the target.
- Overrides:
autoGenInvoke
in class CraftingSkill
- Parameters:
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.autoGenerate
- 0, unless auto generation, in which case it's a RawMaterial Resource Code numberforceLevels
- true to override other level modifiers on the items to force the Stock level.crafted
- when autoGenerate > 0, this is where the auto generated crafted items are placed
- Returns:
- whether the skill successfully invoked.