com.planet_ink.coffee_mud.Abilities.Common
Class Merchant
java.lang.Object
com.planet_ink.coffee_mud.Abilities.StdAbility
com.planet_ink.coffee_mud.Abilities.Common.CommonSkill
com.planet_ink.coffee_mud.Abilities.Common.Merchant
- All Implemented Interfaces:
- Ability, CMObject, Contingent, Economics, Environmental, Modifiable, MsgListener, ShopKeeper, StatsAffecting, Tickable, java.lang.Cloneable, java.lang.Comparable<CMObject>
public class Merchant
- extends CommonSkill
- implements ShopKeeper
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.core.interfaces.ShopKeeper |
DEAL_ALCHEMIST, DEAL_ANYTECHNOLOGY, DEAL_ANYTHING, DEAL_ARMOR, DEAL_AUCTIONEER, DEAL_BANKER, DEAL_BOOKS, DEAL_BUTCHER, DEAL_CASTER, DEAL_CLANBANKER, DEAL_CLANDSELLER, DEAL_CLANPOSTMAN, DEAL_CONFLICTS, DEAL_CSHIPSELLER, DEAL_DESCS, DEAL_FOODSELLER, DEAL_GENERAL, DEAL_GROWER, DEAL_HIDESELLER, DEAL_INNKEEPER, DEAL_INSTRUMENTS, DEAL_INVENTORYONLY, DEAL_JEWELLER, DEAL_LANDSELLER, DEAL_LEATHER, DEAL_LUMBERER, DEAL_MAGIC, DEAL_METALSMITH, DEAL_PETS, DEAL_POSTMAN, DEAL_READABLES, DEAL_SHIPSELLER, DEAL_SLAVES, DEAL_STONEYARDER, DEAL_TRAINER, DEAL_WEAPONS |
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 |
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 |
Method Summary |
void |
addSoldType(int mask)
Adds the ShopKeeper DEAL_* constants describing what is sold or bought by this ShopKeeper
to the existing shopkeeper mask. |
void |
affectPhyStats(Physical E,
PhyStats affectableStats)
This method is called by the recoverPhyStats() method on other Environmental objects. |
boolean |
autoInvocation(MOB mob,
boolean force)
An autoinvocating ability is an ability which affects the
mob just by having learned the ability. |
java.lang.String |
budget()
Returns a description of the buying budget of the shopkeeper. |
protected int |
canAffectCode()
Designates whether, when used as a property/effect, what sort of objects this
ability can affect. |
boolean |
canBeUninvoked()
Whether this skill is allowed to be uninvoked. |
boolean |
canPossiblyVend(Environmental E,
Environmental what)
|
protected int |
canTargetCode()
Designates whether, when invoked as a skill, what sort of objects this
ability can effectively target. |
int |
classificationCode()
Returns a bitmap describing the general
classification of the skill (spell, skill,
chant, or property, etc) and its domain. |
MOB |
deriveMerchant(MOB roomHelper)
|
java.lang.String |
devalueRate()
Returns a string describing the percentage in the drop of the price at
which this ShopKeeper will buy back items based on the number already
in his inventory. |
boolean |
doISellThis(Environmental thisThang)
Returns whether this ShopKeeper deals in the type of item passed in. |
void |
executeMsg(Environmental myHost,
CMMsg msg)
The general message event handler for the object. |
Pair<java.lang.Long,TimeClock.TimePeriod> |
finalBudget()
Returns a description of the buying budget of the shopkeeper. |
double[] |
finalDevalueRate()
Returns a double array describing the percentage in the drop of the price at
which this ShopKeeper will buy back items based on the number already
in his inventory. |
java.lang.String |
finalIgnoreMask()
Returns the mask used to determine if a customer is ignored by the ShopKeeper. |
int |
finalInvResetRate()
Returns the number of ticks between totally resetting this ShopKeepers
inventory back to what it was. |
java.lang.String[] |
finalItemPricingAdjustments()
A string set describing how pricing for this ShopKeeper will differ based on item masks
The format for each string is a floating point number followers by a space and a zapper mask |
java.lang.String |
finalPrejudiceFactors()
A string describing how pricing for this ShopKeeper will differ based on customer attributes
such as race. |
protected ExpertiseLibrary.SkillCostDefinition |
getRawTrainingCost()
|
CoffeeShop |
getShop()
the CoffeeShop method to access the shopkeepers store of goods |
protected Area |
getStartArea()
|
long |
getWhatIsSoldMask()
Returns the ShopKeeper DEAL_* mask describing what is sold or bought by this ShopKeeper |
java.lang.String |
getWhatIsSoldZappermask()
Returns the zapper mask which applies to items to determine whether they are bought and solid
by this shopkeeper. |
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of
this object. |
java.lang.String |
ignoreMask()
Returns the mask used to determine if a customer is ignored by the ShopKeeper. |
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. |
int |
invResetRate()
Returns the number of ticks between totally resetting this ShopKeepers
inventory back to what it was. |
boolean |
isAutoInvoked()
An autoinvocating ability is an ability which affects the
mob just by having learned the ability. |
boolean |
isSold(int mask)
Returns whether the given type of good is sold by this shopkeeper. |
java.lang.String[] |
itemPricingAdjustments()
A string set describing how pricing for this ShopKeeper will differ based on item masks
The format for each string is a floating point number followers by a space and a zapper mask |
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. |
int |
overrideMana()
amount of mana/move used by this ability, overriding ini file
-1=normal, Ability.COST_ALL=all, Ability.COST_PCT |
java.lang.String |
prejudiceFactors()
A string describing how pricing for this ShopKeeper will differ based on customer attributes
such as race. |
boolean |
putUpForSale(MOB source,
MOB merchantM,
Environmental tool)
|
void |
setBudget(java.lang.String factors)
Sets a description of the buying budget of the shopkeeper. |
void |
setDevalueRate(java.lang.String factors)
Sets a string describing the percentage in the drop of the price at
which this ShopKeeper will buy back items based on the number already
in his inventory. |
void |
setIgnoreMask(java.lang.String factors)
Sets the mask used to determine if a customer is ignored by the ShopKeeper. |
void |
setInvResetRate(int ticks)
Sets the number of ticks between totally resetting this ShopKeepers
inventory back to what it was. |
void |
setItemPricingAdjustments(java.lang.String[] factors)
Sets the string set describing how pricing for this ShopKeeper will differ based on item masks
The format for each string is a floating point number followers by a space and a zapper mask |
void |
setMiscText(java.lang.String text)
For objects which have false for their isGeneric method, this is used to set any internally
coded strings to change the nature or behavior of the object. |
void |
setPrejudiceFactors(java.lang.String factors)
Sets the string describing how pricing for this ShopKeeper will differ based on customer attributes
such as race. |
void |
setWhatIsSoldMask(long newSellCode)
Sets the encoded ShopKeeper DEAL_* constants describing what is sold or bought by this ShopKeeper |
void |
setWhatIsSoldZappermask(java.lang.String newSellMask)
Sets the zapper mask which applies to items to determine whether they are bought and solid
by this shopkeeper. |
java.lang.String |
storeKeeperString()
Based on the value of this ShopKeepers whatIsSold() method, this will return a displayable string
describing that type. |
java.lang.String |
text()
For objects which have false for their isGeneric method, this is used to set any internally
coded strings to change the nature or behavior of the object. |
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. |
Methods inherited from class com.planet_ink.coffee_mud.Abilities.Common.CommonSkill |
abilityCode, abstractQuality, addedTickTime, addRecipes, allowedInTheDark, allowedWhileMounted, baseYield, bumpTickDown, canBeDoneSittingDown, canBeLearnedBy, checkStop, commonEmote, commonTell, commonTell, confirmPossibleMaterialLocation, displayText, dropAWinner, dropAWinner, getActivityMessageType, getAlmostDoneMessage, getBrand, getBrand, getCodeNum, getCompletedActivityMessageType, getDuration, getOthersContinueMessage, getRequiredFire, getStat, getStatCodes, getUninvokeException, getYouContinueMessage, iniPracticesToPractice, isMadeOfSupportedResource, loadList, loadRecipes, lookingForMat, lookingForMat, lookingForRsc, lookingForRsc, setAbilityCode, setBrand, setStat, startTickDown, supportedResourcesMap, supportedResourceString, teach, unInvoke, usageCost, usageType, xlevel |
Methods inherited from class com.planet_ink.coffee_mud.Abilities.StdAbility |
accountForYourself, adjustBeneficialTickdownTime, adjustedLevel, adjustedMaxInvokerRange, adjustMaliciousTickdownTime, affectCharState, affectCharStats, affecting, amDestroyed, appropriateToMyFactions, beneficialAffect, beneficialVisualFizzle, beneficialWordsFizzle, bubbleAffect, buildCostArray, canAffect, canAffect, canBePracticedBy, canBeTaughtBy, canTarget, canTarget, castingQuality, castingQuality, castingTime, checkComponents, checkedCastingCost, cloneFix, combatCastingTime, compareTo, copyOf, description, destroy, disregardsArmorCheck, enchantQuality, evalTargetItem, 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, isGeneric, isNowAnAutoEffect, isSavable, isStat, L, makeLongLasting, makeNonUninvokable, maliciousAffect, maliciousFizzle, maxRange, minCastWaitTime, minRange, miscTextFormat, Name, newInstance, 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, 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.core.interfaces.Environmental |
description, displayText, expirationDate, image, isGeneric, L, maxRange, minRange, miscTextFormat, Name, rawImage, sameAs, setDescription, setDisplayText, setExpirationDate, setImage, setName |
Methods inherited from interface java.lang.Comparable |
compareTo |
shop
protected CoffeeShop shop
Merchant
public Merchant()
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 CommonSkill
- 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 CommonSkill
- 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 CommonSkill
- Returns:
- an array of command invoking string words
- See Also:
Ability.putInCommandlist()
overrideMana
public int overrideMana()
- Description copied from class:
StdAbility
- amount of mana/move used by this ability, overriding ini file
-1=normal, Ability.COST_ALL=all, Ability.COST_PCT
- Overrides:
overrideMana
in class StdAbility
- Returns:
- amount of mana/move used by this ability, overriding ini file
isAutoInvoked
public boolean isAutoInvoked()
- Description copied from interface:
Ability
- An autoinvocating ability is an ability which affects the
mob just by having learned the ability. Dodge is an example of this.
This method returns whether this skill is classified as one of
those kinds of abilities.
- Specified by:
isAutoInvoked
in interface Ability
- Overrides:
isAutoInvoked
in class StdAbility
- Returns:
- whether this is an autoinvoking skill
canBeUninvoked
public boolean canBeUninvoked()
- Description copied from interface:
Ability
- Whether this skill is allowed to be uninvoked. If it returns false,
then it behaves as a permanent property of the object it is affecting.
Not death, dispelling, or other negations will remove it.
- Specified by:
canBeUninvoked
in interface Ability
- Overrides:
canBeUninvoked
in class StdAbility
- Returns:
- whether this skill can be uninvoked.
- See Also:
Ability.makeNonUninvokable()
getRawTrainingCost
protected ExpertiseLibrary.SkillCostDefinition getRawTrainingCost()
- Overrides:
getRawTrainingCost
in class CommonSkill
canAffectCode
protected int canAffectCode()
- Description copied from class:
StdAbility
- Designates whether, when used as a property/effect, what sort of objects this
ability can affect. Uses the Ability.CAN_* constants.
- Overrides:
canAffectCode
in class CommonSkill
- Returns:
- a mask showing the type of objects this ability can affect
- See Also:
Ability
canTargetCode
protected int canTargetCode()
- Description copied from class:
StdAbility
- Designates whether, when invoked as a skill, what sort of objects this
ability can effectively target. Uses the Ability.CAN_* constants.
- Overrides:
canTargetCode
in class CommonSkill
- Returns:
- a mask showing the type of objects this ability can target
- See Also:
Ability
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
getShop
public CoffeeShop getShop()
- Description copied from interface:
ShopKeeper
- the CoffeeShop method to access the shopkeepers store of goods
- Specified by:
getShop
in interface ShopKeeper
- Returns:
- the CoffeeShop object
- See Also:
CoffeeShop
text
public java.lang.String text()
- Description copied from interface:
Environmental
- For objects which have false for their isGeneric method, this is used to set any internally
coded strings to change the nature or behavior of the object. For objects which have true
for their isGeneric method, this is used to set and parse the XML which will be used to
fill out the fields in this object. Since Ability objects are never Generic, this will always
be where parameters are read from an Ability instance.
- Specified by:
text
in interface Environmental
- Overrides:
text
in class StdAbility
- Returns:
- either an open internal text string, or XML
budget
public java.lang.String budget()
- Description copied from interface:
Economics
- Returns a description of the buying budget of the shopkeeper. Format is
an amount of base currency followed by HOUR,WEEK,DAY,MONTH or YEAR.
- Specified by:
budget
in interface Economics
- Returns:
- the string for the shopkeepers buying budget
setBudget
public void setBudget(java.lang.String factors)
- Description copied from interface:
Economics
- Sets a description of the buying budget of the shopkeeper. Format is
an amount of base currency followed by HOUR,WEEK,DAY,MONTH or YEAR.
- Specified by:
setBudget
in interface Economics
- Parameters:
factors
- the string for the shopkeepers buying budget
devalueRate
public java.lang.String devalueRate()
- Description copied from interface:
Economics
- Returns a string describing the percentage in the drop of the price at
which this ShopKeeper will buy back items based on the number already
in his inventory. The format is a number representing the percentage
price drop per normal item followed by a space, followed by a number
representing the percentage price drop per raw resource item. A value
of "0 0" would mean no drop in price for either, ever.
- Specified by:
devalueRate
in interface Economics
- Returns:
- the price dropping percentage rule for this shopkeeper
setDevalueRate
public void setDevalueRate(java.lang.String factors)
- Description copied from interface:
Economics
- Sets a string describing the percentage in the drop of the price at
which this ShopKeeper will buy back items based on the number already
in his inventory. The format is a number representing the percentage
price drop per normal item followed by a space, followed by a number
representing the percentage price drop per raw resource item. A value
of "0 0" would mean no drop in price for either, ever.
- Specified by:
setDevalueRate
in interface Economics
- Parameters:
factors
- the price dropping percentage rule for this shopkeeper
invResetRate
public int invResetRate()
- Description copied from interface:
Economics
- Returns the number of ticks between totally resetting this ShopKeepers
inventory back to what it was.
- Specified by:
invResetRate
in interface Economics
- Returns:
- the number of ticks between total resets of inventory
setInvResetRate
public void setInvResetRate(int ticks)
- Description copied from interface:
Economics
- Sets the number of ticks between totally resetting this ShopKeepers
inventory back to what it was.
- Specified by:
setInvResetRate
in interface Economics
- Parameters:
ticks
- the number of ticks between total resets of inventory
setMiscText
public void setMiscText(java.lang.String text)
- Description copied from interface:
Environmental
- For objects which have false for their isGeneric method, this is used to set any internally
coded strings to change the nature or behavior of the object. For objects which have true
for their isGeneric method, this is used to set and parse the XML which will be used to
fill out the fields in this object. Since Ability objects are never Generic, this will always
be where parameters are read from an Ability instance.
- Specified by:
setMiscText
in interface Environmental
- Overrides:
setMiscText
in class CommonSkill
- Parameters:
text
- either an open internal text string, or XML
affectPhyStats
public void affectPhyStats(Physical E,
PhyStats affectableStats)
- Description copied from interface:
StatsAffecting
- This method is called by the recoverPhyStats() method on other Environmental objects. It is used
to transform the Environmental basePhyStats() object into a finished phyStats() object, both of
which are objects implementing the PhyStats interface. See those methods for more information.
- Specified by:
affectPhyStats
in interface StatsAffecting
- Overrides:
affectPhyStats
in class StdAbility
- Parameters:
E
- the host of the PhyStats object being affectedaffectableStats
- the particular PhyStats object being affected- See Also:
PhyStats
,
Environmental
,
Affectable.basePhyStats()
,
Affectable.phyStats()
,
Affectable.recoverPhyStats()
isSold
public boolean isSold(int mask)
- Description copied from interface:
ShopKeeper
- Returns whether the given type of good is sold by this shopkeeper.
- Specified by:
isSold
in interface ShopKeeper
- Parameters:
mask
- the ShopKeeper DEAL_* constant describing what is sold or bought by this ShopKeeper
- Returns:
- true if the shopkeeper will make such a deal
- See Also:
ShopKeeper.DEAL_DESCS
,
ShopKeeper.getWhatIsSoldMask()
addSoldType
public void addSoldType(int mask)
- Description copied from interface:
ShopKeeper
- Adds the ShopKeeper DEAL_* constants describing what is sold or bought by this ShopKeeper
to the existing shopkeeper mask. A value of 0 will clear the whole mask.
- Specified by:
addSoldType
in interface ShopKeeper
- Parameters:
mask
- the ShopKeeper DEAL_* constants describing what is sold or bought by this ShopKeeper- See Also:
ShopKeeper.DEAL_DESCS
,
ShopKeeper.isSold(int)
getWhatIsSoldMask
public long getWhatIsSoldMask()
- Description copied from interface:
ShopKeeper
- Returns the ShopKeeper DEAL_* mask describing what is sold or bought by this ShopKeeper
- Specified by:
getWhatIsSoldMask
in interface ShopKeeper
- Returns:
- the dealer type constants to the 2nd power, shifted 8 bits left
- See Also:
ShopKeeper.DEAL_DESCS
,
ShopKeeper.setWhatIsSoldMask(long)
setWhatIsSoldMask
public void setWhatIsSoldMask(long newSellCode)
- Description copied from interface:
ShopKeeper
- Sets the encoded ShopKeeper DEAL_* constants describing what is sold or bought by this ShopKeeper
- Specified by:
setWhatIsSoldMask
in interface ShopKeeper
- Parameters:
newSellCode
- the dealer type constants to the 2nd power, shifted 8 bits left- See Also:
ShopKeeper.DEAL_DESCS
,
ShopKeeper.addSoldType(int)
storeKeeperString
public java.lang.String storeKeeperString()
- Description copied from interface:
ShopKeeper
- Based on the value of this ShopKeepers whatIsSold() method, this will return a displayable string
describing that type.
- Specified by:
storeKeeperString
in interface ShopKeeper
- Returns:
- a description of the whatIsSold() code
- See Also:
ShopKeeper.isSold(int)
doISellThis
public boolean doISellThis(Environmental thisThang)
- Description copied from interface:
ShopKeeper
- Returns whether this ShopKeeper deals in the type of item passed in. The determination is based
on the whatIsSold() code.
- Specified by:
doISellThis
in interface ShopKeeper
- Parameters:
thisThang
- the item to determine if the shopkeeper deals in
- Returns:
- whether the shopkeeper deals in the type of item passed in
- See Also:
ShopKeeper.isSold(int)
prejudiceFactors
public java.lang.String prejudiceFactors()
- Description copied from interface:
Economics
- A string describing how pricing for this ShopKeeper will differ based on customer attributes
such as race.
- Specified by:
prejudiceFactors
in interface Economics
- Returns:
- the string describing price prejudicing
setPrejudiceFactors
public void setPrejudiceFactors(java.lang.String factors)
- Description copied from interface:
Economics
- Sets the string describing how pricing for this ShopKeeper will differ based on customer attributes
such as race.
- Specified by:
setPrejudiceFactors
in interface Economics
- Parameters:
factors
- the string describing price prejudicing
ignoreMask
public java.lang.String ignoreMask()
- Description copied from interface:
Economics
- Returns the mask used to determine if a customer is ignored by the ShopKeeper.
- Specified by:
ignoreMask
in interface Economics
- Returns:
- the mask used
- See Also:
MaskingLibrary
setIgnoreMask
public void setIgnoreMask(java.lang.String factors)
- Description copied from interface:
Economics
- Sets the mask used to determine if a customer is ignored by the ShopKeeper.
- Specified by:
setIgnoreMask
in interface Economics
- Parameters:
factors
- the mask to use- See Also:
MaskingLibrary
itemPricingAdjustments
public java.lang.String[] itemPricingAdjustments()
- Description copied from interface:
Economics
- A string set describing how pricing for this ShopKeeper will differ based on item masks
The format for each string is a floating point number followers by a space and a zapper mask
- Specified by:
itemPricingAdjustments
in interface Economics
- Returns:
- an array of the strings describing price adjustments
setItemPricingAdjustments
public void setItemPricingAdjustments(java.lang.String[] factors)
- Description copied from interface:
Economics
- Sets the string set describing how pricing for this ShopKeeper will differ based on item masks
The format for each string is a floating point number followers by a space and a zapper mask
- Specified by:
setItemPricingAdjustments
in interface Economics
- Parameters:
factors
- the string describing price prejudicing
getStartArea
protected Area getStartArea()
finalInvResetRate
public int finalInvResetRate()
- Description copied from interface:
Economics
- Returns the number of ticks between totally resetting this ShopKeepers
inventory back to what it was.
- Specified by:
finalInvResetRate
in interface Economics
- Returns:
- the number of ticks between total resets of inventory
finalPrejudiceFactors
public java.lang.String finalPrejudiceFactors()
- Description copied from interface:
Economics
- A string describing how pricing for this ShopKeeper will differ based on customer attributes
such as race.
- Specified by:
finalPrejudiceFactors
in interface Economics
- Returns:
- the string describing price prejudicing
finalIgnoreMask
public java.lang.String finalIgnoreMask()
- Description copied from interface:
Economics
- Returns the mask used to determine if a customer is ignored by the ShopKeeper.
- Specified by:
finalIgnoreMask
in interface Economics
- Returns:
- the mask used
- See Also:
MaskingLibrary
finalItemPricingAdjustments
public java.lang.String[] finalItemPricingAdjustments()
- Description copied from interface:
Economics
- A string set describing how pricing for this ShopKeeper will differ based on item masks
The format for each string is a floating point number followers by a space and a zapper mask
- Specified by:
finalItemPricingAdjustments
in interface Economics
- Returns:
- an array of the strings describing price adjustments
finalBudget
public Pair<java.lang.Long,TimeClock.TimePeriod> finalBudget()
- Description copied from interface:
Economics
- Returns a description of the buying budget of the shopkeeper. Format is
an amount of base currency followed by HOUR,WEEK,DAY,MONTH or YEAR.
- Specified by:
finalBudget
in interface Economics
- Returns:
- the pair for the shopkeepers buying budget
finalDevalueRate
public double[] finalDevalueRate()
- Description copied from interface:
Economics
- Returns a double array describing the percentage in the drop of the price at
which this ShopKeeper will buy back items based on the number already
in his inventory. The format is a number representing the percentage
price drop per normal item followed by a space, followed by a number
representing the percentage price drop per raw resource item. A value
of null or [0,0] would mean no drop in price for either, ever.
- Specified by:
finalDevalueRate
in interface Economics
- Returns:
- null, or the price dropping percentage rule for this shopkeeper
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 objecttickID
- 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
deriveMerchant
public MOB deriveMerchant(MOB roomHelper)
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 objectmsg
- the CMMsg that wants to be executed
- Returns:
- whether this message is allowed to execute
- See Also:
CMMsg
,
CMMsg.source()
putUpForSale
public boolean putUpForSale(MOB source,
MOB merchantM,
Environmental tool)
canPossiblyVend
public boolean canPossiblyVend(Environmental E,
Environmental what)
executeMsg
public void executeMsg(Environmental myHost,
CMMsg msg)
- Description copied from interface:
MsgListener
- The general message event handler for the object. Messages passed herein
may not necessarily be FOR this object, or from it, but will almost
always represent events happening in the same room. The messages
have already been through an approval process, so this method is
called only to affect the final execution of the meaning of the
message. Every game event goes through these methods.
- Specified by:
executeMsg
in interface MsgListener
- Overrides:
executeMsg
in class StdAbility
- Parameters:
myHost
- either the initiator of the event, or the host of this objectmsg
- the CMMsg that needs to be executed- See Also:
CMMsg
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 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.
- Returns:
- whether the skill successfully invoked.
autoInvocation
public boolean autoInvocation(MOB mob,
boolean force)
- Description copied from interface:
Ability
- An autoinvocating ability is an ability which affects the
mob just by having learned the ability. Dodge is an example of this.
This method is called to initiate this, and is called whenever
a mob gains this skill as a new Ability. This method will
add the ability to the mob as an effect.
- Specified by:
autoInvocation
in interface Ability
- Overrides:
autoInvocation
in class StdAbility
- Parameters:
mob
- the player or npc mob who has this abilityforce
- if the skill has default-off settings, this overrides to ON
- Returns:
- whether the ability autoinvoked correctly
- See Also:
Ability.isAutoInvoked()
,
Ability.isNowAnAutoEffect()
setWhatIsSoldZappermask
public void setWhatIsSoldZappermask(java.lang.String newSellMask)
- Description copied from interface:
ShopKeeper
- Sets the zapper mask which applies to items to determine whether they are bought and solid
by this shopkeeper.
- Specified by:
setWhatIsSoldZappermask
in interface ShopKeeper
- Parameters:
newSellMask
- the item zappermask- See Also:
ShopKeeper.isSold(int)
,
ShopKeeper.getWhatIsSoldZappermask()
,
MaskingLibrary
getWhatIsSoldZappermask
public java.lang.String getWhatIsSoldZappermask()
- Description copied from interface:
ShopKeeper
- Returns the zapper mask which applies to items to determine whether they are bought and solid
by this shopkeeper.
- Specified by:
getWhatIsSoldZappermask
in interface ShopKeeper
- Returns:
- the item zappermask
- See Also:
ShopKeeper.isSold(int)
,
ShopKeeper.setWhatIsSoldZappermask(String)
,
MaskingLibrary