com.planet_ink.coffee_mud.Abilities.interfaces
Interface CraftorAbility

All Superinterfaces:
Ability, java.lang.Cloneable, CMObject, java.lang.Comparable<CMObject>, Contingent, Environmental, Modifiable, MsgListener, StatsAffecting, Tickable
All Known Subinterfaces:
ItemCraftor
All Known Implementing Classes:
Alchemy, Apothecary, Armorsmithing, Baking, Blacksmithing, Boatwright, BuildingSkill, CageBuilding, Carpentry, ClanCrafting, Cobbling, Construction, Cooking, Costuming, Distilling, DrugCutting, EnhancedCraftingSkill, Excavation, Fletching, FoodPrep, GaolFood, GenCraftSkill, GlassBlowing, Herbalism, InstrumentMaking, Irrigation, JewelMaking, Landscaping, LeatherWorking, LegendaryWeaponsmithing, Masonry, MasterArmorsmithing, MasterBaking, MasterCooking, MasterCostuming, MasterDistilling, MasterFoodPrep, MasterLeatherWorking, MasterTailoring, MasterWeaponsmithing, Paladin_CraftHolyAvenger, PaperMaking, Pottery, Rodsmithing, ScrimShaw, ScrollScribing, Sculpting, Shipwright, Siegecraft, Smelting, StaffMaking, Tailoring, Textiling, Torturesmithing, Wainwrighting, WandMaking, Weaponsmithing, Weaving, Welding

public interface CraftorAbility
extends Ability

This interface denotes an ability that also incidentally is capable of generating objects, usually items. This is probably a common skill, but one could imagine an craftor also being a spell that generates its own items. Also the generation is an incidental and internal aspect of the ability, these methods allow that functionality to be exposed for archon use.


Field Summary
 
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
 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.
 java.util.List<java.util.List<java.lang.String>> fetchRecipes()
          A list containing an entry for each craftable recipe Each craftable recipe is also a list of strings.
 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.
 Pair<java.lang.String,java.lang.Integer> getDecodedItemNameAndLevel(java.util.List<java.lang.String> recipe)
          Given a raw recipe, returns the raw name and level of the item built therefrom.
 java.util.List<java.util.List<java.lang.String>> matchingRecipeNames(java.lang.String recipeName, boolean beLoose)
          Returns a vector containing an entry for each craftable recipe whose name matches the given name.
 java.util.List<java.lang.Integer> myResources()
          Returns a list of Integer objects where each Integer is a fully qualified RawMaterial code.
 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.
 
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 com.planet_ink.coffee_mud.core.interfaces.Tickable
getTickStatus, name, tick
 
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, okMessage
 
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, ID, 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
 

Method Detail

fetchRecipes

java.util.List<java.util.List<java.lang.String>> fetchRecipes()
A list containing an entry for each craftable recipe Each craftable recipe is also a list of strings.

Returns:
a vector of vectors

fetchMyRecipes

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.

Parameters:
mob - the mob to check for extra recipes
Returns:
a vector of vectors

parametersFormat

java.lang.String parametersFormat()
A String containing the format of each entry in the parameter file in a recipe.

Returns:
a String showing the format of each entry in the parameter file

parametersFile

java.lang.String parametersFile()
A String naming the file where the recipes are found

Returns:
a String naming the file where the recipes are found

matchingRecipeNames

java.util.List<java.util.List<java.lang.String>> matchingRecipeNames(java.lang.String recipeName,
                                                                     boolean beLoose)
Returns a vector containing an entry for each craftable recipe whose name matches the given name. Each entry is also a vector.

Parameters:
recipeName - the name of the recipe to craft
beLoose - whether to be specific or "loose" with name matching
Returns:
a vector of vectors

myResources

java.util.List<java.lang.Integer> myResources()
Returns a list of Integer objects where each Integer is a fully qualified RawMaterial code.

Returns:
a vector of integers
See Also:
RawMaterial

getDecodedComponentsDescription

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.

Parameters:
mob - the potential builder
recipe - the raw recipe description
Returns:
a descriptive string

getDecodedItemNameAndLevel

Pair<java.lang.String,java.lang.Integer> getDecodedItemNameAndLevel(java.util.List<java.lang.String> recipe)
Given a raw recipe, returns the raw name and level of the item built therefrom.

Parameters:
recipe - the raw recipe description
Returns:
a descriptive pair