Class TimedStackableItem
java.lang.Object
marauroa.common.game.Attributes
marauroa.common.game.SlotOwner
marauroa.common.game.RPObject
games.stendhal.server.entity.Entity
games.stendhal.server.entity.PassiveEntity
games.stendhal.server.entity.item.Item
games.stendhal.server.entity.item.StackableItem
games.stendhal.server.entity.item.timed.TimedStackableItem
- All Implemented Interfaces:
EquipListener
,TurnListener
,UseListener
,Stackable<StackableItem>
,Killer
,Cloneable
,Iterable<String>
,Serializable
- Direct Known Subclasses:
TimedInvisibility
Abstract base class for a stackable timed item. Extend this class and
implement methods useItem(Player) and itemFinished(Player).
- Author:
- johnnnny
-
Nested Class Summary
Nested classes/interfaces inherited from class marauroa.common.game.RPObject
RPObject.ID
-
Field Summary
Fields inherited from class games.stendhal.server.entity.item.Item
DEGRADATION_TIMEOUT
Fields inherited from class marauroa.common.game.RPObject
INVALID_ID
-
Constructor Summary
ConstructorDescriptioncopy constructor.Creates a TimedItem. -
Method Summary
Modifier and TypeMethodDescriptiondescribe()
Describes the entity (if a players looks at it).int
Get the length of the timed event in turns.abstract void
itemFinished(Player player)
Called when the used item is finished.void
onTurnReached(int currentTurn)
This method is called when the turn number is reached.boolean
Invoked when the object is used.abstract boolean
Called when the player uses the item.Methods inherited from class games.stendhal.server.entity.item.StackableItem
add, getCapacity, getQuantity, isStackable, removeOne, setCapacity, setQuantity, splitOff, sub, update
Methods inherited from class games.stendhal.server.entity.item.Item
autobind, canBeEquippedIn, deteriorate, deteriorate, generateRPClass, getAttack, getAttackRate, getAttackRate, getBoundTo, getDamageType, getDefaultAttackRate, getDefense, getDescriptionName, getDeterioration, getInfoString, getItemClass, getItemSubclass, getMinLevel, getName, getPlantGrower, getPossibleSlots, getRangedAttack, getSusceptibility, getTitle, getWeaponType, initializeActiveSlotsList, initializeStatusResistancesList, isBound, isFromCorpse, isOfClass, isPersistent, isUndroppableOnDeath, onEquipped, onPickedUp, onPutOnGround, onPutOnGround, onRemoveFromGround, onUnequipped, removeFromWorld, repair, setBoundTo, setDamageType, setEquipableSlots, setFromCorpse, setInfoString, setPersistent, setPlantGrower, setSusceptibilities, setUndroppableOnDeath, setUseBehavior, toString
Methods inherited from class games.stendhal.server.entity.Entity
getAdjacentNodes, getArea, getArea, getCursor, getDescription, getEntitySlot, getHeight, getOrigin, getResistance, getResistance, getWidth, getX, getY, getZone, hasDescription, isInSight, isObstacle, nextTo, nextTo, notifyWorldAboutChanges, onAdded, onMoved, onRemoved, setCursor, setDescription, setEntityClass, setEntitySubclass, setMenu, setPosition, setResistance, setSize, setVisibility, slotIterator, slots, squaredDistance, squaredDistance, stopped
Methods inherited from class marauroa.common.game.RPObject
addEvent, addLink, addLink, addMap, addSlot, addSlot, applyDifferences, clearEvents, clearVisible, clone, containsKey, equals, events, eventsIterator, fill, get, getBaseContainer, getBoolean, getContainer, getContainerBaseOwner, getContainerOwner, getContainerSlot, getDifferences, getDouble, getFromSlots, getID, getInt, getLink, getLinkedObject, getMap, getSlot, has, hashCode, hasLink, hasMap, hasSlot, hide, isContained, isEmpty, isHidden, isStorable, maps, put, put, put, put, readObject, remove, removeLink, removeMap, removeSlot, resetAddedAndDeleted, resetAddedAndDeletedMaps, resetAddedAndDeletedRPLink, resetAddedAndDeletedRPSlot, setAddedMaps, setAddedRPSlot, setContainer, setDeletedMaps, setDeletedRPSlot, setID, size, slots, slotsIterator, store, unhide, unstore, writeObject, writeObject, writeToJson
Methods inherited from class marauroa.common.game.SlotOwner
deserializeRPSlots, fill, serializeRPSlots
Methods inherited from class marauroa.common.game.Attributes
add, applyDifferences, get, getBool, getDouble, getInt, getList, getLong, getRPClass, has, instanceOf, iterator, put, put, put, put, put, readFromMap, remove, resetAddedAndDeletedAttributes, setAddedAttributes, setDeletedAttributes, setRPClass, setRPClass, toAttributeString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
Method Details
-
onUsed
Description copied from interface:UseListener
Invoked when the object is used.- Specified by:
onUsed
in interfaceUseListener
- Overrides:
onUsed
in classItem
- Parameters:
user
- the RPEntity who uses the object- Returns:
- true if successful
-
onTurnReached
public void onTurnReached(int currentTurn)Description copied from interface:TurnListener
This method is called when the turn number is reached.- Specified by:
onTurnReached
in interfaceTurnListener
- Overrides:
onTurnReached
in classItem
- Parameters:
currentTurn
- current turn number
-
describe
Description copied from class:Entity
Describes the entity (if a players looks at it). -
getAmount
public int getAmount()Get the length of the timed event in turns.- Returns:
- length in turns
-
useItem
Called when the player uses the item. Implement this in a subclass.- Parameters:
player
-- Returns:
- true if the usage is successful
-
itemFinished
Called when the used item is finished. Implement this in a subclass.- Parameters:
player
-
-