* Called by m_thread.start()
*/
public void run() {
Object [] o;
ServerMap m;
IoSession s;
while(true) {
//Send next local chat message
if(m_localQueue.peek() != null) {
o = m_localQueue.poll();
m = GameServer.getServiceManager().getMovementService().
getMapMatrix().getMapByGamePosition(Integer.parseInt((String) o[1]), Integer.parseInt((String) o[2]));
if(m != null)
m.sendChatMessage((String) o[0], Language.valueOf(((String)o[3])));
}
//Send next private chat message
if(m_privateQueue.peek() != null) {
o = m_privateQueue.poll();
s = (IoSession) o[0];
if(s.isConnected() && !s.isClosing())
TcpProtocolHandler.writeMessage(s, new ChatMessage(
ChatMessageType.PRIVATE, ((String) o[1]) + "," + ((String) o[2])));
}
try {
Thread.sleep(250);