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, Behavable, CMModifiable, CMObject, Environmental, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
Direct Known Subclasses:
Alchemy, ClanCrafting, Construction, Cooking, EnhancedCraftingSkill, GlassBlowing, Herbalism, InstrumentMaking, LockSmith, Masonry, PaperMaking, Pottery, Shipwright, Smelting, Taxidermy, Torturesmithing, Wainwrighting

public class CraftingSkill
extends GatheringSkill


Field Summary
protected  Item building
           
protected static Room fakeRoom
           
protected  boolean fireRequired
           
protected static int FOUND_AMT
           
protected static int FOUND_CODE
           
protected  boolean mending
           
protected  boolean messedUp
           
protected  boolean refitting
           
 
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, bundling, displayText, helping, helpingAbility, playSound, tickUp, verb, yield
 
Fields inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility
affected, amDestroyed, canBeUninvoked, empty, envStats, expertise, 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_DISEASE, ACODE_LANGUAGE, ACODE_POISON, ACODE_PRAYER, ACODE_PROPERTY, ACODE_SKILL, ACODE_SONG, ACODE_SPELL, ACODE_SUPERPOWER, ACODE_THIEF_SKILL, ACODE_TRAP, ALL_ACODES, ALL_DOMAINS, CAN_AREAS, CAN_DESCS, CAN_EXITS, CAN_ITEMS, CAN_MOBS, CAN_ROOMS, 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_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_ENCHANTMENT, DOMAIN_ENDURING, 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_SHAPE_SHIFTING, DOMAIN_SHIELDUSE, DOMAIN_SINGING, DOMAIN_STEALING, DOMAIN_STEALTHY, DOMAIN_STREETSMARTS, DOMAIN_TRANSMUTATION, DOMAIN_TRAPPING, DOMAIN_VERBS, DOMAIN_VEXING, DOMAIN_WARDING, DOMAIN_WEAPON_USE, DOMAIN_WEATHER_MASTERY, FLAG_AIRBASED, FLAG_BINDING, FLAG_CHARMING, FLAG_CLANMAGIC, FLAG_DESCS, FLAG_EARTHBASED, FLAG_FIREBASED, FLAG_HEALINGMAGIC, FLAG_HEATING, FLAG_HOLY, FLAG_INTOXICATING, FLAG_MOVING, FLAG_NOORDERING, FLAG_PARALYZING, FLAG_SUMMONING, FLAG_TRACKING, FLAG_TRANSPORTING, FLAG_UNHOLY, FLAG_WATERBASED, FLAG_WEATHERAFFECTING, QUALITY_BENEFICIAL_OTHERS, QUALITY_BENEFICIAL_SELF, QUALITY_DESCS, QUALITY_INDIFFERENT, QUALITY_MALICIOUS, QUALITY_OK_OTHERS, QUALITY_OK_SELF, RANGE_CHOICES, 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_CLAN, TICKID_CLANITEM, TICKID_DEADBODY_DECAY, TICKID_EMAIL, TICKID_EXIT_BEHAVIOR, TICKID_EXIT_REOPEN, TICKID_ITEM_BEHAVIOR, TICKID_ITEM_BOUNCEBACK, TICKID_LIGHT_FLICKERS, TICKID_LIVEAUCTION, TICKID_LONGERMASK, TICKID_MOB, TICKID_QUEST, TICKID_READYTOSTOP, TICKID_ROOM_BEHAVIOR, TICKID_ROOM_ITEM_REJUV, TICKID_SPELL_AFFECT, TICKID_TIMEAUCTION, TICKID_TRAP_DESTRUCTION, TICKID_TRAP_RESET, TICKMASK_SOLITARY, TICKS_PER_RLMIN, TIME_MILIS_PER_MUDHOUR, TIME_TICK, TIME_TICK_DOUBLE
 
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.Vector addRecipes(MOB mob, java.util.Vector recipes)
           
protected  void addSpells(Environmental E, java.lang.String spells)
           
protected  int adjustWoodRequired(int woodRequired, MOB mob)
           
protected  boolean canMend(MOB mob, Environmental E, boolean quiet)
           
 int classificationCode()
          Returns a bitmap describing the general classification of the skill (spell, skill, chant, or property, etc) and its domain.
 java.util.Vector craftAllItemsVectors()
           
 java.util.Vector craftAllItemsVectors(int material)
           
 java.util.Vector craftAnyItem(int material)
           
 java.util.Vector craftItem(java.lang.String recipe)
           
 java.util.Vector craftItem(java.lang.String recipe, int material)
           
protected  void dropAWinner(MOB mob, Item building)
           
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, DVector eduMods)
           
 java.util.Vector fetchRecipes()
           
protected  int fixResourceRequirement(int resource, int amt)
           
protected  java.util.Vector getAllMendable(MOB mob, Environmental from, Item contained)
           
 java.lang.String ID()
          The CoffeeMud Java Class ID shared by all instances of this object.
protected  java.util.Vector loadList(java.lang.StringBuffer str)
           
protected  java.util.Vector loadRecipes()
           
protected  java.util.Vector loadRecipes(java.lang.String filename)
           
 java.util.Vector matchingRecipeNames(java.lang.String recipeName, boolean beLoose)
           
protected  java.util.Vector matchingRecipeNames(java.util.Vector recipes, java.lang.String recipeName, boolean beLoose)
           
 java.lang.String name()
          The displayable name of this object.
 java.lang.String parametersFile()
           
 boolean publicScan(MOB mob, java.util.Vector commands)
           
protected  void randomRecipeFix(MOB mob, java.util.Vector recipes, java.util.Vector commands, int autoGeneration)
           
protected  java.lang.String replacePercent(java.lang.String thisStr, java.lang.String withThis)
           
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)
           
 
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.GatheringSkill
bundle, myResources, supportedResourceString, triggerStrings
 
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.CommonSkill
abilityCode, abstractQuality, addedTickTime, allowedWhileMounted, canAffectCode, canTargetCode, commonEmote, commonTell, commonTell, confirmPossibleMaterialLocation, displayText, getDuration, getRequiredFire, iniPracticesRequired, iniPracticesToPractice, iniTrainsRequired, invoke, lookingFor, lookingFor, setAbilityCode, tick, unInvoke, usageCost, usageType, xlevel
 
Methods inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility
ableOk, ableSend, addBehavior, addEffect, addNonUninvokableEffect, addScript, adjustedLevel, adjustedMaxInvokerRange, affectCharState, affectCharStats, affectEnvStats, affecting, amDestroyed, appropriateToMyFactions, autoInvocation, baseEnvStats, beneficialAffect, beneficialVisualFizzle, beneficialWordsFizzle, bubbleAffect, buildCostArray, canAffect, canAffect, canBeLearnedBy, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingQuality, castingTime, checkComponents, cloneFix, combatCastingTime, compareTo, copyOf, delBehavior, delEffect, delScript, description, destroy, disregardsArmorCheck, enchantQuality, envStats, executeMsg, experienceLevels, expertise, expirationDate, externalFiles, fetchBehavior, fetchBehavior, fetchEffect, fetchEffect, fetchScript, finalize, flags, getAnyTarget, getAnyTarget, getAnyTarget, getBeneficialTickdownTime, getCodeNum, getMaliciousTickdownTime, getSaveStatIndex, getStat, getStatCodes, getTarget, getTarget, getTarget, getTarget, getTickDownRemaining, getTickStatus, getX1Level, getX2Level, getX3Level, getX4Level, getX5Level, getXLEVELLevel, getXLOWCOSTLevel, getXMAXRANGELevel, getXPCOSTAdjustment, getXPCOSTLevel, getXTIMELevel, helpProficiency, image, initializeClass, invoke, invoker, isAutoInvoked, isGeneric, isNowAnAutoEffect, isStat, makeLongLasting, makeNonUninvokable, maliciousAffect, maliciousFizzle, maxRange, minCastWaitTime, minRange, miscTextFormat, Name, newInstance, numBehaviors, numEffects, numScripts, okMessage, overrideMana, possibleContainer, practice, practicesRequired, practicesToPractice, preInvoke, proficiency, proficiencyCheck, properTargets, putInCommandlist, rawImage, recoverEnvStats, requirements, sameAs, savable, setAffectedOne, setBaseEnvStats, setDescription, setDisplayText, setExpirationDate, setImage, setInvoker, setMiscText, setName, setProficiency, setSavable, setStat, setTickDownRemaining, somanticCastCode, somanticCastMask, spreadImmunity, startTickDown, teach, text, trainsRequired, verbalCastCode, verbalCastMask
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

building

protected Item building

fireRequired

protected boolean fireRequired

mending

protected boolean mending

refitting

protected boolean refitting

messedUp

protected boolean messedUp

fakeRoom

protected static Room fakeRoom

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, MiscTech. 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: Environmental
The displayable name of this object. May be modified by envStats() object. Is derived from the Name().

Specified by:
name in interface Environmental
Specified by:
name in interface Tickable
Overrides:
name in class GatheringSkill
Returns:
the modified final name of this object on the map.
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()

replacePercent

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

addRecipes

protected java.util.Vector addRecipes(MOB mob,
                                      java.util.Vector recipes)

adjustWoodRequired

protected int adjustWoodRequired(int woodRequired,
                                 MOB mob)

dropAWinner

protected void dropAWinner(MOB mob,
                           Item building)

addSpells

protected void addSpells(Environmental E,
                         java.lang.String spells)

setWearLocation

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

loadList

protected java.util.Vector loadList(java.lang.StringBuffer str)

loadRecipes

protected java.util.Vector loadRecipes(java.lang.String filename)

fixResourceRequirement

protected int fixResourceRequirement(int resource,
                                     int amt)

fetchRecipes

public java.util.Vector fetchRecipes()

loadRecipes

protected java.util.Vector 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,
                                         DVector eduMods)

randomRecipeFix

protected void randomRecipeFix(MOB mob,
                               java.util.Vector recipes,
                               java.util.Vector commands,
                               int autoGeneration)

craftAnyItem

public java.util.Vector craftAnyItem(int material)

craftItem

public java.util.Vector craftItem(java.lang.String recipe,
                                  int material)

craftAllItemsVectors

public java.util.Vector craftAllItemsVectors(int material)

craftItem

public java.util.Vector craftItem(java.lang.String recipe)

craftAllItemsVectors

public java.util.Vector craftAllItemsVectors()

matchingRecipeNames

public java.util.Vector matchingRecipeNames(java.lang.String recipeName,
                                            boolean beLoose)

matchingRecipeNames

protected java.util.Vector matchingRecipeNames(java.util.Vector recipes,
                                               java.lang.String recipeName,
                                               boolean beLoose)

getAllMendable

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

publicScan

public boolean publicScan(MOB mob,
                          java.util.Vector commands)

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)