com.planet_ink.coffee_mud.Abilities.Common
Class Cooking

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
                  extended by com.planet_ink.coffee_mud.Abilities.Common.EnhancedCraftingSkill
                      extended by com.planet_ink.coffee_mud.Abilities.Common.Cooking
All Implemented Interfaces:
Ability, CraftorAbility, ItemCraftor, CMObject, Contingent, Environmental, Modifiable, MsgListener, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
Direct Known Subclasses:
Apothecary, Baking, Distilling, DrugCutting, FoodPrep, GaolFood, MasterCooking

public class Cooking
extends EnhancedCraftingSkill
implements ItemCraftor


Nested Class Summary
 
Nested classes/interfaces inherited from class com.planet_ink.coffee_mud.Abilities.Common.CraftingSkill
CraftingSkill.CraftingActivity, CraftingSkill.CraftParms, CraftingSkill.EnhancedExpertise, CraftingSkill.FoundResourceData, CraftingSkill.FoundResources
 
Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.Abilities.interfaces.ItemCraftor
ItemCraftor.ItemKeyPair
 
Field Summary
protected  Container cookingPot
           
protected  java.lang.String defaultDrinkSound
           
protected  java.lang.String defaultFoodSound
           
protected  int finalAmount
           
protected  java.lang.String finalDishName
           
protected  java.util.List<java.lang.String> finalRecipe
           
protected  java.util.Map<java.lang.String,java.lang.Integer> oldPotContents
           
static int RCP_BONUSSPELL
           
static int RCP_FINALFOOD
           
static int RCP_FOODDRINK
           
static int RCP_LEVEL
           
static int RCP_MAINAMNT
           
static int RCP_MAININGR
           
 
Fields inherited from class com.planet_ink.coffee_mud.Abilities.Common.EnhancedCraftingSkill
HIDE_MASK, materialAdjustments, STAGE_MASK
 
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_TICKS, 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.ItemCraftor
CRAFTING_BRAND_STR_ANON, CRAFTING_BRAND_STR_NAME, CRAFTING_BRAND_STR_PREFIX
 
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
Cooking()
           
 
Method Summary
protected  void applyName(Item item, java.lang.String word, boolean hide)
           
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.
 Item buildItem(MOB mob, java.util.List<java.lang.String> finalRecipe, java.util.List<Item> contents)
           
 int classificationCode()
          Returns a bitmap describing the general classification of the skill (spell, skill, chant, or property, etc) and its domain.
 boolean contentsSame(java.util.Map<java.lang.String,java.lang.Integer> h1, java.util.Map<java.lang.String,java.lang.Integer> h2)
           
 java.lang.String cookWord()
           
 java.lang.String cookWordShort()
           
 java.util.Vector<java.lang.Object> countIngredients(java.util.List<java.lang.String> Vr)
           
 java.util.Vector<java.lang.String> extraIngredientsInOldContents(java.util.List<java.lang.String> Vr, boolean perfectOnly)
           
 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  int getDuration(MOB mob, int level)
           
 int homeCookValue(MOB mob, int multiplyer)
           
 boolean honorHerbs()
           
 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.
 boolean isMineForCooking(MOB mob, Container cooking)
           
protected  java.util.List<java.util.List<java.lang.String>> loadRecipes()
           
 boolean meetsLidRequirements(MOB mob, Container cooking)
           
 java.util.Vector<java.lang.String> missingIngredientsFromOldContents(java.util.List<java.lang.String> Vr, boolean perfectOnly)
           
 java.lang.String name()
          The nice displayable name of this instance of this object
 boolean okMessage(Environmental myHost, CMMsg msg)
          The general message event previewer for the 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.util.Map<java.lang.String,java.lang.Integer> potContents(Container pot)
           
 boolean requireFire()
           
 boolean requireLid()
           
 void stirThePot(MOB mob)
           
 java.lang.String supportedResourceString()
           
 boolean supportsDeconstruction()
          Returns true if mundane items can be demonstructed into recipes with this skill.
 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, cleanBuildingNameForXP, enhancedTypes, enhanceItem, enhanceList, fetchFoundResourceData, fetchMyRecipes, fixDataForComponents, getAllThisSkillsDefinitions, getLocalExpCode, getThisSkillsExpertises, loadList, parametersFields, supportsArmors, supportsWeapons
 
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.CraftingSkill
accountForYourself, addRecipes, addSpells, adjustWoodRequired, canMend, checkInfo, 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, mayICraft, mayILearnToCraft, messedUpCrafting, publicScan, randomRecipeFix, replacePercent, setMsgXPValue, setRideBasis, setWeaponTypeClass, setWeaponTypeClass, setWeaponTypeClass, setWearLocation
 
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.GatheringSkill
affectPhyStats, bundle, fixResourceRequirement, myResources
 
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, 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.ItemCraftor
craftAllItemSets, craftAllItemSets, craftAnyItem, craftItem, craftItem, getItemWeightMultiplier, mayICraft
 
Methods inherited from interface com.planet_ink.coffee_mud.Abilities.interfaces.CraftorAbility
fetchMyRecipes, fetchRecipes, getDecodedItemNameAndLevel, matchingRecipeNames, myResources
 
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, 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 com.planet_ink.coffee_mud.core.interfaces.Tickable
getTickStatus
 
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
 
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, 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

RCP_FINALFOOD

public static int RCP_FINALFOOD

RCP_FOODDRINK

public static int RCP_FOODDRINK

RCP_BONUSSPELL

public static int RCP_BONUSSPELL

RCP_LEVEL

public static int RCP_LEVEL

RCP_MAININGR

public static int RCP_MAININGR

RCP_MAINAMNT

public static int RCP_MAINAMNT

cookingPot

protected Container cookingPot

finalDishName

protected java.lang.String finalDishName

finalAmount

protected int finalAmount

finalRecipe

protected java.util.List<java.lang.String> finalRecipe

oldPotContents

protected java.util.Map<java.lang.String,java.lang.Integer> oldPotContents

defaultFoodSound

protected java.lang.String defaultFoodSound

defaultDrinkSound

protected java.lang.String defaultDrinkSound
Constructor Detail

Cooking

public Cooking()
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 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()

cookWordShort

public java.lang.String cookWordShort()

cookWord

public java.lang.String cookWord()

honorHerbs

public boolean honorHerbs()

requireFire

public boolean requireFire()

requireLid

public boolean requireLid()

supportedResourceString

public java.lang.String supportedResourceString()
Overrides:
supportedResourceString in class GatheringSkill

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 CraftingSkill
Returns:
ACODE_* constant classification
See Also:
Ability

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

getDuration

protected int getDuration(MOB mob,
                          int level)

isMineForCooking

public boolean isMineForCooking(MOB mob,
                                Container cooking)

meetsLidRequirements

public boolean meetsLidRequirements(MOB mob,
                                    Container cooking)

okMessage

public boolean okMessage(Environmental myHost,
                         CMMsg msg)
Description copied from interface: MsgListener
The general message event previewer for the object. Messages passed herein are in a pending state, and may be safely modified or rejected without fear that they might be in the middle of being executed. Messages passed herein may not necessarily be FOR or FROM this object, but will almost always represent events which want to happen in the same rom. This method should always always return true UNLESS this message needs to be canceled, in which case it is necessary to tell the mob initiating the event (CMMsg.source()) why it is being cancelled. Every game event goes through these methods.

Specified by:
okMessage in interface MsgListener
Overrides:
okMessage in class CommonSkill
Parameters:
myHost - either the initiator of the event, or the host of this object
msg - the CMMsg that wants to be executed
Returns:
whether this message is allowed to execute
See Also:
CMMsg, CMMsg.source()

stirThePot

public void stirThePot(MOB mob)

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 object
tickID - 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

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
Overrides:
supportsDeconstruction in class EnhancedCraftingSkill
Returns:
true if mundane items can be demonstructed into recipes with this skill.

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

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 builder
recipe - the raw recipe description
Returns:
a descriptive string

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

contentsSame

public boolean contentsSame(java.util.Map<java.lang.String,java.lang.Integer> h1,
                            java.util.Map<java.lang.String,java.lang.Integer> h2)

potContents

public java.util.Map<java.lang.String,java.lang.Integer> potContents(Container pot)

countIngredients

public java.util.Vector<java.lang.Object> countIngredients(java.util.List<java.lang.String> Vr)

extraIngredientsInOldContents

public java.util.Vector<java.lang.String> extraIngredientsInOldContents(java.util.List<java.lang.String> Vr,
                                                                        boolean perfectOnly)

missingIngredientsFromOldContents

public java.util.Vector<java.lang.String> missingIngredientsFromOldContents(java.util.List<java.lang.String> Vr,
                                                                            boolean perfectOnly)

homeCookValue

public int homeCookValue(MOB mob,
                         int multiplyer)

buildItem

public Item buildItem(MOB mob,
                      java.util.List<java.lang.String> finalRecipe,
                      java.util.List<Item> contents)

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 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.
Returns:
whether the skill successfully invoked.

applyName

protected void applyName(Item item,
                         java.lang.String word,
                         boolean hide)
Overrides:
applyName in class EnhancedCraftingSkill

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