Ability
, CraftorAbility
, ItemCraftor
, CMObject
, Contingent
, Environmental
, Expireable
, Modifiable
, MsgListener
, RecipeDriven
, StatsAffecting
, Tickable
, java.lang.Cloneable
, java.lang.Comparable<CMObject>
ImprovedAlchemy
public class Alchemy extends SpellCraftingSkill implements ItemCraftor
CraftingSkill.CraftingActivity, CraftingSkill.CraftParms, CraftingSkill.EnhancedExpertise, CraftingSkill.FoundResourceData, CraftingSkill.FoundResources
CraftorAbility.CraftorFilter
ItemCraftor.CraftedItem, ItemCraftor.CraftorType
Modifier and Type | Field | Description |
---|---|---|
protected Ability |
theSpell |
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_LASTTIME, 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_COSMOLOGY, 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_ROPEUSE, DOMAIN_SEATRAVEL, DOMAIN_SHAPE_SHIFTING, DOMAIN_SHIELDUSE, DOMAIN_SINGING, DOMAIN_STEALING, DOMAIN_STEALTHY, DOMAIN_STREETSMARTS, DOMAIN_THEATRE, DOMAIN_TRANSMUTATION, DOMAIN_TRAPPING, DOMAIN_TRAVEL, 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_CHAOS, FLAG_CHARMING, FLAG_CLANMAGIC, FLAG_DESCS, FLAG_EARTHBASED, FLAG_ELECTRICBASED, FLAG_ENABLER, FLAG_FEARING, FLAG_FIREBASED, FLAG_HEALINGMAGIC, FLAG_HEATING, FLAG_HOLY, FLAG_IMMUNER, FLAG_INTOXICATING, FLAG_LAW, FLAG_MINDALTERING, FLAG_MODERATE, FLAG_MOVING, FLAG_NEUTRAL, FLAG_NODISENCHANT, FLAG_NONENCHANTMENT, FLAG_NOORDERING, FLAG_NOUNINVOKING, FLAG_PARALYZING, FLAG_POTENTIALLY_DEADLY, FLAG_RESISTER, FLAG_STEALING, FLAG_SUMMONING, FLAG_SUNSUMMONING, FLAG_TIDEALTERING, FLAG_TORTURING, FLAG_TRACKING, FLAG_TRANSPORTING, FLAG_UNCRAFTABLE, FLAG_UNHOLY, FLAG_WATERBASED, FLAG_WEATHERAFFECTING, FLAG_ZAPPER, POWER_COST_THRESHOLD, POWER_LEVEL_THRESHOLD, POWER_OVERRIDE_THRESHOLD, 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_COUNT, USAGEINDEX_HITPOINTS, USAGEINDEX_MANA, USAGEINDEX_MOVEMENT, USAGEINDEX_TIMELSW, USAGEINDEX_TOTAL
idConverter
aborted, activityRoom, bonusYield, bundling, displayText, fakeFire, helping, helpingAbility, lastBaseDuration, playSound, resourcesMap, tickUp, uninvokeEmpties, verb
activity, buildingI, CF_AMOUNT, CF_HARDNESS, CF_MATERIAL, CF_TOTAL, deadRecord, fireRequired, FOUND_AMT, FOUND_CODE, FOUND_SUB, last25items, messedUp, recipeHolder
roomSpamCounter, supportedMaterials, supportedResources, supportedUseRscs
CRAFTING_BRAND_STR_ANON, CRAFTING_BRAND_STR_NAME, CRAFTING_BRAND_STR_PREFIX
RCP_FINALNAME, RCP_LEVEL
affected, amDestroyed, canBeUninvoked, empty, invoker, isAnAutoEffect, lastCastHelp, miscText, proficiency, savable, tickDown, unInvoked
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_BALLISTICK, TICKID_CLAN, TICKID_CLANITEM, TICKID_DEADBODY_DECAY, TICKID_ELECTRONICS, TICKID_EMAIL, TICKID_EVENT, 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_SHORTERMASK, TICKID_SOLITARYMASK, TICKID_SPECIALCOMBAT, TICKID_SPECIALMANEUVER, TICKID_SPELL_AFFECT, TICKID_SUPPORT, TICKID_TIMEAUCTION, TICKID_TRAP_DESTRUCTION, TICKID_TRAP_RESET
Constructor | Description |
---|---|
Alchemy() |
Modifier and Type | Method | Description |
---|---|---|
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<ItemCraftor.CraftedItem> 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 Item |
buildPotion(Ability theSpell,
int level) |
|
protected Item |
buildPowder(Ability theSpell,
int level) |
|
ItemCraftor.CraftedItem |
craftItem(java.lang.String recipe) |
Crafts the item specified by the recipe name, of a supported
material type which this class can produce.
|
protected boolean |
doLearnRecipe(MOB mob,
java.util.List<java.lang.String> commands,
Physical givenTarget,
boolean auto,
int asLevel) |
|
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.
|
protected int |
getAlchemyDuration(MOB mob,
Ability theSpell,
int asLevel) |
|
ItemCraftor.CraftorType |
getCraftorType() |
Returns the general craftor type of this skill, to let
outside subsystems know what they might expect.
|
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 CostDef |
getRawTrainingCost() |
|
java.lang.String |
getRecipeFilename() |
A String naming the file where the recipes are found
|
java.lang.String |
getRecipeFormat() |
A String containing the format of each entry in the parameter file
in a recipe.
|
protected boolean |
hasPotion(java.util.List<java.util.List<java.lang.String>> recipes) |
|
protected boolean |
hasPowder(java.util.List<java.util.List<java.lang.String>> recipes) |
|
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.
|
protected java.util.List<java.util.List<java.lang.String>> |
loadRecipes() |
|
protected void |
makeList(MOB mob,
java.lang.String type,
java.lang.String mask,
java.util.List<java.util.List<java.lang.String>> recipes,
java.lang.StringBuilder buf) |
|
boolean |
mayICraft(Item I) |
Returns whether the given item could have been crafted by this skill.
|
java.lang.String |
name() |
The nice displayable name of this instance of this object
|
protected int |
spellLevel(MOB mob,
Ability A,
int asLevel) |
|
protected int |
spellLevelAdjustment(MOB mob,
Ability A) |
|
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.
|
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, invoker, isAutoInvoked, isNowAnAutoEffect, makeLongLasting, makeNonUninvokable, mayBeEnchanted, practice, preInvoke, proficiency, proficiencyCheck, putInCommandlist, requirements, setAbilityCode, setAffectedOne, setInvoker, setProficiency, startTickDown, teach, unlearn, usageCost, usageType
copyOf, initializeClass, newInstance
abilityCode, abstractQuality, addedTickTime, allowedInTheDark, allowedWhileMounted, baseYield, bumpTickDown, canAffectCode, canBeDoneSittingDown, canBeLearnedBy, canTargetCode, checkStop, commonEmote, confirmPossibleMaterialLocation, displayText, dropAWinner, getActivityMessageType, getAlmostDoneMessage, getBrand, getBrand, getCompletedActivityMessageType, getDuration, getMyCodeNum, getOthersContinueMessage, getRequiredFire, getStat, getStatCodes, getUninvokeException, getYouContinueMessage, iniPracticesToPractice, isMadeOfSupportedResource, loadList, lookingForMat, lookingForMat, lookingForRsc, lookingForRsc, okMessage, setAbilityCode, setBrand, setMiscText, setStat, setTickUp, startTickDown, supportedResourcesMap, teach, usageCost, usageType, xlevel
amDestroyed, destroy, isSavable, setSavable
accountForYourself, addOtherThings, addRecipes, addSpellsOrBehaviors, adjustWoodRequired, canMend, checkInfo, checkInfo, checkMaterialFrom, classificationCode, cleanBuildingNameForXP, craftAllItemSets, craftAllItemSets, craftAnyItem, craftAnyItemNearLevel, craftItem, craftItem, deconstructRecipeInto, determineDescription, determineFinalName, determineFinalResourceName, dropALoser, dropAWinner, fetchFoundResourceData, fetchRecipes, fixDataForComponents, fixInfoItem, getAbilityComponents, getAllMendable, getBuildingMaterial, getComponentDescription, getContainerType, getCraftableLevelRange, getDecodedItemNameAndLevel, getItemWeightMultiplier, getNonStandardComponentRequirements, getPercentChanceToDeconstruct, getStandardWeight, isANativeItem, isThereANonBundleChoice, loadRecipes, matchingRecipeNames, matchingRecipes, mayBeCrafted, mayICraft, mayILearnToCraft, messedUpCrafting, publicScan, randomRecipeFix, replacePercent, setMsgXPValue, setRideBasis, setWeaponTypeClass, setWeaponTypeClass, setWeaponTypeClass, setWearLocation, supportsArmors, supportsWeapons, viewFlags
myResources
description, displayText, image, isGeneric, L, maxRange, minRange, miscTextFormat, Name, rawImage, sameAs, setDescription, setDisplayText, setImage, setMiscText, setName, text
expirationDate, setExpirationDate
adjustYieldBasedOnRoomSpam, affectPhyStats, allSupportedResources, bundle, checkIfAnyYield, fixResourceRequirement, getRoomSpamDropRate, myMaterials, myResources, myWeightedResources
craftAllItemSets, craftAllItemSets, craftAnyItem, craftAnyItemNearLevel, craftItem, getCraftableLevelRange, getItemWeightMultiplier
getSaveStatIndex, getStat, getStatCodes, isStat, setStat
executeMsg, okMessage
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
fetchRecipes, getDecodedItemNameAndLevel, matchingRecipeNames
getCraftableSpellLevel, getCraftableSpellName, getCraftableSpellRecipeSpell, getCraftableSpellRow
affectCharState, affectCharStats, affectPhyStats
adjustBeneficialTickdownTime, adjustedLevel, adjustedMaxInvokerRange, adjustMaliciousTickdownTime, affectCharState, affectCharStats, affecting, amDestroyed, aPossibleAbuserOfCasterLevel, appropriateToMyFactions, autoInvocation, beneficialAffect, beneficialSoundFizzle, beneficialVisualFizzle, beneficialWordsFizzle, bubbleAffect, buildCostArray, canAffect, canAffect, canBePracticedBy, canBeTaughtBy, canBeUninvoked, canTarget, canTarget, castingQuality, castingQuality, castingTime, checkComponents, checkedCastingCost, checkTargetRange, cloneFix, combatCastingTime, commonTell, commonTelL, commonTelL, compareTo, copyOf, description, destroy, disregardsArmorCheck, enchantQuality, evalTargetItem, executeMsg, expertise, expirationDate, externalFiles, failureTell, flags, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getAnyTarget, getBeneficialTickdownTime, getCodeNum, getHardOverrideManaCache, getInternalCodeNum, getMaliciousTickdownTime, getPersonalLevelAdjustments, getSaveStatIndex, getTarget, getTarget, getTarget, getTarget, getTarget, getTarget, getTarget, getTargetItemFavorMOB, getTargetItemFavorMOB, getTargetItemFavorMOB, getTickDownRemaining, getTicksBetweenCasts, getTickStatus, getTimeOfNextCast, getTrainingCost, getVisibleRoomTarget, getX1Level, getX2Level, getX3Level, getX4Level, getX5Level, getXLEVELLevel, getXLOWCOSTLevel, getXLOWFREECOSTLevel, getXMAXRANGELevel, getXPCOSTAdjustment, getXPCOSTLevel, getXTIMELevel, helpProficiency, I, ignoreCompounding, image, initializeClass, invoke, invoker, isAutoInvoked, isGeneric, isNowAnAutoEffect, isSavable, isStat, L, makeLongLasting, makeNonUninvokable, maliciousAffect, maliciousFizzle, maxRange, mayBeEnchanted, minCastWaitTime, minRange, miscTextFormat, modifyCastCode, 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, setTickDown, setTickDownRemaining, setTimeOfNextCast, setTimeOfNextCast, somaticCastCode, somaticCastMask, spreadImmunity, testUsageCost, text, unlearn, verbalCastCode, verbalCastMask, verbalSpeakCode
getTickStatus
protected Ability theSpell
public java.lang.String ID()
CMObject
ID
in interface CMObject
ID
in class SpellCraftingSkill
public java.lang.String name()
Tickable
name
in interface CMObject
name
in interface Tickable
name
in class SpellCraftingSkill
Environmental.Name()
public java.lang.String[] triggerStrings()
Ability
triggerStrings
in interface Ability
triggerStrings
in class GatheringSkill
Ability.putInCommandlist()
public ItemCraftor.CraftorType getCraftorType()
ItemCraftor
getCraftorType
in interface ItemCraftor
ItemCraftor.CraftorType
public java.lang.String supportedResourceString()
supportedResourceString
in class GatheringSkill
public java.lang.String getRecipeFormat()
RecipeDriven
getRecipeFormat
in interface RecipeDriven
getRecipeFormat
in class CraftingSkill
public java.util.List<java.util.List<java.lang.String>> fetchMyRecipes(MOB mob)
CraftorAbility
fetchMyRecipes
in interface CraftorAbility
mob
- the mob to check for extra recipesprotected CostDef getRawTrainingCost()
getRawTrainingCost
in class CommonSkill
public boolean tick(Tickable ticking, int tickID)
Tickable
tick
in interface Tickable
tick
in class CommonSkill
ticking
- a reference to this Tickable objecttickID
- the TICKID_ constant describing this periodic call, as defined in TickableTickable
,
ServiceEngine
,
TickableGroup
protected boolean doLearnRecipe(MOB mob, java.util.List<java.lang.String> commands, Physical givenTarget, boolean auto, int asLevel)
doLearnRecipe
in class CraftingSkill
public java.lang.String getRecipeFilename()
RecipeDriven
getRecipeFilename
in interface RecipeDriven
getRecipeFilename
in class CraftingSkill
protected java.util.List<java.util.List<java.lang.String>> loadRecipes()
loadRecipes
in class CraftingSkill
public boolean supportsDeconstruction()
ItemCraftor
supportsDeconstruction
in interface ItemCraftor
public java.lang.String getDecodedComponentsDescription(MOB mob, java.util.List<java.lang.String> recipe)
CraftorAbility
getDecodedComponentsDescription
in interface CraftorAbility
mob
- the potential builderrecipe
- the raw recipe descriptionpublic boolean mayICraft(Item I)
ItemCraftor
mayICraft
in interface ItemCraftor
mayICraft
in class CraftingSkill
I
- the item to examinepublic void unInvoke()
Ability
unInvoke
in interface Ability
unInvoke
in class CommonSkill
Ability.canBeUninvoked()
public ItemCraftor.CraftedItem craftItem(java.lang.String recipe)
ItemCraftor
craftItem
in interface ItemCraftor
craftItem
in class CraftingSkill
recipe
- the name of the item to makeprotected boolean hasPowder(java.util.List<java.util.List<java.lang.String>> recipes)
protected boolean hasPotion(java.util.List<java.util.List<java.lang.String>> recipes)
protected void makeList(MOB mob, java.lang.String type, java.lang.String mask, java.util.List<java.util.List<java.lang.String>> recipes, java.lang.StringBuilder buf)
public boolean invoke(MOB mob, java.util.List<java.lang.String> commands, Physical givenTarget, boolean auto, int asLevel)
Ability
invoke
in interface Ability
invoke
in class CommonSkill
mob
- the player or mob invoking the skillcommands
- 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 commandasLevel
- -1, unless being auto-invoked, when it is the level to invoke it at.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<ItemCraftor.CraftedItem> crafted)
CraftingSkill
autoGenInvoke
in class CraftingSkill
mob
- the player or mob invoking the skillcommands
- 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 commandasLevel
- -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 numberforceLevels
- 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, along with the duration