com.planet_ink.coffee_mud.Abilities.Common
Class CraftingSkill

java.lang.Object
  extended by com.planet_ink.coffee_mud.Abilities.StdAbility
      extended by com.planet_ink.coffee_mud.Abilities.Common.CommonSkill
          extended by com.planet_ink.coffee_mud.Abilities.Common.GatheringSkill
              extended by com.planet_ink.coffee_mud.Abilities.Common.CraftingSkill
All Implemented Interfaces:
Ability, CMObject, Contingent, Environmental, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
Direct Known Subclasses:
Boatwright, BuildingSkill, ClanCrafting, Costuming, Dissertating, EnhancedCraftingSkill, GlassBlowing, InstrumentMaking, LockSmith, PaperMaking, Pottery, Shipwright, SpellCraftingSkill, Taxidermy, Torturesmithing, Wainwrighting

public class CraftingSkill
extends GatheringSkill


Nested Class Summary
protected static class CraftingSkill.CraftingActivity
           
protected static class CraftingSkill.CraftParms
           
protected static class CraftingSkill.EnhancedExpertise
           
protected static class CraftingSkill.FoundResourceData
           
protected static class CraftingSkill.FoundResources
           
 
Field Summary
protected  CraftingSkill.CraftingActivity activity
           
protected  Item buildingI
           
protected static int CF_AMOUNT
           
protected static int CF_HARDNESS
           
protected static int CF_MATERIAL
           
protected static int CF_TOTAL
           
protected  boolean fireRequired
           
protected static int FOUND_AMT
           
protected static int FOUND_CODE
           
protected  java.util.LinkedList<java.lang.String> last25items
           
protected  boolean messedUp
           
protected static int RCP_FINALNAME
           
protected static int RCP_LEVEL
           
protected static int RCP_TICKS
           
protected  Recipe recipeHolder
           
 
Fields inherited from class com.planet_ink.coffee_mud.Abilities.Common.GatheringSkill
supportedResources
 
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
 
Constructor Summary
CraftingSkill()
           
 
Method Summary
 java.lang.String accountForYourself()
          For use by the identify spell, this should return a nice description of any properties incorporated by this effect.
protected  java.util.List<java.util.List<java.lang.String>> addRecipes(MOB mob, java.util.List<java.util.List<java.lang.String>> recipes)
           
protected  void addSpells(Physical P, java.lang.String spells, java.util.List<Ability> otherSpells1, java.util.List<Ability> otherSpells2)
           
protected  int adjustWoodRequired(int woodRequired, MOB mob)
           
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)
           
 boolean checkInfo(MOB mob, java.util.List<java.lang.String> commands)
           
 int classificationCode()
          Returns a bitmap describing the general classification of the skill (spell, skill, chant, or property, etc) and its domain.
protected  java.lang.String cleanBuildingNameForXP(MOB mob, java.lang.String name)
           
 java.util.List<ItemCraftor.ItemKeyPair> craftAllItemSets(boolean forceLevels)
           
 java.util.List<ItemCraftor.ItemKeyPair> craftAllItemSets(int material, boolean forceLevels)
           
 ItemCraftor.ItemKeyPair craftAnyItem(int material)
           
 ItemCraftor.ItemKeyPair craftItem(MOB mob, java.util.List<java.lang.String> recipes, int material, boolean forceLevels)
           
 ItemCraftor.ItemKeyPair craftItem(java.lang.String recipeName)
           
 ItemCraftor.ItemKeyPair craftItem(java.lang.String recipeName, int material, boolean forceLevels, boolean noSafety)
           
protected  boolean deconstructRecipeInto(MOB mob, Item I, Recipe R)
           
protected  java.lang.String determineFinalName(java.lang.String thisStr, int backupMaterial, MaterialLibrary.DeadResourceRecord res1, MaterialLibrary.DeadResourceRecord res2)
           
protected  boolean doLearnRecipe(MOB mob, java.util.List<java.lang.String> commands, Physical givenTarget, boolean auto, int asLevel)
           
protected  boolean dropAWinner(MOB mob, Item buildingI)
           
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> eduMods)
           
 java.util.List<java.util.List<java.lang.String>> fetchRecipes()
           
 java.util.List<java.lang.Object> getAbilityComponents(MOB mob, java.lang.String componentID, java.lang.String doingWhat, int autoGenerate, int[] compData, int adjustAmounts)
           
protected  java.util.Vector<Item> getAllMendable(MOB mob, Environmental from, Item contained)
           
protected  int getBuildingMaterial(int woodRequired, int[][] foundData, int[] compData)
           
 java.lang.String getComponentDescription(MOB mob, java.util.List<java.lang.String> recipe, int RCP_WOOD)
           
protected  long getContainerType(java.lang.String s)
           
 Pair<java.lang.String,java.lang.Integer> getDecodedItemNameAndLevel(java.util.List<java.lang.String> recipe)
           
 double getItemWeightMultiplier(boolean bundling)
           
protected  java.util.List<AbilityComponent> getNonStandardComponentRequirements(java.lang.String woodRequiredStr, int adjustAmounts)
           
protected  int getPercentChanceToDeconstruct(MOB crafterM, Item I)
           
 int getStandardWeight(int baseWoodRequired, boolean bundling)
           
 java.lang.String ID()
          The CoffeeMud Java Class ID shared by all instances of this object.
 boolean isANativeItem(java.lang.String name)
           
protected  java.util.List<java.util.List<java.lang.String>> loadRecipes()
           
protected  java.util.List<java.util.List<java.lang.String>> matchingRecipeNames(java.util.List<java.util.List<java.lang.String>> recipes, java.lang.String recipeName, boolean beLoose)
           
 java.util.List<java.util.List<java.lang.String>> matchingRecipeNames(java.lang.String recipeName, boolean beLoose)
           
protected  boolean mayBeCrafted(Item I)
           
 boolean mayICraft(Item I)
           
 boolean mayICraft(MOB crafterM, Item I)
           
protected  boolean mayILearnToCraft(MOB mob, Item I)
           
protected  void messedUpCrafting(MOB mob)
           
 java.lang.String name()
          The nice displayable name of this instance of this object
 java.lang.String parametersFile()
           
 boolean publicScan(MOB mob, java.util.List<java.lang.String> commands)
           
protected  void randomRecipeFix(MOB mob, java.util.List<java.util.List<java.lang.String>> recipes, java.util.List<java.lang.String> commands, int autoGeneration)
           
protected  java.lang.String replacePercent(java.lang.String thisStr, java.lang.String withThis)
           
protected  void setMsgXPValue(MOB mob, CMMsg msg)
           
protected  void setRideBasis(Rideable rideable, java.lang.String type)
           
protected  void setWeaponTypeClass(Weapon weapon, java.lang.String weaponClass)
           
protected  void setWeaponTypeClass(Weapon weapon, java.lang.String weaponClass, int flailedType)
           
protected  void setWeaponTypeClass(Weapon weapon, java.lang.String weaponClass, int flailedType, int naturalType)
           
protected  void setWearLocation(Item I, java.lang.String wearLocation, int hardnessMultiplier)
           
protected  boolean supportsArmors()
           
protected  boolean supportsWeapons()
           
 
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.GatheringSkill
affectPhyStats, bundle, fixResourceRequirement, myResources, supportedResourceString, triggerStrings
 
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, loadList, 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
 

Field Detail

buildingI

protected Item buildingI

recipeHolder

protected Recipe recipeHolder

fireRequired

protected boolean fireRequired

last25items

protected java.util.LinkedList<java.lang.String> last25items

activity

protected CraftingSkill.CraftingActivity activity

messedUp

protected boolean messedUp

RCP_FINALNAME

protected static final int RCP_FINALNAME
See Also:
Constant Field Values

RCP_LEVEL

protected static final int RCP_LEVEL
See Also:
Constant Field Values

RCP_TICKS

protected static final int RCP_TICKS
See Also:
Constant Field Values

CF_AMOUNT

protected static final int CF_AMOUNT
See Also:
Constant Field Values

CF_HARDNESS

protected static final int CF_HARDNESS
See Also:
Constant Field Values

CF_MATERIAL

protected static final int CF_MATERIAL
See Also:
Constant Field Values

CF_TOTAL

protected static final int CF_TOTAL
See Also:
Constant Field Values

FOUND_CODE

protected static final int FOUND_CODE
See Also:
Constant Field Values

FOUND_AMT

protected static final int FOUND_AMT
See Also:
Constant Field Values
Constructor Detail

CraftingSkill

public CraftingSkill()
Method Detail

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 GatheringSkill
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 GatheringSkill
Returns:
the displayable name of this object instance
See Also:
Environmental.Name()

classificationCode

public int classificationCode()
Description copied from interface: Ability
Returns a bitmap describing the general classification of the skill (spell, skill, chant, or property, etc) and its domain. It is made up of the ACODE_* constants the Ability interface, and optionally the DOMAIN_* constants also defined in this interface.

Specified by:
classificationCode in interface Ability
Overrides:
classificationCode in class CommonSkill
Returns:
ACODE_* constant classification
See Also:
Ability

accountForYourself

public java.lang.String accountForYourself()
Description copied from interface: Ability
For use by the identify spell, this should return a nice description of any properties incorporated by this effect.

Specified by:
accountForYourself in interface Ability
Overrides:
accountForYourself in class StdAbility
Returns:
a description of properties incorporated

parametersFile

public java.lang.String parametersFile()

getItemWeightMultiplier

public double getItemWeightMultiplier(boolean bundling)

getStandardWeight

public int getStandardWeight(int baseWoodRequired,
                             boolean bundling)

determineFinalName

protected java.lang.String determineFinalName(java.lang.String thisStr,
                                              int backupMaterial,
                                              MaterialLibrary.DeadResourceRecord res1,
                                              MaterialLibrary.DeadResourceRecord res2)

addRecipes

protected java.util.List<java.util.List<java.lang.String>> addRecipes(MOB mob,
                                                                      java.util.List<java.util.List<java.lang.String>> recipes)
Overrides:
addRecipes in class CommonSkill

replacePercent

protected java.lang.String replacePercent(java.lang.String thisStr,
                                          java.lang.String withThis)

messedUpCrafting

protected void messedUpCrafting(MOB mob)

getContainerType

protected long getContainerType(java.lang.String s)

getBuildingMaterial

protected int getBuildingMaterial(int woodRequired,
                                  int[][] foundData,
                                  int[] compData)

adjustWoodRequired

protected int adjustWoodRequired(int woodRequired,
                                 MOB mob)

cleanBuildingNameForXP

protected java.lang.String cleanBuildingNameForXP(MOB mob,
                                                  java.lang.String name)

setMsgXPValue

protected void setMsgXPValue(MOB mob,
                             CMMsg msg)

dropAWinner

protected boolean dropAWinner(MOB mob,
                              Item buildingI)
Overrides:
dropAWinner in class CommonSkill

addSpells

protected void addSpells(Physical P,
                         java.lang.String spells,
                         java.util.List<Ability> otherSpells1,
                         java.util.List<Ability> otherSpells2)

setWearLocation

protected void setWearLocation(Item I,
                               java.lang.String wearLocation,
                               int hardnessMultiplier)

fetchRecipes

public java.util.List<java.util.List<java.lang.String>> fetchRecipes()

loadRecipes

protected java.util.List<java.util.List<java.lang.String>> loadRecipes()

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> eduMods)

randomRecipeFix

protected void randomRecipeFix(MOB mob,
                               java.util.List<java.util.List<java.lang.String>> recipes,
                               java.util.List<java.lang.String> commands,
                               int autoGeneration)

craftAnyItem

public ItemCraftor.ItemKeyPair craftAnyItem(int material)

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)
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.

Parameters:
mob - the player or mob invoking the skill
commands - 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 command
asLevel - -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 number
forceLevels - 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.

craftItem

public ItemCraftor.ItemKeyPair craftItem(java.lang.String recipeName,
                                         int material,
                                         boolean forceLevels,
                                         boolean noSafety)

craftItem

public ItemCraftor.ItemKeyPair craftItem(MOB mob,
                                         java.util.List<java.lang.String> recipes,
                                         int material,
                                         boolean forceLevels)

craftAllItemSets

public java.util.List<ItemCraftor.ItemKeyPair> craftAllItemSets(int material,
                                                                boolean forceLevels)

checkInfo

public boolean checkInfo(MOB mob,
                         java.util.List<java.lang.String> commands)

craftItem

public ItemCraftor.ItemKeyPair craftItem(java.lang.String recipeName)

craftAllItemSets

public java.util.List<ItemCraftor.ItemKeyPair> craftAllItemSets(boolean forceLevels)

matchingRecipeNames

public java.util.List<java.util.List<java.lang.String>> matchingRecipeNames(java.lang.String recipeName,
                                                                            boolean beLoose)

supportsWeapons

protected boolean supportsWeapons()

supportsArmors

protected boolean supportsArmors()

matchingRecipeNames

protected java.util.List<java.util.List<java.lang.String>> matchingRecipeNames(java.util.List<java.util.List<java.lang.String>> recipes,
                                                                               java.lang.String recipeName,
                                                                               boolean beLoose)

getAllMendable

protected java.util.Vector<Item> getAllMendable(MOB mob,
                                                Environmental from,
                                                Item contained)

publicScan

public boolean publicScan(MOB mob,
                          java.util.List<java.lang.String> commands)

getPercentChanceToDeconstruct

protected int getPercentChanceToDeconstruct(MOB crafterM,
                                            Item I)

mayICraft

public boolean mayICraft(Item I)

deconstructRecipeInto

protected boolean deconstructRecipeInto(MOB mob,
                                        Item I,
                                        Recipe R)

mayBeCrafted

protected boolean mayBeCrafted(Item I)

isANativeItem

public boolean isANativeItem(java.lang.String name)

mayICraft

public boolean mayICraft(MOB crafterM,
                         Item I)

setWeaponTypeClass

protected void setWeaponTypeClass(Weapon weapon,
                                  java.lang.String weaponClass)

setWeaponTypeClass

protected void setWeaponTypeClass(Weapon weapon,
                                  java.lang.String weaponClass,
                                  int flailedType)

setWeaponTypeClass

protected void setWeaponTypeClass(Weapon weapon,
                                  java.lang.String weaponClass,
                                  int flailedType,
                                  int naturalType)

setRideBasis

protected void setRideBasis(Rideable rideable,
                            java.lang.String type)

canMend

protected boolean canMend(MOB mob,
                          Environmental E,
                          boolean quiet)

getNonStandardComponentRequirements

protected java.util.List<AbilityComponent> getNonStandardComponentRequirements(java.lang.String woodRequiredStr,
                                                                               int adjustAmounts)

getAbilityComponents

public java.util.List<java.lang.Object> getAbilityComponents(MOB mob,
                                                             java.lang.String componentID,
                                                             java.lang.String doingWhat,
                                                             int autoGenerate,
                                                             int[] compData,
                                                             int adjustAmounts)

getDecodedItemNameAndLevel

public Pair<java.lang.String,java.lang.Integer> getDecodedItemNameAndLevel(java.util.List<java.lang.String> recipe)

getComponentDescription

public java.lang.String getComponentDescription(MOB mob,
                                                java.util.List<java.lang.String> recipe,
                                                int RCP_WOOD)

mayILearnToCraft

protected boolean mayILearnToCraft(MOB mob,
                                   Item I)

doLearnRecipe

protected boolean doLearnRecipe(MOB mob,
                                java.util.List<java.lang.String> commands,
                                Physical givenTarget,
                                boolean auto,
                                int asLevel)