com.planet_ink.coffee_mud.Abilities.Common
Class EnhancedCraftingSkill
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
- All Implemented Interfaces:
- Ability, CraftorAbility, ItemCraftor, CMObject, Contingent, Environmental, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
- Direct Known Subclasses:
- Armorsmithing, Blacksmithing, Carpentry, Cobbling, Cooking, Fletching, GenCraftSkill, JewelMaking, LeatherWorking, MasterLeatherWorking, Paladin_CraftHolyAvenger, ScrimShaw, Sculpting, Smelting, StaffMaking, Tailoring, Textiling, WandMaking, Weaponsmithing, Weaving
public class EnhancedCraftingSkill
- extends CraftingSkill
- 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 |
void |
addSpellAdjustment(Item item,
java.lang.String spell,
java.lang.String parm)
|
void |
addStatAdjustment(Item item,
java.lang.String stat,
java.lang.String adjustment)
|
protected void |
applyName(Item item,
java.lang.String word,
boolean hide)
|
protected java.lang.String |
applyName(java.lang.String name,
java.lang.String word)
|
protected java.lang.String |
cleanBuildingNameForXP(MOB mob,
java.lang.String name)
|
PairVector<CraftingSkill.EnhancedExpertise,java.lang.Integer> |
enhancedTypes(MOB mob,
java.util.List<java.lang.String> commands)
|
void |
enhanceItem(MOB mob,
Item item,
int recipeLevel,
PairVector<CraftingSkill.EnhancedExpertise,java.lang.Integer> types)
|
void |
enhanceList(MOB mob)
|
protected int[][] |
fetchFoundResourceData(MOB mob,
int req1Required,
java.lang.String req1Desc,
int[] req1,
int req2Required,
java.lang.String req2Desc,
int[] req2,
boolean bundle,
int autoGeneration,
PairVector<CraftingSkill.EnhancedExpertise,java.lang.Integer> expMods)
|
java.util.List<java.util.List<java.lang.String>> |
fetchMyRecipes(MOB mob)
A list containing an entry for each craftable recipe
both standard, and extra recipes from given mob
Each craftable recipe is also a list of strings. |
void |
fixDataForComponents(int[][] data,
java.lang.String woodRequiredStr,
boolean autoGeneration,
java.util.List<java.lang.Object> componentsFoundList,
int amount)
|
java.util.List<ExpertiseLibrary.ExpertiseDefinition> |
getAllThisSkillsDefinitions()
|
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. |
protected CraftingSkill.EnhancedExpertise |
getLocalExpCode(java.lang.String exp)
|
java.util.List<java.lang.String> |
getThisSkillsExpertises()
|
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of
this object. |
protected java.util.List<java.util.List<java.lang.String>> |
loadList(java.lang.StringBuffer str)
|
java.lang.String |
name()
The nice displayable name of this instance of this object |
java.util.Hashtable<java.lang.String,java.lang.String> |
parametersFields()
|
java.lang.String |
parametersFormat()
A String containing the format of each entry in the parameter file
in a recipe. |
protected boolean |
supportsArmors()
|
boolean |
supportsDeconstruction()
Returns true if mundane items can be demonstructed into recipes with this skill. |
protected boolean |
supportsWeapons()
|
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.CraftingSkill |
accountForYourself, addRecipes, addSpells, adjustWoodRequired, autoGenInvoke, canMend, checkInfo, classificationCode, craftAllItemSets, craftAllItemSets, craftAnyItem, craftItem, craftItem, craftItem, deconstructRecipeInto, determineFinalName, doLearnRecipe, dropAWinner, fetchRecipes, getAbilityComponents, getAllMendable, getBuildingMaterial, getComponentDescription, getContainerType, getDecodedItemNameAndLevel, getItemWeightMultiplier, getNonStandardComponentRequirements, getPercentChanceToDeconstruct, getStandardWeight, isANativeItem, loadRecipes, matchingRecipeNames, matchingRecipeNames, mayBeCrafted, mayICraft, mayICraft, mayILearnToCraft, messedUpCrafting, parametersFile, 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, invoke, isMadeOfSupportedResource, loadRecipes, lookingForMat, lookingForMat, lookingForRsc, lookingForRsc, okMessage, setAbilityCode, setBrand, setMiscText, setStat, startTickDown, supportedResourcesMap, teach, tick, unInvoke, 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, 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 java.lang.Comparable |
compareTo |
HIDE_MASK
protected static final int HIDE_MASK
- See Also:
- Constant Field Values
STAGE_MASK
protected static final int STAGE_MASK
- See Also:
- Constant Field Values
materialAdjustments
protected int materialAdjustments
EnhancedCraftingSkill
public EnhancedCraftingSkill()
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 CraftingSkill
- 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 CraftingSkill
- Returns:
- the displayable name of this object instance
- See Also:
Environmental.Name()
parametersFields
public java.util.Hashtable<java.lang.String,java.lang.String> parametersFields()
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
- Returns:
- a String showing the format of each entry in the parameter file
supportsDeconstruction
public boolean supportsDeconstruction()
- Description copied from interface:
ItemCraftor
- Returns true if mundane items can be demonstructed into recipes with this skill.
- Specified by:
supportsDeconstruction
in interface ItemCraftor
- Returns:
- true if mundane items can be demonstructed into recipes with this skill.
supportsArmors
protected boolean supportsArmors()
- Overrides:
supportsArmors
in class CraftingSkill
supportsWeapons
protected boolean supportsWeapons()
- Overrides:
supportsWeapons
in class CraftingSkill
fetchMyRecipes
public java.util.List<java.util.List<java.lang.String>> fetchMyRecipes(MOB mob)
- Description copied from interface:
CraftorAbility
- A list containing an entry for each craftable recipe
both standard, and extra recipes from given mob
Each craftable recipe is also a list of strings.
- Specified by:
fetchMyRecipes
in interface CraftorAbility
- Parameters:
mob
- the mob to check for extra recipes
- Returns:
- a vector of vectors
fetchFoundResourceData
protected int[][] fetchFoundResourceData(MOB mob,
int req1Required,
java.lang.String req1Desc,
int[] req1,
int req2Required,
java.lang.String req2Desc,
int[] req2,
boolean bundle,
int autoGeneration,
PairVector<CraftingSkill.EnhancedExpertise,java.lang.Integer> expMods)
- Overrides:
fetchFoundResourceData
in class CraftingSkill
fixDataForComponents
public void fixDataForComponents(int[][] data,
java.lang.String woodRequiredStr,
boolean autoGeneration,
java.util.List<java.lang.Object> componentsFoundList,
int amount)
getLocalExpCode
protected CraftingSkill.EnhancedExpertise getLocalExpCode(java.lang.String exp)
applyName
protected java.lang.String applyName(java.lang.String name,
java.lang.String word)
applyName
protected void applyName(Item item,
java.lang.String word,
boolean hide)
getThisSkillsExpertises
public java.util.List<java.lang.String> getThisSkillsExpertises()
loadList
protected java.util.List<java.util.List<java.lang.String>> loadList(java.lang.StringBuffer str)
- Overrides:
loadList
in class CommonSkill
enhanceList
public void enhanceList(MOB mob)
getAllThisSkillsDefinitions
public java.util.List<ExpertiseLibrary.ExpertiseDefinition> getAllThisSkillsDefinitions()
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
- Parameters:
mob
- the potential builderrecipe
- the raw recipe description
- Returns:
- a descriptive string
enhancedTypes
public PairVector<CraftingSkill.EnhancedExpertise,java.lang.Integer> enhancedTypes(MOB mob,
java.util.List<java.lang.String> commands)
addStatAdjustment
public void addStatAdjustment(Item item,
java.lang.String stat,
java.lang.String adjustment)
addSpellAdjustment
public void addSpellAdjustment(Item item,
java.lang.String spell,
java.lang.String parm)
cleanBuildingNameForXP
protected java.lang.String cleanBuildingNameForXP(MOB mob,
java.lang.String name)
- Overrides:
cleanBuildingNameForXP
in class CraftingSkill
enhanceItem
public void enhanceItem(MOB mob,
Item item,
int recipeLevel,
PairVector<CraftingSkill.EnhancedExpertise,java.lang.Integer> types)