Class GoldSource
java.lang.Object
marauroa.common.game.Attributes
marauroa.common.game.SlotOwner
marauroa.common.game.RPObject
games.stendhal.server.entity.Entity
games.stendhal.server.entity.mapstuff.useable.UseableEntity
games.stendhal.server.entity.mapstuff.useable.PlayerActivityEntity
games.stendhal.server.entity.mapstuff.useable.GoldSource
- All Implemented Interfaces:
UseListener,Killer,Cloneable,Iterable<String>,Serializable
A gold source is a spot where a player can prospect for gold nuggets. He
needs a gold pan, time, and luck.
Prospecting takes 7-11 seconds; during this time, the player keep standing
next to the gold source. In fact, the player only has to be there when the
prospecting action has finished. Therefore, make sure that two gold sources
are always at least 5 sec of walking away from each other, so that the player
can't prospect for gold at several sites simultaneously.
Some karma is used to decide if the player was successful at the well or not.
- Author:
- daniel
-
Nested Class Summary
Nested classes/interfaces inherited from class games.stendhal.server.entity.mapstuff.useable.PlayerActivityEntity
PlayerActivityEntity.ActivityNested classes/interfaces inherited from class marauroa.common.game.RPObject
RPObject.ID -
Field Summary
Fields inherited from class marauroa.common.game.RPObject
INVALID_ID -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidprotected intGet the time it takes to perform this activity.getName()source name.protected booleanisPrepared(Player player) Decides if the activity can be done.protected booleanisSuccessful(Player player) Decides if the activity was successful.protected voidonFinished(Player player, boolean successful) Called when the activity has finished.protected voidCalled when the activity has started.Methods inherited from class games.stendhal.server.entity.mapstuff.useable.PlayerActivityEntity
activityDone, isPenalized, onUsedMethods inherited from class games.stendhal.server.entity.mapstuff.useable.UseableEntity
getState, setStateMethods inherited from class games.stendhal.server.entity.Entity
describe, getAdjacentNodes, getArea, getArea, getCursor, getDescription, getDescriptionName, getEntitySlot, getHeight, getOrigin, getResistance, getResistance, getTitle, 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, updateMethods 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, toString, unhide, unstore, writeObject, writeObject, writeToJsonMethods inherited from class marauroa.common.game.SlotOwner
deserializeRPSlots, fill, serializeRPSlotsMethods 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, toAttributeStringMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
GoldSource
public GoldSource()Create a gold source. -
GoldSource
Create a gold source.- Parameters:
itemName- The name of the item to be prospected.
-
-
Method Details
-
getName
source name. -
generateRPClass
public static void generateRPClass() -
getDuration
protected int getDuration()Get the time it takes to perform this activity.- Specified by:
getDurationin classPlayerActivityEntity- Returns:
- The time to perform the activity (in seconds).
-
isPrepared
Decides if the activity can be done.- Specified by:
isPreparedin classPlayerActivityEntity- Parameters:
player- for whom to perform the activity- Returns:
trueif successful.
-
isSuccessful
Decides if the activity was successful.- Specified by:
isSuccessfulin classPlayerActivityEntity- Parameters:
player- for whom to perform the activity- Returns:
trueif successful.
-
onFinished
Called when the activity has finished.- Specified by:
onFinishedin classPlayerActivityEntity- Parameters:
player- The player that did the activity.successful- If the activity was successful.
-
onStarted
Called when the activity has started.- Specified by:
onStartedin classPlayerActivityEntity- Parameters:
player- The player starting the activity.
-