cleoni.adv
Class World

java.lang.Object
  extended by cleoni.adv.ManageableObject
      extended by cleoni.adv.DimxObject
          extended by cleoni.adv.World

public class World
extends DimxObject

Implements the WORLD object


Field Summary
 java.lang.String adminPasswd
           
 java.lang.String author
           
 java.lang.String authoremail
           
 java.lang.String charactersDefaultAttrlist
           
 java.lang.String clientFile
           
 java.lang.String clientScript
           
 java.lang.String cluster
           
 boolean compass
           
 java.lang.String counterHtml
           
 java.lang.Object custCmdProc
           
 java.lang.Class custEventProc
           
 boolean debugging
           
 Character defaultCharacter
           
 Client defaultClient
           
 java.lang.String defaultRoom
           
 boolean disableAutoRestore
           
 java.lang.String encoding
           
 boolean eventsEnabled
           
 boolean hideSourcePath
           
 Dict hooks
           
 int iconSize
           
 java.lang.String imagesFolder
           
 java.lang.String instanceid
           
 Token interphone
           
 int killedCounter
           
 java.lang.Object lock
           
 Logger logger
           
 java.lang.String logoSrc
           
 java.lang.String map
           
 Dict moveQueue
           
 Dict moveQueueDest
           
 java.lang.Object moveQueueLock
           
 int msgListSize
           
 Messages msgs
           
 java.lang.String msgsFile
           
 int muting
           
 java.lang.String navigatorUrl
           
 boolean passchecked
           
 Dict players
           
 int playersCounter
           
protected  boolean reset
           
 int savegamePersistence
           
 int sceneLook
           
 Page sceneTemplate
           
 int screenheight
           
 int screenwidth
           
 multiplayer server
           
 java.util.Vector showproperties
           
 boolean simplifyNavigation
           
 java.lang.String site
           
protected  Dict skins
           
 java.lang.String slot
           
protected  java.util.Calendar startDate
           
 java.util.Vector stopwords
           
 java.lang.String systemDir
           
 boolean tracing
           
 java.lang.String urlHelp
           
 java.lang.String version
           
 java.lang.String worldFile
           
 
Fields inherited from class cleoni.adv.DimxObject
contents, id, methodArgs, methods, name, properties, world
 
Constructor Summary
World(multiplayer aserver, Messages amsgs, java.lang.String aName, java.lang.String clusterid, java.lang.String aImagesFolder, Logger aLogger, java.lang.String aHelpUrl)
          World constructor comment.
 
Method Summary
 void addCharacter(Character c)
           
 void addItem(AdvObject i, boolean define_id)
           
protected  boolean addLink(Link w, boolean define_id)
           
 Player addPlayer(Player thisPlayer, java.lang.String startingRoomid, java.lang.String panelId, java.lang.String listProperties, java.lang.String listContents, java.lang.String remoteAddr)
           
 Player addPlayer(java.lang.String username, Dict myProfile, Client aClient, java.lang.String remoteAddr)
           
 void addRoom(Room r, boolean isDefault)
           
 void banIp(java.lang.String ip)
           
 void definePanel(Panel aPanel)
           
 boolean display(java.lang.String msg)
           
 Token evaluateExpression(java.lang.String expression, DimxObject owner, AdvObject agent, java.lang.String targetid, DictSorted input)
          Evaluates a specific SmallBasic expression and returns the result
 Token execute(java.lang.String eventId, DimxObject owner, AdvObject agent, DictSorted actualpar, Token defaultResult, boolean mustExist)
          Executes an EVENT
 Token fireEvent_t(java.lang.String eventId, DimxObject owner, java.lang.String agent, java.lang.String target, DictSorted params, Token defaultResult, boolean mustExist)
          Triggers an EVENT, so that the corresponding SmallBasic code is executed.
 boolean fireEvent(Event e, AdvObject owner, java.lang.String agent, java.lang.String target, boolean defaultResult)
          Triggers an EVENT, so that the corresponding SmallBasic code is executed.
 boolean fireEvent(java.lang.String eventId, AdvObject owner, java.lang.String agent, java.lang.String target, boolean defaultResult)
           
 boolean fireEvent(java.lang.String eventId, DimxObject owner, java.lang.String agent, java.lang.String target, DictSorted input, boolean defaultResult, boolean mustExist)
          Triggers an EVENT, so that the corresponding SmallBasic code is executed.
 void fixSkins(Panel myPanel)
           
 Dict gameLoad(java.lang.String username)
           
 Dict getAllPanelButtons()
          Creates on-the-fly a collection of ALL buttons of ALL panels Creation date: (24/09/2003 17.17.57)
 Cluster getCluster()
           
 Dict getContents()
           
 java.lang.String getCustomIcon(AdvObject o, Skin skin, java.lang.String thisRoomId, java.lang.String facing)
           
protected  java.lang.String getDirectionStr(java.lang.String face)
           
 java.lang.String getHofFile()
           
 java.lang.String getNextId()
           
 java.lang.String getNextPeopleId()
           
 AdvObject getObject(java.lang.String id)
           
 AdvObject getObject(Token t)
          Gets an object from current world
 DimxObject getObjectExt(java.lang.String id)
           
 DimxObject getObjectExt(Token t)
           
 Dict getObjects()
           
 Panel getPanel()
           
 Panel getPanel(java.lang.String id)
           
 Character getPeople(java.lang.String id)
           
 AdvObject getPlayer(java.lang.String name)
           
 Room getRoom(java.lang.String roomId)
           
 Room getRoomFromImageUrl(java.lang.String imageUrl)
           
 java.lang.String getSavegameFile()
           
 int getSceneHeight()
           
 int getSceneWidth()
           
 java.lang.String getSetting(java.lang.String key, java.lang.String adefault)
           
 Skin getSkin(java.lang.String skinId)
           
 boolean goal(java.lang.String agentname, java.lang.String message)
           
 boolean hear(DimxObject from, java.lang.String msg)
           
 java.lang.String htmlAdminSnapshot()
           
 java.lang.String htmlCharset()
           
 java.lang.String htmlIcon(AdvObject o, Skin skin, java.lang.String thisRoomId, java.lang.String facing)
           
 java.lang.String htmlTable(Dict things, Skin skin, java.lang.String listName, java.lang.String thisRoomId, AdvObject focus, java.lang.String facing, boolean sortWays, boolean forceShowIcons)
           
 java.lang.String huntStopwords(java.lang.String aName)
           
 void init()
           
 boolean isValidIP(java.lang.String anIP)
           
 java.lang.String moveOutside(AdvObject o, java.lang.String areaid)
          Puts an object and all its inner objects into the transfer queue.
 void moveOutsideNow()
          Performs and controls the movement all objects in the moveQueue outside current world to their destination.
 void optiConsumed(java.lang.String id, long millis)
           
 void optiCount(java.lang.String id)
           
 boolean playBackground(java.lang.String soundfile, boolean loop)
           
 boolean playerExists(java.lang.String aName)
           
 boolean playSound(java.lang.String soundfile)
           
 java.lang.String printContents()
           
 void recordLogin(java.lang.String playerId, java.lang.String itemslist)
           
 boolean removeObject(AdvObject x)
          Removes an object from current world
 boolean removePeople(Character c, boolean stayZombie, boolean dropItems, java.lang.String altMessage)
           
 boolean removeRoom(Room r)
           
 java.lang.String requestMovement(AdvObject what)
           
 boolean saveSetting(java.lang.String key, java.lang.String val)
           
 boolean sendCmd(java.lang.String cmd)
           
 void senseLogoff()
           
 boolean setPanel(java.lang.String panelId)
           
 void setSceneDimensions(int w, int h)
           
 void start()
           
 void switchEvents(boolean sw)
           
 void tick()
           
 java.lang.String toString()
           
 boolean useView(Page aView)
           
 Token varGet(java.lang.String varId, boolean getReference)
          Gets a property
 void verifyConsistency()
           
 
Methods inherited from class cleoni.adv.DimxObject
debug, displayRight, execMethod, getId, getMethodArgs, getMethods, getName, getObjectsByName, hasMethod, isaCharacter, isanItem, isaRoom, isLink, refreshView, varExists, varGetAdvObj, varGetBool, varGetDimxObj, varGetInt, varGetStr, varSet, varSet, varSet, varSet, varSet
 
Methods inherited from class cleoni.adv.ManageableObject
varGet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

server

public multiplayer server

simplifyNavigation

public boolean simplifyNavigation

instanceid

public java.lang.String instanceid

site

public java.lang.String site

worldFile

public java.lang.String worldFile

debugging

public boolean debugging

passchecked

public boolean passchecked

hideSourcePath

public boolean hideSourcePath

tracing

public boolean tracing

muting

public int muting

version

public java.lang.String version

author

public java.lang.String author

defaultRoom

public java.lang.String defaultRoom

disableAutoRestore

public boolean disableAutoRestore

defaultCharacter

public Character defaultCharacter

defaultClient

public Client defaultClient

systemDir

public java.lang.String systemDir

screenwidth

public int screenwidth

screenheight

public int screenheight

sceneTemplate

public Page sceneTemplate

authoremail

public java.lang.String authoremail

charactersDefaultAttrlist

public java.lang.String charactersDefaultAttrlist

compass

public boolean compass

counterHtml

public java.lang.String counterHtml

iconSize

public int iconSize

killedCounter

public int killedCounter

logger

public Logger logger

logoSrc

public java.lang.String logoSrc

msgs

public Messages msgs

showproperties

public java.util.Vector showproperties

hooks

public Dict hooks

players

public Dict players

playersCounter

public int playersCounter

savegamePersistence

public int savegamePersistence

sceneLook

public int sceneLook

adminPasswd

public java.lang.String adminPasswd

msgsFile

public java.lang.String msgsFile

clientFile

public java.lang.String clientFile

clientScript

public java.lang.String clientScript

stopwords

public java.util.Vector stopwords

skins

protected Dict skins

interphone

public Token interphone

reset

protected boolean reset

encoding

public java.lang.String encoding

eventsEnabled

public boolean eventsEnabled

startDate

protected java.util.Calendar startDate

navigatorUrl

public java.lang.String navigatorUrl

urlHelp

public java.lang.String urlHelp

imagesFolder

public java.lang.String imagesFolder

msgListSize

public int msgListSize

map

public java.lang.String map

lock

public java.lang.Object lock

moveQueue

public Dict moveQueue

moveQueueDest

public Dict moveQueueDest

moveQueueLock

public java.lang.Object moveQueueLock

custCmdProc

public java.lang.Object custCmdProc

custEventProc

public java.lang.Class custEventProc

cluster

public java.lang.String cluster

slot

public java.lang.String slot
Constructor Detail

World

public World(multiplayer aserver,
             Messages amsgs,
             java.lang.String aName,
             java.lang.String clusterid,
             java.lang.String aImagesFolder,
             Logger aLogger,
             java.lang.String aHelpUrl)
      throws DimxException
World constructor comment.

Throws:
DimxException
Method Detail

evaluateExpression

public Token evaluateExpression(java.lang.String expression,
                                DimxObject owner,
                                AdvObject agent,
                                java.lang.String targetid,
                                DictSorted input)
                         throws DimxException
Evaluates a specific SmallBasic expression and returns the result

Parameters:
expression - String expression (SmallBasic code)
owner -
agent -
targetid -
actualpar - Vector that will be considered as "input"
Returns:
a token with the result
Throws:
DimxException

execute

public Token execute(java.lang.String eventId,
                     DimxObject owner,
                     AdvObject agent,
                     DictSorted actualpar,
                     Token defaultResult,
                     boolean mustExist)
              throws DimxException
Executes an EVENT

Parameters:
eventId - ID ov the event to be executed
owner -
agent -
actualpar -
defaultResult -
mustExist - if true, the event must exist and if missing a DimxException is thrown. If false, missing event is silently tolerated
Returns:
Throws:
DimxException

fireEvent

public boolean fireEvent(Event e,
                         AdvObject owner,
                         java.lang.String agent,
                         java.lang.String target,
                         boolean defaultResult)
                  throws DimxException
Triggers an EVENT, so that the corresponding SmallBasic code is executed. If the EVENT is not defined, the defaultResult is returned NOTE - This function is almost equal to fireEvent_t (modified copy of this one) - please keep them aligned or merge them

Parameters:
defaultResult -
e - - Must exist and be non-null
owner -
agent -
target -
Returns:
result of the EVENT execution (Return statement)
Throws:
DimxException

fireEvent

public boolean fireEvent(java.lang.String eventId,
                         DimxObject owner,
                         java.lang.String agent,
                         java.lang.String target,
                         DictSorted input,
                         boolean defaultResult,
                         boolean mustExist)
                  throws DimxException
Triggers an EVENT, so that the corresponding SmallBasic code is executed. If the EVENT is not defined, the defaultResult is returned

Parameters:
defaultResult -
eventId -
owner -
agent -
target -
Returns:
result of the EVENT execution (Return statement)
Throws:
DimxException

fireEvent_t

public Token fireEvent_t(java.lang.String eventId,
                         DimxObject owner,
                         java.lang.String agent,
                         java.lang.String target,
                         DictSorted params,
                         Token defaultResult,
                         boolean mustExist)
                  throws DimxException
Triggers an EVENT, so that the corresponding SmallBasic code is executed. If the EVENT is not defined, the defaultResult is returned. NOTE - This function is almost equal to fireEvent - please keep them aligned or merge them

Parameters:
defaultResult -
eventId -
owner -
agent -
target -
Returns:
result of the EVENT execution (Return statement)
Throws:
DimxException

fireEvent

public boolean fireEvent(java.lang.String eventId,
                         AdvObject owner,
                         java.lang.String agent,
                         java.lang.String target,
                         boolean defaultResult)
                  throws DimxException
Parameters:
eventId -
owner -
agent -
target -
defaultResult -
Returns:
Throws:
DimxException

getNextPeopleId

public java.lang.String getNextPeopleId()
Returns:

getNextId

public java.lang.String getNextId()
Returns:

getObject

public AdvObject getObject(java.lang.String id)
Parameters:
id -
Returns:

getObject

public AdvObject getObject(Token t)
Gets an object from current world

Parameters:
t - Token incapsulating argument object itself or object id (String)
Returns:
The object or null

getRoom

public Room getRoom(java.lang.String roomId)
Parameters:
roomId -
Returns:

getSetting

public java.lang.String getSetting(java.lang.String key,
                                   java.lang.String adefault)
                            throws DimxException
Parameters:
key -
Returns:
Throws:
DimxException

getSkin

public Skin getSkin(java.lang.String skinId)
Parameters:
skinId -
Returns:
chosen skin, default (first one) if not found

recordLogin

public void recordLogin(java.lang.String playerId,
                        java.lang.String itemslist)
                 throws DimxException
Parameters:
id -
Throws:
DimxException

removeObject

public boolean removeObject(AdvObject x)
Removes an object from current world

Parameters:
x - object to be removed
Returns:
true or false upon success

requestMovement

public java.lang.String requestMovement(AdvObject what)
Parameters:
what -
Returns:
null if accepted, non null in case of problems (result is error message)

saveSetting

public boolean saveSetting(java.lang.String key,
                           java.lang.String val)
                    throws DimxException
Parameters:
key -
val -
Returns:
Throws:
DimxException

sendCmd

public boolean sendCmd(java.lang.String cmd)
                throws DimxException
Overrides:
sendCmd in class DimxObject
Parameters:
cmd -
Returns:
Throws:
DimxException

senseLogoff

public void senseLogoff()
                 throws DimxException
Throws:
DimxException

switchEvents

public void switchEvents(boolean sw)
Parameters:
sw -

tick

public void tick()
          throws DimxException
Throws:
DimxException

toString

public java.lang.String toString()
Overrides:
toString in class ManageableObject
Returns:

addCharacter

public void addCharacter(Character c)
                  throws DimxException
Parameters:
c -
Throws:
DimxException

addItem

public void addItem(AdvObject i,
                    boolean define_id)
             throws DimxException
Parameters:
i -
define_id -
Throws:
DimxException

addLink

protected boolean addLink(Link w,
                          boolean define_id)
                   throws DimxException
Parameters:
w -
define_id -
Returns:
Throws:
DimxException

addPlayer

public Player addPlayer(Player thisPlayer,
                        java.lang.String startingRoomid,
                        java.lang.String panelId,
                        java.lang.String listProperties,
                        java.lang.String listContents,
                        java.lang.String remoteAddr)
                 throws DimxException
Parameters:
thisPlayer -
startingRoomid -
panelId -
listProperties -
listContents -
Returns:
Throws:
DimxException

addPlayer

public Player addPlayer(java.lang.String username,
                        Dict myProfile,
                        Client aClient,
                        java.lang.String remoteAddr)
                 throws DimxException
Parameters:
username -
myProfile -
aClient -
Returns:
Throws:
DimxException

addRoom

public void addRoom(Room r,
                    boolean isDefault)
             throws DimxException
Parameters:
r -
isDefault -
Throws:
DimxException

banIp

public void banIp(java.lang.String ip)
           throws DimxException
Throws:
DimxException

fixSkins

public void fixSkins(Panel myPanel)
              throws DimxException
Throws:
DimxException

definePanel

public void definePanel(Panel aPanel)
Parameters:
aPanel -

display

public boolean display(java.lang.String msg)
                throws DimxException
Overrides:
display in class DimxObject
Parameters:
msg -
Returns:
Throws:
DimxException

getAllPanelButtons

public Dict getAllPanelButtons()
Creates on-the-fly a collection of ALL buttons of ALL panels Creation date: (24/09/2003 17.17.57)

Returns:
cleoni.adv.Dict

getCluster

public Cluster getCluster()

getContents

public Dict getContents()
Overrides:
getContents in class DimxObject

getCustomIcon

public java.lang.String getCustomIcon(AdvObject o,
                                      Skin skin,
                                      java.lang.String thisRoomId,
                                      java.lang.String facing)
Parameters:
o -
skin -
thisRoomId -
facing -
Returns:

getDirectionStr

protected java.lang.String getDirectionStr(java.lang.String face)
Parameters:
face -
Returns:

getObjects

public Dict getObjects()
Returns:

getObjectExt

public DimxObject getObjectExt(java.lang.String id)
Parameters:
id -
Returns:

getObjectExt

public DimxObject getObjectExt(Token t)
Parameters:
id -
Returns:

getPanel

public Panel getPanel()
Returns:

getPanel

public Panel getPanel(java.lang.String id)
Parameters:
id -
Returns:

getPeople

public Character getPeople(java.lang.String id)
Parameters:
id -
Returns:

getPlayer

public AdvObject getPlayer(java.lang.String name)
Parameters:
name -
Returns:

getRoomFromImageUrl

public Room getRoomFromImageUrl(java.lang.String imageUrl)
Parameters:
imageUrl -
Returns:

getHofFile

public java.lang.String getHofFile()
Returns:

getSavegameFile

public java.lang.String getSavegameFile()
Returns:

getSceneHeight

public int getSceneHeight()
Returns:

getSceneWidth

public int getSceneWidth()
Returns:

goal

public boolean goal(java.lang.String agentname,
                    java.lang.String message)
             throws DimxException
Parameters:
agentname -
message -
Returns:
Throws:
DimxException

hear

public boolean hear(DimxObject from,
                    java.lang.String msg)
             throws DimxException
Overrides:
hear in class DimxObject
Parameters:
from -
msg -
Returns:
Throws:
DimxException

htmlAdminSnapshot

public java.lang.String htmlAdminSnapshot()
                                   throws DimxException
Returns:
Throws:
DimxException

htmlCharset

public java.lang.String htmlCharset()
Returns:

htmlIcon

public java.lang.String htmlIcon(AdvObject o,
                                 Skin skin,
                                 java.lang.String thisRoomId,
                                 java.lang.String facing)
Parameters:
o -
skin -
thisRoomId -
facing -
Returns:

htmlTable

public java.lang.String htmlTable(Dict things,
                                  Skin skin,
                                  java.lang.String listName,
                                  java.lang.String thisRoomId,
                                  AdvObject focus,
                                  java.lang.String facing,
                                  boolean sortWays,
                                  boolean forceShowIcons)
Parameters:
things -
sb -
skin -
listName -
thisRoomId - ID of container room - use it only if things are LINKs
focus -
facing -
sortWays -
forceShowIcons -

init

public void init()
          throws DimxException
Throws:
DimxException

moveOutside

public java.lang.String moveOutside(AdvObject o,
                                    java.lang.String areaid)
                             throws DimxException
Puts an object and all its inner objects into the transfer queue. The object is transferred within the current player service cycle (see mulmultiplayer.service)

Parameters:
o -
areaid -
Returns:
null if accepted, non-null (error message) otherwise.
Throws:
DimxException

moveOutsideNow

public void moveOutsideNow()
                    throws DimxException
Performs and controls the movement all objects in the moveQueue outside current world to their destination. Verifies consistency of the current world when finished. Relies on multiplayer.movement for actual object movement.

Throws:
DimxException - in case of problems

optiCount

public void optiCount(java.lang.String id)
               throws DimxException
Throws:
DimxException

optiConsumed

public void optiConsumed(java.lang.String id,
                         long millis)
                  throws DimxException
Throws:
DimxException

playBackground

public boolean playBackground(java.lang.String soundfile,
                              boolean loop)
                       throws DimxException
Overrides:
playBackground in class DimxObject
Parameters:
soundfile -
loop -
Returns:
Throws:
DimxException

playerExists

public boolean playerExists(java.lang.String aName)
Parameters:
aName -
Returns:

printContents

public java.lang.String printContents()

isValidIP

public boolean isValidIP(java.lang.String anIP)
Parameters:
anIP -
Returns:
true if it is valid, or false if not

huntStopwords

public java.lang.String huntStopwords(java.lang.String aName)
Parameters:
aName -
Returns:
true if it is valid, or false if not

playSound

public boolean playSound(java.lang.String soundfile)
                  throws DimxException
Overrides:
playSound in class DimxObject
Parameters:
soundfile -
Returns:
Throws:
DimxException

removePeople

public boolean removePeople(Character c,
                            boolean stayZombie,
                            boolean dropItems,
                            java.lang.String altMessage)
                     throws DimxException
Parameters:
c -
stayZombie -
dropItems -
savePassword -
altMessage - alternate message to be sent instead of msg[138]
Returns:
Throws:
DimxException

removeRoom

public boolean removeRoom(Room r)
                   throws DimxException
Parameters:
r -
Returns:
Throws:
DimxException

setPanel

public boolean setPanel(java.lang.String panelId)
                 throws DimxException
Overrides:
setPanel in class DimxObject
Parameters:
panelId -
Returns:
Throws:
DimxException

setSceneDimensions

public void setSceneDimensions(int w,
                               int h)
Parameters:
w -
h -

start

public void start()
           throws DimxException
Throws:
DimxException

useView

public boolean useView(Page aView)
                throws DimxException
Overrides:
useView in class DimxObject
Throws:
DimxException

varGet

public Token varGet(java.lang.String varId,
                    boolean getReference)
             throws DimxException
Description copied from class: DimxObject
Gets a property

Overrides:
varGet in class DimxObject
Parameters:
varId -
getReference - Do you need its reference?
Returns:
result incapsulated in a Token. Null if not found
Throws:
DimxException

verifyConsistency

public void verifyConsistency()

gameLoad

public Dict gameLoad(java.lang.String username)
              throws DimxException
Parameters:
username -
Returns:
Throws:
DimxException