new MessageDispatcher()
Constructs a new message dispatcher.
Members
-
readonly delayedTelegrams :Array.<Telegram>
-
A list of delayed telegrams.
Methods
-
clear() → {MessageDispatcher}
-
Clears the internal state of this message dispatcher.
-
deliver(telegram) → {MessageDispatcher}
-
Delivers the message to the receiver.
Parameters:
Name Type Description telegramTelegram The telegram to deliver.
-
dispatch(sender, receiver, message, delay, data) → {MessageDispatcher}
-
Receives the raw telegram data and decides how to dispatch the telegram (with or without delay).
Parameters:
Name Type Description senderGameEntity The sender.
receiverGameEntity The receiver.
messageString The actual message.
delayNumber A time value in millisecond used to delay the message dispatching.
dataObject An object for custom data.
-
dispatchDelayedMessages(delta) → {MessageDispatcher}
-
Used to process delayed messages.
Parameters:
Name Type Description deltaNumber The time delta.
-
fromJSON(json) → {MessageDispatcher}
-
Restores this instance from the given JSON object.
Parameters:
Name Type Description jsonObject The JSON object.
-
resolveReferences(entities) → {MessageDispatcher}
-
Restores UUIDs with references to GameEntity objects.
Parameters:
Name Type Description entitiesMap.<String, GameEntity> Maps game entities to UUIDs.
-
toJSON() → {Object}
-
Transforms this instance into a JSON object.
Returns:
Object -The JSON object.