Class RandomDestinationPortal
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.portal.Portal
games.stendhal.server.entity.mapstuff.portal.QuestCompletedPortal
games.stendhal.server.entity.mapstuff.portal.RandomDestinationPortal
- All Implemented Interfaces:
UseListener
,Killer
,Cloneable
,Iterable<String>
,Serializable
A portal that sends the using player to a randomly
chosen destination. Valid destinations are filtered
based on the player's level from a pre-defined list
of interesting places.
-
Nested Class Summary
Nested classes/interfaces inherited from class marauroa.common.game.RPObject
RPObject.ID
-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
Override continuous movement setting.protected boolean
Immediate execution of action when player says password.protected int
Radius at which portal will "listen" for speaking players.protected String
Optional message to give when correct password used.protected String
Optional message to give when incorrect password used.protected int
ID for the portalprotected static int
protected ChatAction
Optional action to take when access is rejected.protected String
The message to give when rejected.protected String
Optional password to use portal.Fields inherited from class games.stendhal.server.entity.mapstuff.portal.Portal
ATTR_FACE, ATTR_HIDDEN, ATTR_OFFSET, ATTR_USE
Fields inherited from class marauroa.common.game.RPObject
INVALID_ID
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
Gets the message to send when player is denied access to portal.Gets the password required to use the portal.boolean
Checks if the portal executes an action immediately after password is said.void
logic()
void
onAdded(StendhalRPZone zone)
Called when this object is added to a zone.boolean
Use the portal, if allowed.boolean
playerIsPortalUnlocked(Player player, Portal portal)
protected void
Called when the user is rejected.protected void
sendMessage(RPEntity user, String text)
Wrapper to send a message to a user, without getting lost.void
setForceStop(boolean forceStop)
Sets flag to override continuous movement & force entity to stop.void
setInstantAction(boolean instant)
void
setListeningRadius(int radius)
Sets the radius at which the portal will "hear" speaking players.void
setPasswordAcceptedMessage(String message)
Set the password accepted message.void
setPasswordRejectedMessage(String message)
Set the password rejected message.void
setRejectedAction(ChatAction rejectedAction)
Initiates an action to take on rejection.void
setRejectedMessage(String message)
Set the rejection message.void
setRequiredPassword(String password)
protected boolean
Use the portal.Methods inherited from class games.stendhal.server.entity.mapstuff.portal.QuestCompletedPortal
isAllowed
Methods inherited from class games.stendhal.server.entity.mapstuff.portal.Portal
generateRPClass, getDestinationReference, getDestinationZone, getFaceDirection, getIdentifier, getOffset, hasFaceDirection, hasOffset, isHidden, loaded, onPushedOntoFrom, onUsedBackwards, setDestination, setFaceDirection, setFaceDirection, setHidden, setIdentifier, setIgnoreNoDestination, toString
Methods inherited from class games.stendhal.server.entity.Entity
describe, getAdjacentNodes, getArea, getArea, getCursor, getDescription, getDescriptionName, getEntitySlot, getHeight, getName, getOrigin, getResistance, getResistance, getTitle, getWidth, getX, getY, getZone, hasDescription, isInSight, isObstacle, nextTo, nextTo, notifyWorldAboutChanges, onMoved, onRemoved, setCursor, setDescription, setEntityClass, setEntitySubclass, setMenu, setPosition, setResistance, setSize, setVisibility, slotIterator, slots, squaredDistance, squaredDistance, stopped, update
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, 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
-
Field Details
-
instantAction
protected boolean instantActionImmediate execution of action when player says password. -
listeningRadius
protected int listeningRadiusRadius at which portal will "listen" for speaking players. -
passwordAcceptedMessage
Optional message to give when correct password used. -
passwordRejectedMessage
Optional message to give when incorrect password used. -
portalID
protected int portalIDID for the portal -
portalIDCounter
protected static int portalIDCounter -
rejectedMessage
The message to give when rejected. -
requiredPassword
Optional password to use portal. -
rejectedAction
Optional action to take when access is rejected. -
forceStop
protected boolean forceStopOverride continuous movement setting.
-
-
Constructor Details
-
RandomDestinationPortal
public RandomDestinationPortal()Create a newRandomDestinationPortal
-
-
Method Details
-
onAdded
Description copied from class:Entity
Called when this object is added to a zone. -
usePortal
Use the portal. -
getPasswordAcceptedMessage
- Returns:
- Message when password is accepted.
-
getPasswordRejectedMessage
- Returns:
- Messager when password is rejected.
-
getListeningRadius
public int getListeningRadius()- Returns:
- Radius at which portal detects player speech.
-
getRejectedMessage
Gets the message to send when player is denied access to portal.- Returns:
- Rejected message
-
getRequiredPassword
Gets the password required to use the portal.- Returns:
- Required password
-
hasInstanceAction
public boolean hasInstanceAction()Checks if the portal executes an action immediately after password is said.- Returns:
- instantAction
-
playerIsPortalUnlocked
-
logic
public void logic() -
onUsed
Use the portal, if allowed.- Specified by:
onUsed
in interfaceUseListener
- Overrides:
onUsed
in classPortal
- Parameters:
user
- that wants to pass.- Returns:
- true if passed , false otherwise.
-
rejected
Called when the user is rejected. This sends a rejection message to the user if set.- Parameters:
user
- The rejected user.
-
sendMessage
Wrapper to send a message to a user, without getting lost.- Parameters:
user
- The user to send to.text
- The message to send.
-
setInstantAction
public void setInstantAction(boolean instant)- Parameters:
instant
- Use portal automatically.
-
setPasswordAcceptedMessage
Set the password accepted message.- Parameters:
message
- Optional message to be given when correct password used.
-
setPasswordRejectedMessage
Set the password rejected message.- Parameters:
message
- Optional message to be given when incorrect password used.
-
setListeningRadius
public void setListeningRadius(int radius)Sets the radius at which the portal will "hear" speaking players.- Parameters:
radius
- Distance at wich portal listens for players speaking.
-
setRejectedMessage
Set the rejection message.- Parameters:
message
- The message to give when rejected.
-
setRequiredPassword
- Parameters:
password
-
-
setRejectedAction
Initiates an action to take on rejection.- Parameters:
rejectedAction
- ChatAction to execute.
-
setForceStop
public void setForceStop(boolean forceStop)Sets flag to override continuous movement & force entity to stop.- Parameters:
forceStop
- Iftrue
, entity is forced to stop movement.
-